From 84c949f2e68036ef488e09e05aed890a47e1a161 Mon Sep 17 00:00:00 2001 From: Sandra <11627788+sandrasie@users.noreply.github.com> Date: Wed, 30 Jan 2019 09:34:55 +0000 Subject: [PATCH] Merge OHIFViewer-react into Packages-react\ohif-viewer (#342) * Added public directory and debug run code in index.js * Different entry points for development and publish * Add port to start debug script * Merge in progress * Merge in progress * Merge in progress * Merged last components --- OHIFViewer-react/src/App.css | 3 +- .../src/components/ExampleViewportPlugin.js | 5 +- .../src/connectedComponents/ToolbarRow.js | 2 +- .../src/connectedComponents/Viewer.js | 8 +- Packages-react/ohif-viewer/example/index.html | 4 +- Packages-react/ohif-viewer/package.json | 9 +- .../public/cornerstoneWADOImageLoader.min.js | 3 + .../cornerstoneWADOImageLoader.min.js.map | 1 + .../cornerstoneWADOImageLoaderCodecs.min.js | 4 + ...cornerstoneWADOImageLoaderWebWorker.min.js | 3 + ...erstoneWADOImageLoaderWebWorker.min.js.map | 1 + .../ohif-viewer/public/es6-shim.min.js | 12 + Packages-react/ohif-viewer/public/icons.svg | 237 ++++++++++++++++++ Packages-react/ohif-viewer/public/index.html | 30 +++ .../ohif-viewer/public/logout-redirect.html | 25 ++ .../ohif-viewer/public/manifest.json | 8 + .../ohif-viewer/public/oidc-client.min.js | 46 ++++ .../ohif-viewer/public/polyfill.min.js | 1 + .../ohif-viewer/public/silent-refresh.html | 16 ++ Packages-react/ohif-viewer/rollup.config.js | 2 +- Packages-react/ohif-viewer/src/App.css | 18 ++ Packages-react/ohif-viewer/src/App.js | 26 +- .../ohif-viewer/src/CallbackPage.js | 2 +- .../ohif-viewer/src/OHIFStandaloneViewer.js | 8 +- .../ohif-viewer/src/WhiteLabellingContext.js | 1 + .../ConnectedExampleViewportPlugin.js | 3 +- .../src/components/ExampleViewportPlugin.js | 9 +- .../src/components/Header/Header.css | 27 +- .../src/components/Header/Header.js | 8 +- Packages-react/ohif-viewer/src/config.js | 89 +++---- .../src/connectedComponents/FlexboxLayout.js | 8 +- .../OHIFComponentPlugin.js | 2 +- .../OHIFCornerstoneViewportPlugin.js | 15 +- .../OHIFCornerstoneViewportPlugin/config.js | 31 +++ .../DicomPDFViewport.js | 80 ++++++ .../OHIFDicomPDFSopClassHandlerPlugin.js | 32 +++ .../OHIFDicomPDFViewportPlugin.js | 77 ++++++ .../TypedArrayProp.js | 137 ++++++++++ .../src/connectedComponents/ToolbarRow.css | 3 +- .../src/connectedComponents/ToolbarRow.js | 27 +- .../src/connectedComponents/Viewer.js | 24 -- .../src/connectedComponents/ViewerMain.js | 18 +- Packages-react/ohif-viewer/src/head.html | 15 ++ Packages-react/ohif-viewer/src/index.js | 128 +++++++++- .../ohif-viewer/src/index_publish.js | 6 + Packages-react/ohif-viewer/src/log.js | 6 + .../src/routes/StandaloneRouting.js | 200 +++++++-------- Packages-react/ohif-viewer/src/sha.js | 1 + .../src/studylist/ConnectedStudyList.js | 21 ++ .../src/studylist/StudyListRouting.js | 24 ++ .../src/studylist/StudyListWithData.js | 113 +++++++++ Packages-react/ohif-viewer/src/version.js | 1 + 52 files changed, 1350 insertions(+), 230 deletions(-) create mode 100644 Packages-react/ohif-viewer/public/cornerstoneWADOImageLoader.min.js create mode 100644 Packages-react/ohif-viewer/public/cornerstoneWADOImageLoader.min.js.map create mode 100644 Packages-react/ohif-viewer/public/cornerstoneWADOImageLoaderCodecs.min.js create mode 100644 Packages-react/ohif-viewer/public/cornerstoneWADOImageLoaderWebWorker.min.js create mode 100644 Packages-react/ohif-viewer/public/cornerstoneWADOImageLoaderWebWorker.min.js.map create mode 100644 Packages-react/ohif-viewer/public/es6-shim.min.js create mode 100644 Packages-react/ohif-viewer/public/icons.svg create mode 100644 Packages-react/ohif-viewer/public/index.html create mode 100644 Packages-react/ohif-viewer/public/logout-redirect.html create mode 100644 Packages-react/ohif-viewer/public/manifest.json create mode 100644 Packages-react/ohif-viewer/public/oidc-client.min.js create mode 100644 Packages-react/ohif-viewer/public/polyfill.min.js create mode 100644 Packages-react/ohif-viewer/public/silent-refresh.html create mode 100644 Packages-react/ohif-viewer/src/App.css rename Packages-react/ohif-viewer/src/connectedComponents/{OHIFCornerstoneViewportPlugin => }/OHIFComponentPlugin.js (90%) create mode 100644 Packages-react/ohif-viewer/src/connectedComponents/OHIFCornerstoneViewportPlugin/config.js create mode 100644 Packages-react/ohif-viewer/src/connectedComponents/OHIFDicomPDFViewportPlugin/DicomPDFViewport.js create mode 100644 Packages-react/ohif-viewer/src/connectedComponents/OHIFDicomPDFViewportPlugin/OHIFDicomPDFSopClassHandlerPlugin.js create mode 100644 Packages-react/ohif-viewer/src/connectedComponents/OHIFDicomPDFViewportPlugin/OHIFDicomPDFViewportPlugin.js create mode 100644 Packages-react/ohif-viewer/src/connectedComponents/OHIFDicomPDFViewportPlugin/TypedArrayProp.js create mode 100644 Packages-react/ohif-viewer/src/head.html create mode 100644 Packages-react/ohif-viewer/src/index_publish.js create mode 100644 Packages-react/ohif-viewer/src/log.js create mode 100644 Packages-react/ohif-viewer/src/sha.js create mode 100644 Packages-react/ohif-viewer/src/studylist/ConnectedStudyList.js create mode 100644 Packages-react/ohif-viewer/src/studylist/StudyListRouting.js create mode 100644 Packages-react/ohif-viewer/src/studylist/StudyListWithData.js create mode 100644 Packages-react/ohif-viewer/src/version.js diff --git a/OHIFViewer-react/src/App.css b/OHIFViewer-react/src/App.css index 1a19b79ec..68bca728d 100644 --- a/OHIFViewer-react/src/App.css +++ b/OHIFViewer-react/src/App.css @@ -13,5 +13,6 @@ body { padding: 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; - font-family: Roboto,OpenSans,HelveticaNeue-Light,Helvetica Neue Light,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; + font-family: Roboto, OpenSans, HelveticaNeue-Light, Helvetica Neue Light, + Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; } diff --git a/OHIFViewer-react/src/components/ExampleViewportPlugin.js b/OHIFViewer-react/src/components/ExampleViewportPlugin.js index 8a4155c8c..bfd521244 100644 --- a/OHIFViewer-react/src/components/ExampleViewportPlugin.js +++ b/OHIFViewer-react/src/components/ExampleViewportPlugin.js @@ -1,4 +1,4 @@ -import React, { Component } from "react"; +import React, { Component } from 'react'; import PropTypes from 'prop-types'; class ExampleViewportPlugin extends Component { @@ -14,7 +14,8 @@ class ExampleViewportPlugin extends Component { }; render() { - return (
StudyInstanceUid: {this.props.studyInstanceUid}
SeriesInstanceUid: {this.props.seriesInstanceUid}
{JSON.stringify(this.props.displaySet)} diff --git a/OHIFViewer-react/src/connectedComponents/ToolbarRow.js b/OHIFViewer-react/src/connectedComponents/ToolbarRow.js index 2399cafc7..9eebf7494 100644 --- a/OHIFViewer-react/src/connectedComponents/ToolbarRow.js +++ b/OHIFViewer-react/src/connectedComponents/ToolbarRow.js @@ -23,7 +23,7 @@ class ToolbarRow extends Component { static defaultProps = { leftSidebarOpen: false, - rightSidebarOpen: false, + rightSidebarOpen: false }; onLeftSidebarValueChanged = (value) => { diff --git a/OHIFViewer-react/src/connectedComponents/Viewer.js b/OHIFViewer-react/src/connectedComponents/Viewer.js index 037f67f53..a55b2980f 100644 --- a/OHIFViewer-react/src/connectedComponents/Viewer.js +++ b/OHIFViewer-react/src/connectedComponents/Viewer.js @@ -4,7 +4,7 @@ import PropTypes from "prop-types"; import Header from '../components/Header' import ConnectedFlexboxLayout from './ConnectedFlexboxLayout.js'; -import ConnectedToolbarRow from "./ConnectedToolbarRow"; +import ConnectedToolbarRow from './ConnectedToolbarRow'; import ConnectedStudyLoadingMonitor from './ConnectedStudyLoadingMonitor.js'; import StudyPrefetcher from '../components/StudyPrefetcher.js'; import './Viewer.css'; @@ -46,9 +46,9 @@ OHIF.viewer.functionList = { };*/ class Viewer extends Component { - static propTypes = { - studies: PropTypes.array, - }; + static propTypes = { + studies: PropTypes.array + }; render() { return (<> diff --git a/Packages-react/ohif-viewer/example/index.html b/Packages-react/ohif-viewer/example/index.html index 682543119..d717d7d2d 100644 --- a/Packages-react/ohif-viewer/example/index.html +++ b/Packages-react/ohif-viewer/example/index.html @@ -105,7 +105,7 @@ /* Example config without OIDC */ // Try going to: // http://localhost:5000/viewer/1.3.6.1.4.1.14519.5.2.1.1706.4996.216859690032335293073513900362 - /*props.servers = { + /* props.servers = { "dicomWeb": [ { "name": "DCM4CHEE", @@ -121,7 +121,7 @@ } } ] - };*/ + }; */ /* diff --git a/Packages-react/ohif-viewer/package.json b/Packages-react/ohif-viewer/package.json index 35efe01ea..4c7e838cf 100644 --- a/Packages-react/ohif-viewer/package.json +++ b/Packages-react/ohif-viewer/package.json @@ -9,6 +9,7 @@ "browser": "dist/index.umd.js", "module": "dist/index.es.js", "jsnext:main": "dist/index.es.js", + "homepage": "http://localhost:3000", "engines": { "node": ">=8", "npm": ">=5" @@ -22,7 +23,13 @@ "prepare": "npm run build", "predeploy": "cd example && npm install && npm run build", "deploy": "gh-pages -d example/build", - "generateStaticSite": "./generateStaticSite.sh" + "generateStaticSite": "./generateStaticSite.sh", + "copy:webworkers": "cp node_modules/cornerstone-wado-image-loader/dist/*.min.js* public", + "version": "node -p -e \"'export default \\'' + require('./package.json').version + '\\';'\" > src/version.js", + "sha": "echo \"export default '\"$(git rev-parse HEAD)\"';\" > src/sha.js", + "details": "npm run version && npm run sha", + "prep": "npm run details && npm run copy:webworkers", + "start:debug": "npm run prep && cross-env PORT=5000 react-scripts start" }, "peerDependencies": { "react": "^15.0.0 || ^16.0.0", diff --git a/Packages-react/ohif-viewer/public/cornerstoneWADOImageLoader.min.js b/Packages-react/ohif-viewer/public/cornerstoneWADOImageLoader.min.js new file mode 100644 index 000000000..3551f40be --- /dev/null +++ b/Packages-react/ohif-viewer/public/cornerstoneWADOImageLoader.min.js @@ -0,0 +1,3 @@ +/*! cornerstone-wado-image-loader - 2.2.2 - 2018-12-05 | (c) 2016 Chris Hafey | https://github.com/cornerstonejs/cornerstoneWADOImageLoader */ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("cornerstoneWADOImageLoader",[],t):"object"==typeof exports?exports.cornerstoneWADOImageLoader=t():e.cornerstoneWADOImageLoader=t()}(this,function(){return function(r){var a={};function n(e){if(a[e])return a[e].exports;var t=a[e]={i:e,l:!1,exports:{}};return r[e].call(t.exports,t,t.exports,n),t.l=!0,t.exports}return n.m=r,n.c=a,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var a in t)n.d(r,a,function(e){return t[e]}.bind(null,a));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=6)}([function(e,t,r){"use strict";t.a=function(e){for(var t,r=e[0],a=e[0],n=e.length,o=1;o>1]<>1]<>2)+16384|0;r=b[f+(k+d<<1)>>1]|0;t=mw((o&65535)>>>q&65535|0,0,16)|0;p=(p+32768+o&65535)>>>q|D;r=mw(r&65535|0,0,48)|0;r=t|(s+32768+o&65535)>>>q&65535|r;p=p&65535|D;q=g+(k<<3)|0;o=q;b[o>>1]=r;b[o+2>>1]=r>>>16;q=q+4|0;b[q>>1]=p;b[q+2>>1]=p>>>16;k=k+1|0}while((k|0)!=(m|0))}break}default:{}}}while(0);j=c[n>>2]|0;if(!(a[j+32>>0]|0))return;k=c[j+16>>2]|0;if((h|0)<=0)return;j=g;d=0;while(1){t=j+4|0;s=b[j>>1]|0;b[j>>1]=b[t>>1]|0;b[t>>1]=s;d=d+1|0;if((d|0)==(h|0))break;else j=j+(k<<1)|0}return}function Qc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36340;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Rc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36340;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Sc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+48|0;if(!(c[g>>2]|0)){j=b+52|0;Wc(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Wc(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Tc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+48>>2]|0;if(!f){f=a+52|0;Uc(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Vc(a,f,b,d,e);return}}function Uc(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=d+4|0;j=c[m>>2]|0;do{if(!(a[j+32>>0]|0))n=f;else{k=d+8|0;lw(c[k>>2]|0,f|0,h*6|0)|0;j=c[m>>2]|0;l=c[j+16>>2]|0;if((h|0)<=0){n=c[k>>2]|0;break}f=c[k>>2]|0;j=f;k=0;while(1){n=j+4|0;o=b[j>>1]|0;b[j>>1]=b[n>>1]|0;b[n>>1]=o;k=k+1|0;if((k|0)==(h|0))break;else j=j+(l<<1)|0}n=f;j=c[m>>2]|0}}while(0);switch(c[j+16>>2]|0){case 3:if((c[j+24>>2]|0)==2){if((h|0)<=0)return;j=d+32|0;f=0;do{i=c[j>>2]|0;m=e[n+(f*6|0)>>1]<>1]<>1]<>>1)&65535)>>>i&65535;b[g+(f*6|0)>>1]=(m+32768-d&65535)>>>i;b[g+(f*6|0)+2>>1]=(d&65535)>>>i;b[g+(f*6|0)+4>>1]=o;f=f+1|0}while((f|0)!=(h|0));return}else{k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;j=c[d+32>>2]|0;f=0;do{h=e[n+(f*6|0)>>1]<>1]< >1]< >>1)&65535)>>>j&65535;b[g+(f<<1)>>1]=(h+32768-d&65535)>>>j;b[g+(f+i<<1)>>1]=(d&65535)>>>j;b[g+(f+l<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;m=i*3|0;j=c[d+32>>2]|0;f=0;do{o=b[n+(f<<3)+6>>1]|0;p=e[n+(f<<3)>>1]< >1]< >1]< >>1)&65535)>>>j&65535;b[g+(f<<1)>>1]=(p+32768-h&65535)>>>j;b[g+(f+i<<1)>>1]=(h&65535)>>>j;b[g+(f+l<<1)>>1]=d;b[g+(f+m<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}default:return}}function Vc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do{if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do{if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}while(0);t=h;fn(m);Ya(t|0)}}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Uc(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Uc(b,t,e,f,g);i=q;return}function Wc(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=d+4|0;j=c[n>>2]|0;a:do{switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)<=0)break a;j=d+40|0;d=0;do{m=c[j>>2]|0;l=e[f+(d*6|0)+2>>1]< >1]< >1]< >>1)&65535)>>>m&65535;b[g+(d*6|0)>>1]=k>>>m;b[g+(d*6|0)+2>>1]=l>>>m;b[g+(d*6|0)+4>>1]=i;d=d+1|0}while((d|0)!=(h|0))}else{k=(h|0)<(i|0)?h:i;if((k|0)<=0)break a;l=i<<1;j=d+40|0;d=0;do{o=c[j>>2]|0;p=e[f+(d+i<<1)>>1]< >1]< >1]< >>1)&65535)>>>o&65535;b[g+(d*6|0)>>1]=q>>>o;b[g+(d*6|0)+2>>1]=p>>>o;b[g+(d*6|0)+4>>1]=m;d=d+1|0}while((d|0)!=(k|0))}break}case 4:{if((c[j+24>>2]|0)==1?(m=(h|0)<(i|0)?h:i,(m|0)>0):0){l=i<<1;j=d+40|0;d=i*3|0;k=0;do{o=c[j>>2]|0;q=e[f+(k+i<<1)>>1]< >1]< >1]< >>1)&65535)>>>o;r=b[f+(k+d<<1)>>1]|0;q=mw(q>>>o&65535|0,0,16)|0;p=D|p;r=mw(r&65535|0,0,48)|0;r=s>>>o&65535|q|r;p=p&65535|D;q=g+(k<<3)|0;o=q;b[o>>1]=r;b[o+2>>1]=r>>>16;q=q+4|0;b[q>>1]=p;b[q+2>>1]=p>>>16;k=k+1|0}while((k|0)!=(m|0))}break}default:{}}}while(0);j=c[n>>2]|0;if(!(a[j+32>>0]|0))return;k=c[j+16>>2]|0;if((h|0)<=0)return;j=g;d=0;while(1){s=j+4|0;r=b[j>>1]|0;b[j>>1]=b[s>>1]|0;b[s>>1]=r;d=d+1|0;if((d|0)==(h|0))break;else j=j+(k<<1)|0}return}function Xc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36364;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Yc(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36364;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Zc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+48|0;if(!(c[g>>2]|0)){j=b+52|0;bd(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;bd(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function _c(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+48>>2]|0;if(!f){f=a+52|0;$c(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{ad(a,f,b,d,e);return}}function $c(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;m=d+4|0;j=c[m>>2]|0;do{if(!(a[j+32>>0]|0))n=f;else{k=d+8|0;lw(c[k>>2]|0,f|0,h*6|0)|0;j=c[m>>2]|0;l=c[j+16>>2]|0;if((h|0)<=0){n=c[k>>2]|0;break}f=c[k>>2]|0;j=f;k=0;while(1){n=j+4|0;o=b[j>>1]|0;b[j>>1]=b[n>>1]|0;b[n>>1]=o;k=k+1|0;if((k|0)==(h|0))break;else j=j+(l<<1)|0}n=f;j=c[m>>2]|0}}while(0);switch(c[j+16>>2]|0){case 3:if((c[j+24>>2]|0)==2){if((h|0)<=0)return;j=d+32|0;f=0;do{i=c[j>>2]|0;d=e[n+(f*6|0)+2>>1]<>1]<>>i&65535;b[g+(f*6|0)>>1]=((e[n+(f*6|0)>>1]<>>i;b[g+(f*6|0)+2>>1]=(d&65535)>>>i;b[g+(f*6|0)+4>>1]=o;f=f+1|0}while((f|0)!=(h|0));return}else{k=(i|0)<(h|0)?i:h;if((k|0)<=0)return;l=i<<1;j=c[d+32>>2]|0;f=0;do{d=e[n+(f*6|0)+2>>1]< >1]< >>j&65535;b[g+(f<<1)>>1]=((e[n+(f*6|0)>>1]< >>j;b[g+(f+i<<1)>>1]=(d&65535)>>>j;b[g+(f+l<<1)>>1]=o;f=f+1|0}while((f|0)!=(k|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;l=(i|0)<(h|0)?i:h;if((l|0)<=0)return;m=i<<1;k=i*3|0;j=c[d+32>>2]|0;f=0;do{o=b[n+(f<<3)+6>>1]|0;h=e[n+(f<<3)+2>>1]< >1]< >>j&65535;b[g+(f<<1)>>1]=((e[n+(f<<3)>>1]< >>j;b[g+(f+i<<1)>>1]=(h&65535)>>>j;b[g+(f+m<<1)>>1]=d;b[g+(f+k<<1)>>1]=o;f=f+1|0}while((f|0)!=(l|0));return}default:return}}function ad(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do{if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do{if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}while(0);t=h;fn(m);Ya(t|0)}}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;$c(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;$c(b,t,e,f,g);i=q;return}function bd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=d+4|0;j=c[n>>2]|0;a:do{switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)<=0)break a;j=d+40|0;d=0;do{m=c[j>>2]|0;l=e[f+(d*6|0)+2>>1]< >1]< >>m&65535;b[g+(d*6|0)>>1]=((e[f+(d*6|0)>>1]< >>m;b[g+(d*6|0)+2>>1]=(l&65535)>>>m;b[g+(d*6|0)+4>>1]=i;d=d+1|0}while((d|0)!=(h|0))}else{k=(h|0)<(i|0)?h:i;if((k|0)<=0)break a;l=i<<1;j=d+40|0;d=0;do{o=c[j>>2]|0;p=e[f+(d+i<<1)>>1]< >1]< >>o&65535;b[g+(d*6|0)>>1]=((e[f+(d<<1)>>1]< >>o;b[g+(d*6|0)+2>>1]=(p&65535)>>>o;b[g+(d*6|0)+4>>1]=m;d=d+1|0}while((d|0)!=(k|0))}break}case 4:{if((c[j+24>>2]|0)==1?(m=(h|0)<(i|0)?h:i,(m|0)>0):0){l=i<<1;j=d+40|0;d=i*3|0;k=0;do{q=c[j>>2]|0;s=e[f+(k+i<<1)>>1]< >1]<>>q;o=(s+32768+(e[f+(k+l<<1)>>1]<>>q;r=b[f+(k+d<<1)>>1]|0;q=mw((s&65535)>>>q&65535|0,0,16)|0;o=o|D;r=mw(r&65535|0,0,48)|0;r=q|p&65535|r;o=o&65535|D;p=g+(k<<3)|0;q=p;b[q>>1]=r;b[q+2>>1]=r>>>16;p=p+4|0;b[p>>1]=o;b[p+2>>1]=o>>>16;k=k+1|0}while((k|0)!=(m|0))}break}default:{}}}while(0);j=c[n>>2]|0;if(!(a[j+32>>0]|0))return;k=c[j+16>>2]|0;if((h|0)<=0)return;j=g;d=0;while(1){s=j+4|0;r=b[j>>1]|0;b[j>>1]=b[s>>1]|0;b[s>>1]=r;d=d+1|0;if((d|0)==(h|0))break;else j=j+(k<<1)|0}return}function cd(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,p=0,q=0;p=i;i=i+16|0;m=p;n=c[b>>2]|0;if(!n){b=0;i=p;return b|0}q=d;k=f-q|0;l=g+12|0;j=c[l>>2]|0;k=(j|0)>(k|0)?j-k|0:0;j=e;g=j-q|0;if((g|0)>0?(Gb[c[(c[n>>2]|0)+48>>2]&63](n,d,g)|0)!=(g|0):0){c[b>>2]=0;q=0;i=p;return q|0}do{if((k|0)>0){Hm(m,k,h);o=0;g=ma(c[(c[n>>2]|0)+48>>2]|0,n|0,((a[m>>0]&1)==0?m+1|0:c[m+8>>2]|0)|0,k|0)|0;q=o;o=0;if(q&1){q=Na()|0;Im(m);Ya(q|0)}if((g|0)==(k|0)){Im(m);break}c[b>>2]=0;Im(m);q=0;i=p;return q|0}}while(0);f=f-j|0;if((f|0)>0?(Gb[c[(c[n>>2]|0)+48>>2]&63](n,e,f)|0)!=(f|0):0){c[b>>2]=0;q=0;i=p;return q|0}c[l>>2]=0;q=n;i=p;return q|0}function dd(a){a=a|0;c[a>>2]=36236;Im(a+32|0);nn(a);return}function ed(a){a=a|0;c[a>>2]=36236;Im(a+32|0);nn(a);cj(a);return}function fd(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=d+44|0;j=c[i>>2]|0;l=d+24|0;m=c[l>>2]|0;if(j>>>0>>0){c[i>>2]=m;j=m}k=j;i=h&24;if(!i){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}if((g|0)==1&(i|0)==24){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}a:do{switch(g|0){case 0:{i=0;g=0;break}case 1:if(!(h&8)){g=m-(c[d+20>>2]|0)|0;i=g;g=((g|0)<0)<<31>>31;break a}else{g=(c[d+12>>2]|0)-(c[d+8>>2]|0)|0;i=g;g=((g|0)<0)<<31>>31;break a}case 2:{i=d+32|0;if(!(a[i>>0]&1))i=i+1|0;else i=c[d+40>>2]|0;g=j-i|0;i=g;g=((g|0)<0)<<31>>31;break}default:{d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}}}while(0);g=jw(i|0,g|0,e|0,f|0)|0;e=D;if((e|0)>=0){i=d+32|0;if(!(a[i>>0]&1))i=i+1|0;else i=c[d+40>>2]|0;f=j-i|0;j=((f|0)<0)<<31>>31;if(!((j|0)<(e|0)|(j|0)==(e|0)&f>>>0 >>0)){i=h&8;if(!((g|0)==0&(e|0)==0)){if((i|0)!=0?(c[d+12>>2]|0)==0:0){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}if((h&16|0)!=0&(m|0)==0){d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}}if(i){c[d+12>>2]=(c[d+8>>2]|0)+g;c[d+16>>2]=k}if(h&16)c[l>>2]=(c[d+20>>2]|0)+g;d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=g;c[d+4>>2]=e;return}}d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}function gd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=d+8|0;Ib[c[(c[b>>2]|0)+16>>2]&15](a,b,c[d>>2]|0,c[d+4>>2]|0,0,e);return}function hd(a){a=a|0;var b=0,e=0,f=0,g=0;b=a+44|0;e=c[b>>2]|0;f=c[a+24>>2]|0;if(e>>>0 >>0){c[b>>2]=f;e=f}if(!(c[a+48>>2]&8)){a=-1;return a|0}g=a+16|0;b=c[g>>2]|0;f=a+12|0;if(b>>>0 >>0){f=c[f>>2]|0;c[g>>2]=e;b=e}else f=c[f>>2]|0;if(f>>>0>=b>>>0){a=-1;return a|0}a=d[f>>0]|0;return a|0}function id(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=b+44|0;e=c[f>>2]|0;g=c[b+24>>2]|0;if(e>>>0 >>0){c[f>>2]=g;e=g}j=b+8|0;f=c[j>>2]|0;k=b+12|0;h=c[k>>2]|0;i=f;if(f>>>0>=h>>>0){b=-1;return b|0}if((d|0)==-1){c[j>>2]=f;c[k>>2]=h+-1;c[b+16>>2]=e;b=0;return b|0}if(!(c[b+48>>2]&16)){g=d&255;f=h+-1|0;if(g<<24>>24!=(a[f>>0]|0)){b=-1;return b|0}}else{g=d&255;f=h+-1|0}c[j>>2]=i;c[k>>2]=f;c[b+16>>2]=e;a[f>>0]=g;b=d;return b|0}function jd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;t=i;i=i+16|0;n=t;if((d|0)==-1){b=0;i=t;return b|0}p=b+12|0;q=b+8|0;r=(c[p>>2]|0)-(c[q>>2]|0)|0;s=b+24|0;e=c[s>>2]|0;m=b+28|0;f=c[m>>2]|0;do{if((e|0)==(f|0)){k=b+48|0;if(!(c[k>>2]&16)){b=-1;i=t;return b|0}l=b+20|0;j=c[l>>2]|0;g=e-j|0;h=b+44|0;j=(c[h>>2]|0)-j|0;f=b+32|0;o=0;ia(67,f|0,0);e=o;o=0;if(!(e&1)){if(!(a[f>>0]&1))e=10;else e=(c[f>>2]&-2)+-1|0;o=0;wa(8,f|0,e|0,0);e=o;o=0;if(!(e&1)){e=a[f>>0]|0;if(!(e&1)){f=f+1|0;e=(e&255)>>>1}else{f=c[b+40>>2]|0;e=c[b+36>>2]|0}u=f+e|0;c[l>>2]=f;c[m>>2]=u;l=f+g|0;c[s>>2]=l;e=f+j|0;c[h>>2]=e;f=u;break}}u=Na(0)|0;Va(u|0)|0;Xa();u=-1;i=t;return u|0}else{u=b+44|0;k=b+48|0;h=u;l=e;e=c[u>>2]|0}}while(0);j=l+1|0;c[n>>2]=j;g=c[(j>>>0 >>0?h:n)>>2]|0;c[h>>2]=g;if(c[k>>2]&8){e=b+32|0;if(!(a[e>>0]&1))e=e+1|0;else e=c[b+40>>2]|0;c[q>>2]=e;c[p>>2]=e+r;c[b+16>>2]=g}if((l|0)==(f|0)){u=Lb[c[(c[b>>2]|0)+52>>2]&63](b,d&255)|0;i=t;return u|0}else{c[s>>2]=j;a[l>>0]=d;u=d&255;i=t;return u|0}return 0}function kd(a){a=a|0;var b=0,d=0;c[a>>2]=36200;b=a+56|0;c[b>>2]=36220;d=a+4|0;c[d>>2]=36236;Im(a+36|0);nn(d);fn(b);return}function ld(a){a=a|0;var b=0,d=0;c[a>>2]=36200;b=a+56|0;c[b>>2]=36220;d=a+4|0;c[d>>2]=36236;Im(a+36|0);nn(d);fn(b);cj(a);return}function md(a){a=a|0;var b=0,d=0,e=0,f=0;f=c[(c[a>>2]|0)+-12>>2]|0;b=a+f|0;c[b>>2]=36200;d=a+(f+56)|0;c[d>>2]=36220;e=a+(f+4)|0;c[e>>2]=36236;Im(a+(f+36)|0);nn(e);fn(d);cj(b);return}function nd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36388;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function od(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36388;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function pd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;td(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;td(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function qd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;rd(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{sd(a,f,b,d,e);return}}function rd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;l=d+4|0;j=c[l>>2]|0;do{if(!(a[j+32>>0]|0))m=f;else{d=d+8|0;lw(c[d>>2]|0,f|0,h*6|0)|0;j=c[l>>2]|0;k=c[j+16>>2]|0;if((h|0)<=0){m=c[d>>2]|0;break}d=c[d>>2]|0;j=d;f=0;while(1){m=j+4|0;n=b[j>>1]|0;b[j>>1]=b[m>>1]|0;b[m>>1]=n;f=f+1|0;if((f|0)==(h|0))break;else j=j+(k<<1)|0}m=d;j=c[l>>2]|0}}while(0);switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)>0)j=0;else return;do{l=e[m+(j*6|0)+2>>1]|0;i=32768-l+(e[m+(j*6|0)+4>>1]|0)|0;n=(e[m+(j*6|0)>>1]|0)-l+32768|0;b[g+(j*6|0)>>1]=l+49152+(((i&65535)+(n&65535)|0)>>>2);b[g+(j*6|0)+2>>1]=i;b[g+(j*6|0)+4>>1]=n;j=j+1|0}while((j|0)!=(h|0));return}j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=0;do{l=e[m+(f*6|0)+2>>1]|0;h=32768-l+(e[m+(f*6|0)+4>>1]|0)|0;n=(e[m+(f*6|0)>>1]|0)-l+32768|0;b[g+(f<<1)>>1]=l+49152+(((h&65535)+(n&65535)|0)>>>2);b[g+(f+i<<1)>>1]=h;b[g+(f+d<<1)>>1]=n;f=f+1|0}while((f|0)!=(j|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=i*3|0;k=0;do{n=b[m+(k<<3)+6>>1]|0;o=e[m+(k<<3)+2>>1]|0;l=32768-o+(e[m+(k<<3)+4>>1]|0)|0;h=(e[m+(k<<3)>>1]|0)-o+32768|0;b[g+(k<<1)>>1]=o+49152+(((l&65535)+(h&65535)|0)>>>2);b[g+(k+i<<1)>>1]=l;b[g+(k+d<<1)>>1]=h;b[g+(k+f<<1)>>1]=n;k=k+1|0}while((k|0)!=(j|0));return}default:return}}function sd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do{if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do{if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}while(0);t=h;fn(m);Ya(t|0)}}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;rd(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;rd(b,t,e,f,g);i=q;return}function td(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=d+4|0;d=c[m>>2]|0;a:do{switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=e[f+(d*6|0)+2>>1]|0;k=e[f+(d*6|0)+4>>1]|0;i=(e[f+(d*6|0)>>1]|0)-((k+l|0)>>>2)+16384|0;b[g+(d*6|0)>>1]=k+32768+i;b[g+(d*6|0)+2>>1]=i;b[g+(d*6|0)+4>>1]=l+32768+i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=e[f+(k+i<<1)>>1]|0;o=e[f+(k+j<<1)>>1]|0;l=(e[f+(k<<1)>>1]|0)-((o+n|0)>>>2)+16384|0;b[g+(k*6|0)>>1]=o+32768+l;b[g+(k*6|0)+2>>1]=l;b[g+(k*6|0)+4>>1]=n+32768+l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{n=e[f+(k+i<<1)>>1]|0;p=e[f+(k+d<<1)>>1]|0;o=(e[f+(k<<1)>>1]|0)-((p+n|0)>>>2)+16384|0;q=b[f+(k+j<<1)>>1]|0;r=mw(o&65535|0,0,16)|0;n=n+32768+o|D;q=mw(q&65535|0,0,48)|0;q=r|p+32768+o&65535|q;n=n&65535|D;o=g+(k<<3)|0;p=o;b[p>>1]=q;b[p+2>>1]=q>>>16;o=o+4|0;b[o>>1]=n;b[o+2>>1]=n>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){r=d+4|0;q=b[d>>1]|0;b[d>>1]=b[r>>1]|0;b[r>>1]=q;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function ud(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36412;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function vd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36412;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function wd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;Ad(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Ad(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function xd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;yd(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{zd(a,f,b,d,e);return}}function yd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=d+4|0;j=c[l>>2]|0;do{if(!(a[j+32>>0]|0))m=f;else{d=d+8|0;lw(c[d>>2]|0,f|0,h*6|0)|0;j=c[l>>2]|0;k=c[j+16>>2]|0;if((h|0)<=0){m=c[d>>2]|0;break}d=c[d>>2]|0;j=d;f=0;while(1){m=j+4|0;n=b[j>>1]|0;b[j>>1]=b[m>>1]|0;b[m>>1]=n;f=f+1|0;if((f|0)==(h|0))break;else j=j+(k<<1)|0}m=d;j=c[l>>2]|0}}while(0);switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)>0)j=0;else return;do{k=e[m+(j*6|0)>>1]|0;i=b[m+(j*6|0)+2>>1]|0;l=i&65535;n=(e[m+(j*6|0)+4>>1]|0)+32768-((l+k|0)>>>1)&65535;b[g+(j*6|0)>>1]=k+32768-l;b[g+(j*6|0)+2>>1]=i;b[g+(j*6|0)+4>>1]=n;j=j+1|0}while((j|0)!=(h|0));return}j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=0;do{h=b[m+(f*6|0)+2>>1]|0;k=e[m+(f*6|0)>>1]|0;l=h&65535;n=(e[m+(f*6|0)+4>>1]|0)+32768-((l+k|0)>>>1)&65535;b[g+(f<<1)>>1]=k+32768-l;b[g+(f+i<<1)>>1]=h;b[g+(f+d<<1)>>1]=n;f=f+1|0}while((f|0)!=(j|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=i*3|0;k=0;do{l=b[m+(k<<3)+2>>1]|0;n=b[m+(k<<3)+6>>1]|0;p=e[m+(k<<3)>>1]|0;o=l&65535;h=(e[m+(k<<3)+4>>1]|0)+32768-((o+p|0)>>>1)&65535;b[g+(k<<1)>>1]=p+32768-o;b[g+(k+i<<1)>>1]=l;b[g+(k+d<<1)>>1]=h;b[g+(k+f<<1)>>1]=n;k=k+1|0}while((k|0)!=(j|0));return}default:return}}function zd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do{if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do{if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}while(0);t=h;fn(m);Ya(t|0)}}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;yd(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;yd(b,t,e,f,g);i=q;return}function Ad(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=d+4|0;d=c[m>>2]|0;a:do{switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=b[f+(d*6|0)+2>>1]|0;i=l&65535;k=(e[f+(d*6|0)>>1]|0)+32768+i|0;i=(e[f+(d*6|0)+4>>1]|0)+32768+(((k&65535)+i|0)>>>1)&65535;b[g+(d*6|0)>>1]=k;b[g+(d*6|0)+2>>1]=l;b[g+(d*6|0)+4>>1]=i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=b[f+(k+i<<1)>>1]|0;l=n&65535;o=(e[f+(k<<1)>>1]|0)+32768+l|0;l=(e[f+(k+j<<1)>>1]|0)+32768+(((o&65535)+l|0)>>>1)&65535;b[g+(k*6|0)>>1]=o;b[g+(k*6|0)+2>>1]=n;b[g+(k*6|0)+4>>1]=l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{o=b[f+(k+i<<1)>>1]|0;n=o&65535;p=(e[f+(k<<1)>>1]|0)+32768+n&65535;n=(e[f+(k+d<<1)>>1]|0)+32768+((p+n|0)>>>1)|0;q=b[f+(k+j<<1)>>1]|0;o=mw(o&65535|0,0,16)|0;n=D|n;q=mw(q&65535|0,0,48)|0;q=p|o|q;n=n&65535|D;o=g+(k<<3)|0;p=o;b[p>>1]=q;b[p+2>>1]=q>>>16;o=o+4|0;b[o>>1]=n;b[o+2>>1]=n>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){q=d+4|0;p=b[d>>1]|0;b[d>>1]=b[q>>1]|0;b[q>>1]=p;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function Bd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36436;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Cd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36436;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Dd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;Hd(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Hd(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Ed(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Fd(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Gd(a,f,b,d,e);return}}function Fd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;l=d+4|0;j=c[l>>2]|0;do{if(!(a[j+32>>0]|0))m=f;else{d=d+8|0;lw(c[d>>2]|0,f|0,h*6|0)|0;j=c[l>>2]|0;k=c[j+16>>2]|0;if((h|0)<=0){m=c[d>>2]|0;break}d=c[d>>2]|0;j=d;f=0;while(1){m=j+4|0;n=b[j>>1]|0;b[j>>1]=b[m>>1]|0;b[m>>1]=n;f=f+1|0;if((f|0)==(h|0))break;else j=j+(k<<1)|0}m=d;j=c[l>>2]|0}}while(0);switch(c[j+16>>2]|0){case 3:{if((c[j+24>>2]|0)==2){if((h|0)>0)j=0;else return;do{i=b[m+(j*6|0)+2>>1]|0;l=i&65535;n=32768-l+(e[m+(j*6|0)+4>>1]|0)&65535;b[g+(j*6|0)>>1]=(e[m+(j*6|0)>>1]|0)+32768-l;b[g+(j*6|0)+2>>1]=i;b[g+(j*6|0)+4>>1]=n;j=j+1|0}while((j|0)!=(h|0));return}j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=0;do{h=b[m+(f*6|0)+2>>1]|0;l=h&65535;n=32768-l+(e[m+(f*6|0)+4>>1]|0)&65535;b[g+(f<<1)>>1]=(e[m+(f*6|0)>>1]|0)+32768-l;b[g+(f+i<<1)>>1]=h;b[g+(f+d<<1)>>1]=n;f=f+1|0}while((f|0)!=(j|0));return}case 4:{if((c[j+24>>2]|0)!=1)return;j=(i|0)<(h|0)?i:h;if((j|0)<=0)return;d=i<<1;f=i*3|0;k=0;do{l=b[m+(k<<3)+2>>1]|0;n=b[m+(k<<3)+6>>1]|0;o=l&65535;h=32768-o+(e[m+(k<<3)+4>>1]|0)&65535;b[g+(k<<1)>>1]=(e[m+(k<<3)>>1]|0)+32768-o;b[g+(k+i<<1)>>1]=l;b[g+(k+d<<1)>>1]=h;b[g+(k+f<<1)>>1]=n;k=k+1|0}while((k|0)!=(j|0));return}default:return}}function Gd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do{if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do{if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}while(0);t=h;fn(m);Ya(t|0)}}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Fd(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Fd(b,t,e,f,g);i=q;return}function Hd(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=d+4|0;d=c[m>>2]|0;a:do{switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=b[f+(d*6|0)+2>>1]|0;k=l&65535;i=k+32768+(e[f+(d*6|0)+4>>1]|0)&65535;b[g+(d*6|0)>>1]=(e[f+(d*6|0)>>1]|0)+32768+k;b[g+(d*6|0)+2>>1]=l;b[g+(d*6|0)+4>>1]=i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=b[f+(k+i<<1)>>1]|0;o=n&65535;l=o+32768+(e[f+(k+j<<1)>>1]|0)&65535;b[g+(k*6|0)>>1]=(e[f+(k<<1)>>1]|0)+32768+o;b[g+(k*6|0)+2>>1]=n;b[g+(k*6|0)+4>>1]=l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{o=b[f+(k+i<<1)>>1]|0;n=o&65535;p=(e[f+(k<<1)>>1]|0)+32768+n|0;n=n+32768+(e[f+(k+d<<1)>>1]|0)|0;q=b[f+(k+j<<1)>>1]|0;o=mw(o&65535|0,0,16)|0;n=D|n;q=mw(q&65535|0,0,48)|0;q=p&65535|o|q;n=n&65535|D;o=g+(k<<3)|0;p=o;b[p>>1]=q;b[p+2>>1]=q>>>16;o=o+4|0;b[o>>1]=n;b[o+2>>1]=n>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){q=d+4|0;p=b[d>>1]|0;b[d>>1]=b[q>>1]|0;b[q>>1]=p;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function Id(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36460;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e)return;b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);return}function Jd(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=36460;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}e=c[a+8>>2]|0;if(!e){cj(a);return}b=a+12|0;d=c[b>>2]|0;if((d|0)!=(e|0))c[b>>2]=d+(~((d+-2-e|0)>>>1)<<1);cj(e);cj(a);return}function Kd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=b+36|0;if(!(c[g>>2]|0)){j=b+40|0;Od(b,d,c[j>>2]|0,e,f);c[j>>2]=(c[j>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}k=b+4|0;h=e<<1;i=$(h,c[(c[k>>2]|0)+16>>2]|0)|0;j=b+20|0;Od(b,d,c[j>>2]|0,e,f);d=c[k>>2]|0;if((c[d+28>>2]|0)==536870912)Oc(c[j>>2]|0,$(h,c[d+16>>2]|0)|0);k=c[g>>2]|0;if((Gb[c[(c[k>>2]|0)+48>>2]&63](k,c[j>>2]|0,i)|0)==(i|0))return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,3,35648);k=o;o=0;if(k&1){k=Na()|0;La(d|0);Ya(k|0)}else lb(d|0,824,96)}function Ld(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Md(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Nd(a,f,b,d,e);return}}function Md(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;k=d+4|0;i=c[k>>2]|0;do{if(!(a[i+32>>0]|0))l=e;else{d=d+8|0;lw(c[d>>2]|0,e|0,g*6|0)|0;i=c[k>>2]|0;j=c[i+16>>2]|0;if((g|0)<=0){l=c[d>>2]|0;break}d=c[d>>2]|0;i=d;e=0;while(1){l=i+4|0;m=b[i>>1]|0;b[i>>1]=b[l>>1]|0;b[l>>1]=m;e=e+1|0;if((e|0)==(g|0))break;else i=i+(j<<1)|0}l=d;i=c[k>>2]|0}}while(0);switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{h=b[l+(i*6|0)+2>>1]|0;m=b[l+(i*6|0)+4>>1]|0;b[f+(i*6|0)>>1]=b[l+(i*6|0)>>1]|0;b[f+(i*6|0)+2>>1]=h;b[f+(i*6|0)+4>>1]=m;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;d=h<<1;e=0;do{g=b[l+(e*6|0)+2>>1]|0;m=b[l+(e*6|0)+4>>1]|0;b[f+(e<<1)>>1]=b[l+(e*6|0)>>1]|0;b[f+(e+h<<1)>>1]=g;b[f+(e+d<<1)>>1]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;d=h<<1;e=h*3|0;j=0;do{k=b[l+(j<<3)+2>>1]|0;g=b[l+(j<<3)+4>>1]|0;m=b[l+(j<<3)+6>>1]|0;b[f+(j<<1)>>1]=b[l+(j<<3)>>1]|0;b[f+(j+h<<1)>>1]=k;b[f+(j+d<<1)>>1]=g;b[f+(j+e<<1)>>1]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function Nd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;q=i;i=i+176|0;r=q+152|0;t=q+16|0;s=q;l=b+4|0;h=c[l>>2]|0;p=f<<1;j=$(p,c[h+16>>2]|0)|0;do{if(j){k=b+20|0;while(1){h=Gb[c[(c[d>>2]|0)+32>>2]&63](d,c[k>>2]|0,j)|0;if(!h)break;if((j|0)==(h|0)){m=26;break}else j=j-h|0}if((m|0)==26){h=c[l>>2]|0;break}m=t+56|0;l=t+4|0;c[t>>2]=36160;c[m>>2]=36180;o=0;ia(62,t+56|0,l|0);q=o;o=0;if(q&1){t=Na()|0;fn(m);Ya(t|0)}c[t+128>>2]=0;c[t+132>>2]=-1;c[t>>2]=36200;c[t+56>>2]=36220;o=0;ha(180,l|0);q=o;o=0;do{if(q&1)h=Na()|0;else{c[l>>2]=36236;d=t+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[t+52>>2]=16;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;o=0;ia(63,l|0,r|0);q=o;o=0;if(q&1){h=Na()|0;Im(r);Im(d);nn(l);break}Im(r);o=0;h=ma(28,t|0,49029,57)|0;r=o;o=0;if(!(r&1)?(o=0,ra(36,h|0,0)|0,r=o,o=0,!(r&1)):0){k=Ma(16)|0;o=0;ia(64,s|0,l|0);r=o;o=0;if(!(r&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,s|0);r=o;o=0;if(r&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(s);if(!j){s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}else h=Na()|0;La(k|0);s=h;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}s=Na()|0;c[t>>2]=36200;c[m>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(m);Ya(s|0)}}while(0);t=h;fn(m);Ya(t|0)}}while(0);j=b+20|0;if((c[h+28>>2]|0)!=536870912){t=c[j>>2]|0;Md(b,t,e,f,g);i=q;return}Oc(c[j>>2]|0,$(p,c[h+16>>2]|0)|0);t=c[j>>2]|0;Md(b,t,e,f,g);i=q;return}function Od(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=d+4|0;d=c[m>>2]|0;a:do{switch(c[d+16>>2]|0){case 3:{if((c[d+24>>2]|0)==2){if((h|0)>0)d=0;else break a;while(1){l=b[f+(d*6|0)+2>>1]|0;i=b[f+(d*6|0)+4>>1]|0;b[g+(d*6|0)>>1]=b[f+(d*6|0)>>1]|0;b[g+(d*6|0)+2>>1]=l;b[g+(d*6|0)+4>>1]=i;d=d+1|0;if((d|0)==(h|0))break a}}d=(h|0)<(i|0)?h:i;if((d|0)>0){j=i<<1;k=0;do{n=b[f+(k+i<<1)>>1]|0;l=b[f+(k+j<<1)>>1]|0;b[g+(k*6|0)>>1]=b[f+(k<<1)>>1]|0;b[g+(k*6|0)+2>>1]=n;b[g+(k*6|0)+4>>1]=l;k=k+1|0}while((k|0)!=(d|0))}break}case 4:{if((c[d+24>>2]|0)==1?(l=(h|0)<(i|0)?h:i,(l|0)>0):0){d=i<<1;j=i*3|0;k=0;do{n=b[f+(k<<1)>>1]|0;q=b[f+(k+j<<1)>>1]|0;o=e[f+(k+d<<1)>>1]|0;p=mw(e[f+(k+i<<1)>>1]|0,0,16)|0;o=D|o;q=mw(q&65535|0,0,48)|0;q=p|n&65535|q;o=o&65535|D;n=g+(k<<3)|0;p=n;b[p>>1]=q;b[p+2>>1]=q>>>16;n=n+4|0;b[n>>1]=o;b[n+2>>1]=o>>>16;k=k+1|0}while((k|0)!=(l|0))}break}default:{}}}while(0);d=c[m>>2]|0;if(!(a[d+32>>0]|0))return;k=c[d+16>>2]|0;if((h|0)<=0)return;d=g;j=0;while(1){q=d+4|0;p=b[d>>1]|0;b[d>>1]=b[q>>1]|0;b[q>>1]=p;j=j+1|0;if((j|0)==(h|0))break;else d=d+(k<<1)|0}return}function Pd(a){a=a|0;return}function Qd(a){a=a|0;cj(a);return}function Rd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;e=$(c[b+8>>2]|0,e)|0;b=c[b+4>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,d,e)|0)==(e|0))return;f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,3,35648);b=o;o=0;if(b&1){b=Na()|0;La(f|0);Ya(b|0)}else lb(f|0,824,96)}function Sd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,p=0;p=i;i=i+16|0;m=p;l=b+8|0;g=c[l>>2]|0;f=$(g,e)|0;do{if(f){j=b+4|0;h=f;while(1){g=c[j>>2]|0;g=Gb[c[(c[g>>2]|0)+32>>2]&63](g,d,h)|0;if(!g)break;f=h-g|0;if((h|0)==(g|0)){k=11;break}else h=f}if((k|0)==11){g=c[l>>2]|0;h=f;break}f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,3,35648);b=o;o=0;if(b&1){b=Na()|0;La(f|0);Ya(b|0)}else lb(f|0,824,96)}else h=0}while(0);if((g|0)==2){Oc(d,e<<1);g=c[l>>2]|0}f=c[b+12>>2]|0;if((f|0)<=($(g,e)|0)){i=p;return}b=c[b+4>>2]|0;Ib[c[(c[b>>2]|0)+16>>2]&15](m,b,f-h|0,0,1,24);i=p;return}function Td(a){a=a|0;cj(a);return}function Ud(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a+4|0;lw(c[e>>2]|0,b|0,$(c[a+8>>2]|0,d)|0)|0;c[e>>2]=(c[e>>2]|0)+(c[a+12>>2]|0);return}function Vd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a+4|0;lw(b|0,c[e>>2]|0,$(c[a+8>>2]|0,d)|0)|0;c[e>>2]=(c[e>>2]|0)+(c[a+12>>2]|0);return}function Wd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;c[b+112>>2]=0;c[b+108>>2]=0;l=c[d>>2]|0;g=l;do{if(l){i=b+92|0;l=b+96|0;j=c[l>>2]|0;k=c[i>>2]|0;e=k;f=j-e|0;if(f>>>0>=4e4)if(f>>>0>4e4?(h=k+4e4|0,(j|0)!=(h|0)):0){c[l>>2]=h;h=e}else h=e;else{Xd(i,4e4-f|0);h=c[i>>2]|0;g=c[d>>2]|0}e=b+116|0;c[e>>2]=h;j=b+124|0;c[j>>2]=h;k=b+104|0;c[k>>2]=g;f=g;if(g){if((c[f+12>>2]|0)==(c[f+16>>2]|0)){d=(Eb[c[(c[g>>2]|0)+36>>2]&127](f)|0)==-1;f=c[j>>2]|0;if(d)break;g=c[e>>2]|0}else{f=h;g=h}i=f-g|0;if(i>>>0<=64){h=b+92|0;if((f|0)==(g|0))f=g;else{f=g;g=0;do{a[(c[h>>2]|0)+g>>0]=a[f+g>>0]|0;g=g+1|0;f=c[e>>2]|0}while(g>>>0>>0);g=c[j>>2]|0}h=c[h>>2]|0;d=h;m=d-f|0;c[e>>2]=h;f=g+m|0;c[j>>2]=f;h=b+120|0;c[h>>2]=(c[h>>2]|0)+m;k=c[k>>2]|0;f=Gb[c[(c[k>>2]|0)+32>>2]&63](k,f,(c[l>>2]|0)-(d+i)|0)|0;f=(c[j>>2]|0)+f|0;c[j>>2]=f}}else f=h}else{c[b+104>>2]=0;f=c[d+4>>2]|0;e=b+116|0;c[e>>2]=f;f=f+(c[d+8>>2]|0)|0;c[b+124>>2]=f}}while(0);e=c[e>>2]|0;if(e>>>0>=f>>>0){l=e;m=b+120|0;c[m>>2]=l;ge(b);return}while(1){if((a[e>>0]|0)==-1){f=20;break}e=e+1|0;if(e>>>0>=f>>>0){f=20;break}}if((f|0)==20){m=b+120|0;c[m>>2]=e;ge(b);return}}function Xd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=b+8|0;g=c[k>>2]|0;l=b+4|0;e=c[l>>2]|0;f=e;if((g-f|0)>>>0>=d>>>0){do{a[e>>0]=0;e=(c[l>>2]|0)+1|0;c[l>>2]=e;d=d+-1|0}while((d|0)!=0);return}e=c[b>>2]|0;h=f-e+d|0;if((h|0)<0){$i(b);g=c[k>>2]|0;e=c[b>>2]|0}f=g-e|0;if(f>>>0<1073741823){f=f<<1;f=f>>>0 >>0?h:f;e=(c[l>>2]|0)-e|0;if(!f){g=0;i=0;h=e}else j=8}else{f=2147483647;e=(c[l>>2]|0)-e|0;j=8}if((j|0)==8){g=f;i=bj(f)|0;h=e}e=i+h|0;g=i+g|0;f=e;do{a[f>>0]=0;f=e+1|0;e=f;d=d+-1|0}while((d|0)!=0);d=c[b>>2]|0;f=(c[l>>2]|0)-d|0;j=i+(h-f)|0;lw(j|0,d|0,f|0)|0;c[b>>2]=j;c[l>>2]=e;c[k>>2]=g;if(!d)return;cj(d);return}function Yd(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+32|0;x=v+12|0;u=v;r=a+180|0;s=(c[r>>2]|0)+4|0;if((c[a+32>>2]|0)==1)t=c[a+24>>2]|0;else t=1;d=$(t<<1,s)|0;c[x>>2]=0;y=x+4|0;c[y>>2]=0;c[x+8>>2]=0;do{if(d){if(!((d|0)<0?(o=0,ha(178,x|0),w=o,o=0,w&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,w=o,o=0,!(w&1)):0){c[x>>2]=f;w=f+(d<<1)|0;c[x+8>>2]=w;iw(f|0,0,e|0)|0;c[y>>2]=w;break}f=Na()|0;d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}}while(0);c[u>>2]=0;w=u+4|0;c[w>>2]=0;c[u+8>>2]=0;do{if(!t)j=18;else{if(!(t>>>0>1073741823?(o=0,ha(178,u|0),q=o,o=0,q&1):0))j=16;if((j|0)==16?(g=t<<2,o=0,h=ka(67,g|0)|0,q=o,o=0,!(q&1)):0){c[u>>2]=h;j=h+(t<<2)|0;c[u+8>>2]=j;iw(h|0,0,g|0)|0;c[w>>2]=j;j=18;break}f=Na()|0;d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((j|0)==18){h=a+12|0;a:do{if((c[h>>2]|0)>0){j=a+4604|0;k=($(t,s)|0)+1|0;l=a+4608|0;m=a+92|0;n=(t|0)>0;p=a+4600|0;q=0;b:while(1){e=c[x>>2]|0;d=e+2|0;c[j>>2]=d;e=e+(k<<1)|0;c[l>>2]=e;if(!(q&1))d=e;else{c[j>>2]=e;c[l>>2]=d}g=c[m>>2]|0;o=0;Aa(c[(c[g>>2]|0)+12>>2]|0,g|0,d|0,c[r>>2]|0,s|0);g=o;o=0;if(g&1){j=28;break}if(n){d=c[j>>2]|0;e=c[l>>2]|0;f=c[u>>2]|0;g=0;do{c[p>>2]=c[f+(g<<2)>>2];f=c[r>>2]|0;b[d+(f<<1)>>1]=b[d+(f+-1<<1)>>1]|0;b[e+-2>>1]=b[d>>1]|0;o=0;ia(68,a|0,0);f=o;o=0;if(f&1){j=27;break b}f=c[u>>2]|0;c[f+(g<<2)>>2]=c[p>>2];d=(c[j>>2]|0)+(s<<1)|0;c[j>>2]=d;e=(c[l>>2]|0)+(s<<1)|0;c[l>>2]=e;g=g+1|0}while((g|0)<(t|0))}q=q+1|0;if((q|0)>=(c[h>>2]|0)){j=40;break a}}if((j|0)==27){f=Na()|0;break}else if((j|0)==28){f=Na()|0;break}}else j=40}while(0);do{if((j|0)==40){o=0;ha(182,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[u>>2]|0;e=d;if(d){f=c[w>>2]|0;if((f|0)!=(d|0))c[w>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[x>>2]|0;if(!d){i=v;return}e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=v;return}}while(0);d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function Zd(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4604|0;f=c[p>>2]|0;s=d+180|0;if((c[s>>2]|0)<=0)return;q=d+4608|0;r=d+4612|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(ce(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=be(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function _d(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=b+104|0;if((c[g>>2]|0)>>>0<4)$d(b);h=b+100|0;i=b+112|0;j=b+96|0;k=b+108|0;l=b+116|0;d=c[h>>2]|0;f=0;do{e=a[i>>0]|0;if((d|0)>31)break;d=c[j>>2]|0;if(!(e<<24>>24)){a[c[k>>2]>>0]=d>>>24;c[j>>2]=c[j>>2]<<8;d=(c[h>>2]|0)+8|0}else{a[c[k>>2]>>0]=d>>>25;c[j>>2]=c[j>>2]<<7;d=(c[h>>2]|0)+7|0}c[h>>2]=d;m=c[k>>2]|0;e=(a[m>>0]|0)==-1&1;a[i>>0]=e;c[k>>2]=m+1;c[g>>2]=(c[g>>2]|0)+-1;c[l>>2]=(c[l>>2]|0)+1;f=f+1|0}while((f|0)<4);if(!(e<<24>>24))ae(b,0,(d|0)%8|0);else ae(b,0,(d+-1|0)%8|0);if((c[g>>2]|0)>>>0<4)$d(b);d=c[h>>2]|0;e=0;do{if((d|0)>31)break;d=c[j>>2]|0;if(!(a[i>>0]|0)){a[c[k>>2]>>0]=d>>>24;c[j>>2]=c[j>>2]<<8;d=(c[h>>2]|0)+8|0}else{a[c[k>>2]>>0]=d>>>25;c[j>>2]=c[j>>2]<<7;d=(c[h>>2]|0)+7|0}c[h>>2]=d;m=c[k>>2]|0;a[i>>0]=(a[m>>0]|0)==-1&1;c[k>>2]=m+1;c[g>>2]=(c[g>>2]|0)+-1;c[l>>2]=(c[l>>2]|0)+1;e=e+1|0}while((e|0)<4);if(!(c[b+132>>2]|0))return;$d(b);return}function $d(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[b+132>>2]|0;if(!d){d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,4,35648);b=o;o=0;if(!(b&1))lb(d|0,824,96);b=Na()|0;La(d|0);Ya(b|0)}e=b+108|0;f=b+120|0;h=c[f>>2]|0;g=(c[e>>2]|0)-h|0;if((Gb[c[(c[d>>2]|0)+48>>2]&63](d,h,g)|0)==(g|0)){h=c[f>>2]|0;c[e>>2]=h;c[b+104>>2]=(c[b+124>>2]|0)-h;return}d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,4,35648);h=o;o=0;if(!(h&1))lb(d|0,824,96);h=Na()|0;La(d|0);Ya(h|0)}function ae(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+100|0;e=(c[l>>2]|0)-e|0;c[l>>2]=e;if((e|0)>-1){m=b+96|0;c[m>>2]=c[m>>2]|d< >2]=c[m>>2]|d>>0-e;k=b+104|0;if((c[k>>2]|0)>>>0<4){$d(b);e=c[l>>2]|0}h=b+112|0;i=b+108|0;j=b+116|0;f=0;while(1){if((e|0)>31)break;e=c[m>>2]|0;if(!(a[h>>0]|0)){a[c[i>>2]>>0]=e>>>24;c[m>>2]=c[m>>2]<<8;e=(c[l>>2]|0)+8|0}else{a[c[i>>2]>>0]=e>>>25;c[m>>2]=c[m>>2]<<7;e=(c[l>>2]|0)+7|0}c[l>>2]=e;n=c[i>>2]|0;a[h>>0]=(a[n>>0]|0)==-1&1;c[i>>2]=n+1;c[k>>2]=(c[k>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+1;f=f+1|0;if((f|0)>=4){g=11;break}}a:do{if((g|0)==11)if((e|0)<0){c[m>>2]=c[m>>2]|d>>0-e;if((c[k>>2]|0)>>>0<4){$d(b);e=c[l>>2]|0;f=0}else f=0;do{if((e|0)>31)break a;e=c[m>>2]|0;if(!(a[h>>0]|0)){a[c[i>>2]>>0]=e>>>24;c[m>>2]=c[m>>2]<<8;e=(c[l>>2]|0)+8|0}else{a[c[i>>2]>>0]=e>>>25;c[m>>2]=c[m>>2]<<7;e=(c[l>>2]|0)+7|0}c[l>>2]=e;n=c[i>>2]|0;a[h>>0]=(a[n>>0]|0)==-1&1;c[i>>2]=n+1;c[k>>2]=(c[k>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+1;f=f+1|0}while((f|0)<4)}}while(0);c[m>>2]=c[m>>2]|d< >31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i< >1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;fe(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&65535;return r|0}r=g&~(d>>31);r=r&65535;return r|0}function ce(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=(c[a+180>>2]|0)-d|0;m=c[a+4608>>2]|0;n=c[a+4604>>2]|0;h=b[m+(d+-1<<1)>>1]|0;k=h&65535;f=c[a+144>>2]|0;i=0;while(1){g=m+(i+d<<1)|0;j=(e[g>>1]|0)-k|0;if((((j|0)>-1?j:0-j|0)|0)>(f|0))break;b[g>>1]=h;i=i+1|0;if((i|0)==(l|0)){i=l;break}}h=(i|0)==(l|0);j=a+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1< (i|0))f=i;else{f=i;do{ae(a,1,1);g=c[j>>2]|0;f=f-(1< >2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1< >1]=de(a,e[d>>1]|0,k,e[n+(l<<1)>>1]|0)|0;a=c[j>>2]|0;c[j>>2]=(a|0)<1?0:a+-1|0;a=i+1|0;return a|0}if(!f){a=l;return a|0}ae(a,1,1);a=l;return a|0}function de(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d-e|0;j=a+136|0;h=a+144|0;f=c[h>>2]|0;if((((i|0)>-1?i:0-i|0)|0)>(f|0)){g=e-d>>31|1;b=$(g,b-e|0)|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;d=((b|0)<0?f:0)+b|0;f=d-((d|0)<((f+1|0)/2|0|0)?0:f)|0;ee(a,a+4576|0,f);f=$(f,g)|0;g=c[h>>2]|0;h=g<<1|1;f=($(f,h)|0)+e|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&65535;return j|0}j=b&~(f>>31);j=j&65535;return j|0}else{b=b-d|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;g=((b|0)<0?f:0)+b|0;f=g-((g|0)<((f+1|0)/2|0|0)?0:f)|0;ee(a,a+4588|0,f);g=c[h>>2]|0;h=g<<1|1;f=($(h,f)|0)+d|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&65535;return j|0}j=b&~(f>>31);j=j&65535;return j|0}return 0}function ee(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0 >>0:0)g=1;else k=5;do{if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;fe(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function fe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>2]|0;l=b+120|0;if(e>>>0<((c[l>>2]|0)+-3|0)>>>0){l=b+112|0;j=c[l>>2]|0;b=b+108|0;c[b>>2]=(d[e+1>>0]<<16|d[e>>0]<<24|d[e+2>>0]<<8|d[e+3>>0])>>>j|c[b>>2];b=32-j>>3;c[k>>2]=e+b;c[l>>2]=(b<<3)+j;return}j=b+104|0;f=c[j>>2]|0;do{if(f){if((c[f+12>>2]|0)==(c[f+16>>2]|0)){if((Eb[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1)break;e=c[k>>2]|0}h=b+124|0;f=c[h>>2]|0;i=f-e|0;if(i>>>0<=64){g=b+92|0;if((f|0)==(e|0))f=e;else{f=0;do{a[(c[g>>2]|0)+f>>0]=a[e+f>>0]|0;f=f+1|0;e=c[k>>2]|0}while(f>>>0>>0);f=e;e=c[h>>2]|0}p=c[g>>2]|0;g=p;m=g-f|0;c[k>>2]=p;f=e+m|0;c[h>>2]=f;c[l>>2]=(c[l>>2]|0)+m;j=c[j>>2]|0;j=Gb[c[(c[j>>2]|0)+32>>2]&63](j,f,(c[b+96>>2]|0)-(g+i)|0)|0;c[h>>2]=(c[h>>2]|0)+j}}}while(0);j=b+112|0;i=b+108|0;b=c[b+124>>2]|0;h=b+-1|0;e=c[k>>2]|0;while(1){if(e>>>0>=b>>>0){f=14;break}g=a[e>>0]|0;f=g&255;g=g<<24>>24==-1;if(g){if((e|0)==(h|0)){f=25;break}e=e+1|0;if((a[e>>0]|0)<0){f=25;break}}else e=e+1|0;p=c[j>>2]|0;c[i>>2]=f<<24-p|c[i>>2];c[k>>2]=e;p=p+(g?7:8)|0;c[j>>2]=p;if((p|0)>=24){f=33;break}}if((f|0)==14){if((c[j>>2]|0)>=1)return;e=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,e|0,5,35648);p=o;o=0;if(!(p&1))lb(e|0,824,96);p=Na()|0;La(e|0);Ya(p|0)}else if((f|0)==25){if((c[j>>2]|0)>=1)return;e=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,e|0,5,35648);p=o;o=0;if(!(p&1))lb(e|0,824,96);p=Na()|0;La(e|0);Ya(p|0)}else if((f|0)==33){a:do{if(e>>>0>>0)do{if((a[e>>0]|0)==-1)break a;e=e+1|0}while(e>>>0>>0)}while(0);c[l>>2]=e;return}}function he(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+144|0;a:do{if(!(c[o>>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1< >2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0}while(0);n=1< >2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0 >>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function ie(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=b+8|0;g=c[k>>2]|0;l=b+4|0;e=c[l>>2]|0;f=e;if((g-f|0)>>>0>=d>>>0){do{a[e>>0]=0;e=(c[l>>2]|0)+1|0;c[l>>2]=e;d=d+-1|0}while((d|0)!=0);return}e=c[b>>2]|0;h=f-e+d|0;if((h|0)<0){$i(b);g=c[k>>2]|0;e=c[b>>2]|0}f=g-e|0;if(f>>>0<1073741823){f=f<<1;f=f>>>0 >>0?h:f;e=(c[l>>2]|0)-e|0;if(!f){g=0;i=0;h=e}else j=8}else{f=2147483647;e=(c[l>>2]|0)-e|0;j=8}if((j|0)==8){g=f;i=bj(f)|0;h=e}e=i+h|0;g=i+g|0;f=e;do{a[f>>0]=0;f=e+1|0;e=f;d=d+-1|0}while((d|0)!=0);d=c[b>>2]|0;f=(c[l>>2]|0)-d|0;j=i+(h-f)|0;lw(j|0,d|0,f|0)|0;c[b>>2]=j;c[l>>2]=e;c[k>>2]=g;if(!d)return;cj(d);return}function je(a){a=a|0;var b=0,d=0;c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function ke(a){a=a|0;var b=0,d=0;c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function le(a){a=a|0;var b=0,d=0;c[a>>2]=36052;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function me(a){a=a|0;var b=0,d=0;c[a>>2]=36052;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function ne(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;xe(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function oe(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35828;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];qe(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;qe(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function pe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function qe(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;w=u+12|0;t=u;q=a+180|0;r=(c[q>>2]|0)+4|0;if((c[a+32>>2]|0)==1)s=c[a+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;do{if(d){if(!(d>>>0>715827882?(o=0,ha(178,w|0),v=o,o=0,v&1):0))j=6;if((j|0)==6?(o=0,e=ka(67,d*6|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;f=e+(d*6|0)|0;c[w+8>>2]=f;while(1){b[e>>1]=0;b[e+2>>1]=0;b[e+4>>1]=0;d=d+-1|0;if(!d)break;else e=e+6|0}c[x>>2]=f;break}f=Na()|0;d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do{if(!s)j=20;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))j=18;if((j|0)==18?(g=s<<2,o=0,h=ka(67,g|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=h;j=h+(s<<2)|0;c[t+8>>2]=j;iw(h|0,0,g|0)|0;c[v>>2]=j;j=20;break}f=Na()|0;d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((j|0)==20){g=a+12|0;a:do{if((c[g>>2]|0)>0){h=a+4604|0;j=($(s,r)|0)+1|0;k=a+4608|0;l=a+92|0;m=(s|0)>0;n=a+4600|0;p=0;b:while(1){e=c[w>>2]|0;d=e+6|0;c[h>>2]=d;e=e+(j*6|0)|0;c[k>>2]=e;if(!(p&1))d=e;else{c[h>>2]=e;c[k>>2]=d}f=c[l>>2]|0;o=0;Aa(c[(c[f>>2]|0)+12>>2]|0,f|0,d|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){j=30;break}if(m){d=c[t>>2]|0;e=c[h>>2]|0;f=0;do{c[n>>2]=c[d+(f<<2)>>2];y=c[q>>2]|0;d=e+(y*6|0)|0;e=e+((y+-1|0)*6|0)|0;b[d>>1]=b[e>>1]|0;b[d+2>>1]=b[e+2>>1]|0;b[d+4>>1]=b[e+4>>1]|0;e=(c[k>>2]|0)+-6|0;d=c[h>>2]|0;b[e>>1]=b[d>>1]|0;b[e+2>>1]=b[d+2>>1]|0;b[e+4>>1]=b[d+4>>1]|0;o=0;ia(69,a|0,0);e=o;o=0;if(e&1){j=29;break b}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[n>>2];e=(c[h>>2]|0)+(r*6|0)|0;c[h>>2]=e;c[k>>2]=(c[k>>2]|0)+(r*6|0);f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42}while(0);do{if((j|0)==42){o=0;ha(182,a|0);y=o;o=0;if(y&1){f=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);i=u;return}}while(0);d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}function re(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;B=d+180|0;if((c[B>>2]|0)<=0)return;C=d+4608|0;D=d+4604|0;E=d+4612|0;A=0;while(1){x=A+-1|0;j=c[C>>2]|0;k=c[D>>2]|0;f=A+1|0;i=e[k+(A*6|0)>>1]|0;z=c[E>>2]|0;l=e[k+(x*6|0)>>1]|0;m=i-l|0;n=e[j+(x*6|0)>>1]|0;o=l-n|0;p=((((a[z+((e[k+(f*6|0)>>1]|0)-i)>>0]|0)*9|0)+(a[z+m>>0]|0)|0)*9|0)+(a[z+o>>0]|0)|0;h=e[k+(A*6|0)+2>>1]|0;q=e[k+(x*6|0)+2>>1]|0;r=h-q|0;s=e[j+(x*6|0)+2>>1]|0;t=q-s|0;u=((((a[z+((e[k+(f*6|0)+2>>1]|0)-h)>>0]|0)*9|0)+(a[z+r>>0]|0)|0)*9|0)+(a[z+t>>0]|0)|0;g=e[k+(A*6|0)+4>>1]|0;v=e[k+(x*6|0)+4>>1]|0;w=g-v|0;x=e[j+(x*6|0)+4>>1]|0;y=v-x|0;z=((((a[z+((e[k+(f*6|0)+4>>1]|0)-g)>>0]|0)*9|0)+(a[z+w>>0]|0)|0)*9|0)+(a[z+y>>0]|0)|0;if(!(u|p|z))f=(se(d,A,0)|0)+A|0;else{k=e[j+(A*6|0)>>1]|0;j=i-n>>31;if((j^o|0)>=0)if((j^m|0)<0)i=n;else i=n-l+i|0;k=te(d,p,k,i,0)|0;j=e[(c[C>>2]|0)+(A*6|0)+2>>1]|0;i=h-s>>31;if((i^t|0)>=0)if((i^r|0)<0)h=s;else h=s-q+h|0;i=te(d,u,j,h,0)|0;j=e[(c[C>>2]|0)+(A*6|0)+4>>1]|0;h=g-x>>31;if((h^y|0)>=0)if((h^w|0)<0)g=x;else g=x-v+g|0;y=te(d,z,j,g,0)|0;z=c[C>>2]|0;b[z+(A*6|0)>>1]=k;b[z+(A*6|0)+2>>1]=i;b[z+(A*6|0)+4>>1]=y}if((f|0)<(c[B>>2]|0))A=f;else break}return}function se(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=i;i=i+48|0;r=B+30|0;q=B+24|0;p=B+18|0;s=B+12|0;x=B+6|0;y=B;z=(c[a+180>>2]|0)-d|0;A=c[a+4608>>2]|0;t=c[a+4604>>2]|0;w=d+-1|0;u=b[A+(w*6|0)>>1]|0;v=b[A+(w*6|0)+2>>1]|0;w=b[A+(w*6|0)+4>>1]|0;f=u&65535;g=a+144|0;h=v&65535;j=w&65535;o=0;while(1){m=o+d|0;k=A+(m*6|0)|0;l=A+(m*6|0)+2|0;m=A+(m*6|0)+4|0;C=(e[k>>1]|0)-f|0;n=c[g>>2]|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(e[l>>1]|0)-h|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(e[m>>1]|0)-j|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;b[k>>1]=u;b[l>>1]=v;b[m>>1]=w;o=o+1|0;if((o|0)==(z|0)){o=z;break}}h=(o|0)==(z|0);j=a+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1< (o|0))f=o;else{f=o;do{ae(a,1,1);g=c[j>>2]|0;f=f-(1< >2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1< >1]=b[C>>1]|0;b[x+2>>1]=b[C+2>>1]|0;b[x+4>>1]=b[C+4>>1]|0;b[y>>1]=u;b[y+2>>1]=v;b[y+4>>1]=w;d=t+(d*6|0)|0;b[p>>1]=b[x>>1]|0;b[p+2>>1]=b[x+2>>1]|0;b[p+4>>1]=b[x+4>>1]|0;b[q>>1]=b[y>>1]|0;b[q+2>>1]=b[y+2>>1]|0;b[q+4>>1]=b[y+4>>1]|0;b[r>>1]=b[d>>1]|0;b[r+2>>1]=b[d+2>>1]|0;b[r+4>>1]=b[d+4>>1]|0;ve(s,a,p,q,r);b[C>>1]=b[s>>1]|0;b[C+2>>1]=b[s+2>>1]|0;b[C+4>>1]=b[s+4>>1]|0;C=c[j>>2]|0;c[j>>2]=(C|0)<1?0:C+-1|0;C=o+1|0;i=B;return C|0}if(!f){C=z;i=B;return C|0}ae(a,1,1);C=z;i=B;return C|0}function te(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d>>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i< >1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;ue(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&65535;return r|0}r=g&~(d>>31);r=r&65535;return r|0}function ue(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>1]|0;p=o-(e[g>>1]|0)>>31|1;i=$(p,(e[f>>1]|0)-o|0)|0;m=d+144|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;w=d+140|0;l=c[w>>2]|0;k=((i|0)<0?l:0)+i|0;l=k-((k|0)<((l+1|0)/2|0|0)?0:l)|0;k=d+4576|0;we(d,k,l);t=e[h+2>>1]|0;u=t-(e[g+2>>1]|0)>>31|1;i=$(u,(e[f+2>>1]|0)-t|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;q=c[w>>2]|0;v=((i|0)<0?q:0)+i|0;q=v-((v|0)<((q+1|0)/2|0|0)?0:q)|0;we(d,k,q);v=e[h+4>>1]|0;s=v-(e[g+4>>1]|0)>>31|1;i=$(s,(e[f+4>>1]|0)-v|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;n=c[w>>2]|0;i=((i|0)<0?n:0)+i|0;n=i-((i|0)<((n+1|0)/2|0|0)?0:n)|0;we(d,k,n);k=c[m>>2]|0;m=k<<1|1;i=($($(m,l)|0,p)|0)+o|0;f=0-k|0;if((i|0)>=(f|0)){j=c[r>>2]|0;if((j+k|0)<(i|0)){i=i-($(c[w>>2]|0,m)|0)|0;g=j}else g=j}else{i=($(c[w>>2]|0,m)|0)+i|0;g=c[r>>2]|0}if((i&g|0)!=(i|0))i=g&~(i>>31);h=i&65535;i=($($(m,q)|0,u)|0)+t|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)!=(i|0))i=g&~(i>>31);j=i&65535;i=($($(m,n)|0,s)|0)+v|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)==(i|0)){w=i;w=w&65535;b[a>>1]=h;v=a+2|0;b[v>>1]=j;a=a+4|0;b[a>>1]=w;return}w=g&~(i>>31);w=w&65535;b[a>>1]=h;v=a+2|0;b[v>>1]=j;a=a+4|0;b[a>>1]=w;return}function we(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0 >>0:0)g=1;else k=5;do{if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;ue(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function xe(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+144|0;a:do{if(!(c[o>>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1< >2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0}while(0);n=1< >2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0 >>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function ye(a){a=a|0;var b=0,d=0;c[a>>2]=36024;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function ze(a){a=a|0;var b=0,d=0;c[a>>2]=36024;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Ae(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;pf(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function Be(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35800;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function Ce(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function De(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36712;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do{if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function Ee(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36688;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do{if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function Fe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36664;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do{if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function Ge(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=36640;c[b+4>>2]=e;m=b+8|0;f=c[e>>2]|0;k=e+16|0;i=c[k>>2]|0;h=$(i,f)|0;c[m>>2]=0;n=b+12|0;c[n>>2]=0;c[b+16>>2]=0;do{if(!h)h=i;else{if(!((h|0)<0?(o=0,ha(178,m|0),i=o,o=0,i&1):0))l=4;if((l|0)==4?(o=0,j=ka(67,h|0)|0,i=o,o=0,!(i&1)):0){c[n>>2]=j;c[m>>2]=j;c[b+16>>2]=j+h;f=j;do{a[f>>0]=0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;h=h+-1|0}while((h|0)!=0);h=c[k>>2]|0;f=c[e>>2]|0;break}f=Na()|0;g=c[m>>2]|0;if(g){if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g)}n=f;Ya(n|0)}}while(0);i=b+20|0;f=$(h,f)|0;c[i>>2]=0;h=b+24|0;c[h>>2]=0;c[b+28>>2]=0;if(!f){n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}if(!((f|0)<0?(o=0,ha(178,i|0),e=o,o=0,e&1):0))l=15;if((l|0)==15?(o=0,g=ka(67,f|0)|0,l=o,o=0,!(l&1)):0){c[h>>2]=g;c[i>>2]=g;c[b+28>>2]=g+f;do{a[g>>0]=0;g=(c[h>>2]|0)+1|0;c[h>>2]=g;f=f+-1|0}while((f|0)!=0);n=b+36|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];return}f=Na()|0;g=c[i>>2]|0;if(g){if((c[h>>2]|0)!=(g|0))c[h>>2]=g;cj(g)}g=c[m>>2]|0;if(!g){n=f;Ya(n|0)}if((c[n>>2]|0)!=(g|0))c[n>>2]=g;cj(g);n=f;Ya(n|0)}function He(a){a=a|0;var b=0,d=0;c[a>>2]=36640;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function Ie(a){a=a|0;var b=0,d=0;c[a>>2]=36640;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Je(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;Ne(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;Ne(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function Ke(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Le(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Me(a,f,b,d,e);return}}function Le(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=b+4|0;i=c[k>>2]|0;if(!(a[i+32>>0]|0))k=e;else{j=b+8|0;lw(c[j>>2]|0,e|0,g*3|0)|0;i=c[k>>2]|0;e=c[i+16>>2]|0;if((g|0)>0){i=c[j>>2]|0;b=0;while(1){l=i+2|0;m=a[i>>0]|0;a[i>>0]=a[l>>0]|0;a[l>>0]=m;b=b+1|0;if((b|0)==(g|0))break;else i=i+e|0}i=c[k>>2]|0}k=c[j>>2]|0}switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{j=d[k+(i*3|0)+1>>0]|0;h=128-j+(d[k+(i*3|0)+2>>0]|0)|0;l=(d[k+(i*3|0)>>0]|0)-j+128|0;m=f+(i*3|0)|0;a[m>>0]=j+192+(((h&255)+(l&255)|0)>>>2);a[m+1>>0]=h;a[m+2>>0]=l;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=0;do{g=d[k+(e*3|0)+1>>0]|0;l=128-g+(d[k+(e*3|0)+2>>0]|0)|0;m=(d[k+(e*3|0)>>0]|0)-g+128|0;a[f+e>>0]=g+192+(((l&255)+(m&255)|0)>>>2);a[f+(e+h)>>0]=l;a[f+(e+b)>>0]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=h*3|0;j=0;do{m=a[k+(j<<2)+3>>0]|0;n=d[k+(j<<2)+1>>0]|0;g=128-n+(d[k+(j<<2)+2>>0]|0)|0;l=(d[k+(j<<2)>>0]|0)-n+128|0;a[f+j>>0]=n+192+(((g&255)+(l&255)|0)>>>2);a[f+(j+h)>>0]=g;a[f+(j+b)>>0]=l;a[f+(j+e)>>0]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function Me(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;Le(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){Le(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do{if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}while(0);s=h;fn(e);Ya(s|0)}function Ne(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=b+4|0;b=c[l>>2]|0;a:do{switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=d[e+(b*3|0)+1>>0]|0;i=d[e+(b*3|0)+2>>0]|0;k=(d[e+(b*3|0)>>0]|0)-((i+j|0)>>>2)+64|0;h=f+(b*3|0)|0;a[h>>0]=i+128+k;a[h+1>>0]=k;a[h+2>>0]=j+128+k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=d[e+(j+h)>>0]|0;o=d[e+(j+i)>>0]|0;m=(d[e+j>>0]|0)-((o+n|0)>>>2)+64|0;k=f+(j*3|0)|0;a[k>>0]=o+128+m;a[k+1>>0]=m;a[k+2>>0]=n+128+m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{m=d[e+(j+h)>>0]|0;p=d[e+(j+b)>>0]|0;n=(d[e+j>>0]|0)-((p+m|0)>>>2)+64|0;o=f+(j<<2)|0;n=n<<8&65280|d[e+(j+i)>>0]<<24|p+128+n&255|m+128+n<<16&16711680;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){p=b+2|0;o=a[b>>0]|0;a[b>>0]=a[p>>0]|0;a[p>>0]=o;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function Oe(a){a=a|0;var b=0,d=0;c[a>>2]=36664;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function Pe(a){a=a|0;var b=0,d=0;c[a>>2]=36664;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Qe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;Ue(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;Ue(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function Re(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Se(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{Te(a,f,b,d,e);return}}function Se(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=b+4|0;i=c[k>>2]|0;if(!(a[i+32>>0]|0))k=e;else{j=b+8|0;lw(c[j>>2]|0,e|0,g*3|0)|0;i=c[k>>2]|0;e=c[i+16>>2]|0;if((g|0)>0){i=c[j>>2]|0;b=0;while(1){l=i+2|0;m=a[i>>0]|0;a[i>>0]=a[l>>0]|0;a[l>>0]=m;b=b+1|0;if((b|0)==(g|0))break;else i=i+e|0}i=c[k>>2]|0}k=c[j>>2]|0}switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{e=d[k+(i*3|0)>>0]|0;h=a[k+(i*3|0)+1>>0]|0;j=h&255;l=(d[k+(i*3|0)+2>>0]|0)+128-((j+e|0)>>>1)&255;m=f+(i*3|0)|0;a[m>>0]=e+128-j;a[m+1>>0]=h;a[m+2>>0]=l;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=0;do{l=a[k+(e*3|0)+1>>0]|0;j=d[k+(e*3|0)>>0]|0;g=l&255;m=(d[k+(e*3|0)+2>>0]|0)+128-((g+j|0)>>>1)&255;a[f+e>>0]=j+128-g;a[f+(e+h)>>0]=l;a[f+(e+b)>>0]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=h*3|0;j=0;do{g=a[k+(j<<2)+1>>0]|0;m=a[k+(j<<2)+3>>0]|0;o=d[k+(j<<2)>>0]|0;n=g&255;l=(d[k+(j<<2)+2>>0]|0)+128-((n+o|0)>>>1)&255;a[f+j>>0]=o+128-n;a[f+(j+h)>>0]=g;a[f+(j+b)>>0]=l;a[f+(j+e)>>0]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function Te(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;Se(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){Se(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do{if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}while(0);s=h;fn(e);Ya(s|0)}function Ue(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=b+4|0;b=c[l>>2]|0;a:do{switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=a[e+(b*3|0)+1>>0]|0;k=j&255;i=(d[e+(b*3|0)>>0]|0)+128+k|0;k=(d[e+(b*3|0)+2>>0]|0)+128+(((i&255)+k|0)>>>1)&255;h=f+(b*3|0)|0;a[h>>0]=i;a[h+1>>0]=j;a[h+2>>0]=k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=a[e+(j+h)>>0]|0;m=n&255;o=(d[e+j>>0]|0)+128+m|0;m=(d[e+(j+i)>>0]|0)+128+(((o&255)+m|0)>>>1)&255;k=f+(j*3|0)|0;a[k>>0]=o;a[k+1>>0]=n;a[k+2>>0]=m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{n=d[e+(j+h)>>0]|0;m=(d[e+j>>0]|0)+128+n&255;o=f+(j<<2)|0;n=m|n<<8|d[e+(j+i)>>0]<<24|(d[e+(j+b)>>0]|0)+128+((m+n|0)>>>1)<<16&16711680;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){o=b+2|0;n=a[b>>0]|0;a[b>>0]=a[o>>0]|0;a[o>>0]=n;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function Ve(a){a=a|0;var b=0,d=0;c[a>>2]=36688;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function We(a){a=a|0;var b=0,d=0;c[a>>2]=36688;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function Xe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;$e(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;$e(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function Ye(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;Ze(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{_e(a,f,b,d,e);return}}function Ze(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;k=b+4|0;i=c[k>>2]|0;if(!(a[i+32>>0]|0))k=e;else{j=b+8|0;lw(c[j>>2]|0,e|0,g*3|0)|0;i=c[k>>2]|0;e=c[i+16>>2]|0;if((g|0)>0){i=c[j>>2]|0;b=0;while(1){l=i+2|0;m=a[i>>0]|0;a[i>>0]=a[l>>0]|0;a[l>>0]=m;b=b+1|0;if((b|0)==(g|0))break;else i=i+e|0}i=c[k>>2]|0}k=c[j>>2]|0}switch(c[i+16>>2]|0){case 3:{if((c[i+24>>2]|0)==2){if((g|0)>0)i=0;else return;do{h=a[k+(i*3|0)+1>>0]|0;j=h&255;l=128-j+(d[k+(i*3|0)+2>>0]|0)&255;m=f+(i*3|0)|0;a[m>>0]=(d[k+(i*3|0)>>0]|0)+128-j;a[m+1>>0]=h;a[m+2>>0]=l;i=i+1|0}while((i|0)!=(g|0));return}i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=0;do{l=a[k+(e*3|0)+1>>0]|0;g=l&255;m=128-g+(d[k+(e*3|0)+2>>0]|0)&255;a[f+e>>0]=(d[k+(e*3|0)>>0]|0)+128-g;a[f+(e+h)>>0]=l;a[f+(e+b)>>0]=m;e=e+1|0}while((e|0)!=(i|0));return}case 4:{if((c[i+24>>2]|0)!=1)return;i=(h|0)<(g|0)?h:g;if((i|0)<=0)return;b=h<<1;e=h*3|0;j=0;do{g=a[k+(j<<2)+1>>0]|0;m=a[k+(j<<2)+3>>0]|0;n=g&255;l=128-n+(d[k+(j<<2)+2>>0]|0)&255;a[f+j>>0]=(d[k+(j<<2)>>0]|0)+128-n;a[f+(j+h)>>0]=g;a[f+(j+b)>>0]=l;a[f+(j+e)>>0]=m;j=j+1|0}while((j|0)!=(i|0));return}default:return}}function _e(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;Ze(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){Ze(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do{if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}while(0);s=h;fn(e);Ya(s|0)}function $e(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=b+4|0;b=c[l>>2]|0;a:do{switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=a[e+(b*3|0)+1>>0]|0;i=j&255;k=i+128+(d[e+(b*3|0)+2>>0]|0)&255;h=f+(b*3|0)|0;a[h>>0]=(d[e+(b*3|0)>>0]|0)+128+i;a[h+1>>0]=j;a[h+2>>0]=k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=a[e+(j+h)>>0]|0;o=n&255;m=o+128+(d[e+(j+i)>>0]|0)&255;k=f+(j*3|0)|0;a[k>>0]=(d[e+j>>0]|0)+128+o;a[k+1>>0]=n;a[k+2>>0]=m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{n=d[e+(j+h)>>0]|0;o=f+(j<<2)|0;n=(d[e+j>>0]|0)+128+n&255|n<<8|d[e+(j+i)>>0]<<24|n+128+(d[e+(j+b)>>0]|0)<<16&16711680;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){o=b+2|0;n=a[b>>0]|0;a[b>>0]=a[o>>0]|0;a[o>>0]=n;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function af(a){a=a|0;var b=0,d=0;c[a>>2]=36712;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=c[a+8>>2]|0;if(!d)return;b=a+12|0;if((c[b>>2]|0)!=(d|0))c[b>>2]=d;cj(d);return}function bf(a){a=a|0;var b=0,d=0;c[a>>2]=36712;b=c[a+20>>2]|0;if(b){d=a+24|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}b=c[a+8>>2]|0;if(!b){cj(a);return}d=a+12|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b);cj(a);return}function cf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=b+36|0;if(!(c[g>>2]|0)){g=b+40|0;gf(b,d,c[g>>2]|0,e,f);c[g>>2]=(c[g>>2]|0)+(c[(c[b+4>>2]|0)+12>>2]|0);return}h=$(c[(c[b+4>>2]|0)+16>>2]|0,e)|0;i=b+20|0;gf(b,d,c[i>>2]|0,e,f);b=c[g>>2]|0;if((Gb[c[(c[b>>2]|0)+48>>2]&63](b,c[i>>2]|0,h)|0)==(h|0))return;g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,3,35648);i=o;o=0;if(i&1){i=Na()|0;La(g|0);Ya(i|0)}else lb(g|0,824,96)}function df(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+36>>2]|0;if(!f){f=a+40|0;ef(a,c[f>>2]|0,b,d,e);c[f>>2]=(c[f>>2]|0)+(c[(c[a+4>>2]|0)+12>>2]|0);return}else{ff(a,f,b,d,e);return}}function ef(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=b+4|0;h=c[j>>2]|0;if(!(a[h+32>>0]|0))j=d;else{i=b+8|0;lw(c[i>>2]|0,d|0,f*3|0)|0;h=c[j>>2]|0;d=c[h+16>>2]|0;if((f|0)>0){h=c[i>>2]|0;b=0;while(1){k=h+2|0;l=a[h>>0]|0;a[h>>0]=a[k>>0]|0;a[k>>0]=l;b=b+1|0;if((b|0)==(f|0))break;else h=h+d|0}h=c[j>>2]|0}j=c[i>>2]|0}switch(c[h+16>>2]|0){case 3:{if((c[h+24>>2]|0)==2){if((f|0)>0)h=0;else return;do{g=a[j+(h*3|0)+1>>0]|0;k=a[j+(h*3|0)+2>>0]|0;l=e+(h*3|0)|0;a[l>>0]=a[j+(h*3|0)>>0]|0;a[l+1>>0]=g;a[l+2>>0]=k;h=h+1|0}while((h|0)!=(f|0));return}h=(g|0)<(f|0)?g:f;if((h|0)<=0)return;b=g<<1;d=0;do{k=a[j+(d*3|0)+1>>0]|0;l=a[j+(d*3|0)+2>>0]|0;a[e+d>>0]=a[j+(d*3|0)>>0]|0;a[e+(d+g)>>0]=k;a[e+(d+b)>>0]=l;d=d+1|0}while((d|0)!=(h|0));return}case 4:{if((c[h+24>>2]|0)!=1)return;h=(g|0)<(f|0)?g:f;if((h|0)<=0)return;b=g<<1;d=g*3|0;i=0;do{f=a[j+(i<<2)+1>>0]|0;k=a[j+(i<<2)+2>>0]|0;l=a[j+(i<<2)+3>>0]|0;a[e+i>>0]=a[j+(i<<2)>>0]|0;a[e+(i+g)>>0]=f;a[e+(i+b)>>0]=k;a[e+(i+d)>>0]=l;i=i+1|0}while((i|0)!=(h|0));return}default:return}}function ff(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;p=i;i=i+176|0;q=p+152|0;s=p+16|0;r=p;j=$(c[(c[b+4>>2]|0)+16>>2]|0,f)|0;l=b+20|0;h=c[l>>2]|0;if(!j){s=h;ef(b,s,e,f,g);i=p;return}while(1){k=Gb[c[(c[d>>2]|0)+32>>2]&63](d,h,j)|0;if(!k)break;h=c[l>>2]|0;if((j|0)==(k|0)){m=26;break}else j=j-k|0}if((m|0)==26){ef(b,h,e,f,g);i=p;return}e=s+56|0;l=s+4|0;c[s>>2]=36160;c[e>>2]=36180;o=0;ia(62,s+56|0,l|0);p=o;o=0;if(p&1){s=Na()|0;fn(e);Ya(s|0)}c[s+128>>2]=0;c[s+132>>2]=-1;c[s>>2]=36200;c[s+56>>2]=36220;o=0;ha(180,l|0);p=o;o=0;do{if(p&1)h=Na()|0;else{c[l>>2]=36236;d=s+36|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[s+52>>2]=16;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;o=0;ia(63,l|0,q|0);p=o;o=0;if(p&1){h=Na()|0;Im(q);Im(d);nn(l);break}Im(q);o=0;h=ma(28,s|0,49029,57)|0;q=o;o=0;if(!(q&1)?(o=0,ra(36,h|0,0)|0,q=o,o=0,!(q&1)):0){k=Ma(16)|0;o=0;ia(64,r|0,l|0);q=o;o=0;if(!(q&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,k|0,3,35648,r|0);q=o;o=0;if(q&1)j=1;else{o=0;wa(6,k|0,824,96);o=0;j=0}h=Na()|0;Im(r);if(!j){r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}else h=Na()|0;La(k|0);r=h;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}r=Na()|0;c[s>>2]=36200;c[e>>2]=36220;c[l>>2]=36236;Im(d);nn(l);fn(e);Ya(r|0)}}while(0);s=h;fn(e);Ya(s|0)}function gf(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;l=b+4|0;b=c[l>>2]|0;a:do{switch(c[b+16>>2]|0){case 3:{if((c[b+24>>2]|0)==2){if((g|0)>0)b=0;else break a;while(1){j=a[e+(b*3|0)+1>>0]|0;k=a[e+(b*3|0)+2>>0]|0;h=f+(b*3|0)|0;a[h>>0]=a[e+(b*3|0)>>0]|0;a[h+1>>0]=j;a[h+2>>0]=k;b=b+1|0;if((b|0)==(g|0))break a}}b=(g|0)<(h|0)?g:h;if((b|0)>0){i=h<<1;j=0;do{n=a[e+(j+h)>>0]|0;m=a[e+(j+i)>>0]|0;k=f+(j*3|0)|0;a[k>>0]=a[e+j>>0]|0;a[k+1>>0]=n;a[k+2>>0]=m;j=j+1|0}while((j|0)!=(b|0))}break}case 4:{if((c[b+24>>2]|0)==1?(k=(g|0)<(h|0)?g:h,(k|0)>0):0){b=h<<1;i=h*3|0;j=0;do{n=f+(j<<2)|0;m=d[e+(j+h)>>0]<<8|d[e+j>>0]|d[e+(j+b)>>0]<<16|d[e+(j+i)>>0]<<24;a[n>>0]=m;a[n+1>>0]=m>>8;a[n+2>>0]=m>>16;a[n+3>>0]=m>>24;j=j+1|0}while((j|0)!=(k|0))}break}default:{}}}while(0);b=c[l>>2]|0;if(!(a[b+32>>0]|0))return;j=c[b+16>>2]|0;if((g|0)>0){b=f;i=0}else return;while(1){n=b+2|0;m=a[b>>0]|0;a[b>>0]=a[n>>0]|0;a[n>>0]=m;i=i+1|0;if((i|0)==(g|0))break;else b=b+j|0}return}function hf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;w=u+12|0;t=u;q=b+180|0;r=(c[q>>2]|0)+4|0;if((c[b+32>>2]|0)==1)s=c[b+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do{if(d){if(!(d>>>0>1431655765?(o=0,ha(178,w|0),v=o,o=0,v&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[x>>2]|0)+3|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do{if(!s)h=19;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))h=17;if((h|0)==17?(f=s<<2,o=0,g=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=g;h=g+(s<<2)|0;c[t+8>>2]=h;iw(g|0,0,f|0)|0;c[v>>2]=h;h=19;break}f=Na()|0;d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((h|0)==19){g=b+12|0;b:do{if((c[g>>2]|0)>0){h=b+4604|0;j=($(s,r)|0)+1|0;k=b+4608|0;l=b+92|0;m=(s|0)>0;n=b+4600|0;p=0;c:while(1){f=c[w>>2]|0;d=f+3|0;c[h>>2]=d;e=f+(j*3|0)|0;c[k>>2]=e;if(!(p&1))d=j;else{c[h>>2]=e;c[k>>2]=d;d=1}e=c[l>>2]|0;o=0;Aa(c[(c[e>>2]|0)+12>>2]|0,e|0,f+(d*3|0)|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){h=29;break}if(m){d=c[t>>2]|0;e=c[h>>2]|0;f=0;do{c[n>>2]=c[d+(f<<2)>>2];y=c[q>>2]|0;d=e+(y*3|0)|0;e=e+((y+-1|0)*3|0)|0;a[d>>0]=a[e>>0]|0;a[d+1>>0]=a[e+1>>0]|0;a[d+2>>0]=a[e+2>>0]|0;d=c[h>>2]|0;e=(c[k>>2]|0)+-3|0;a[e>>0]=a[d>>0]|0;a[e+1>>0]=a[d+1>>0]|0;a[e+2>>0]=a[d+2>>0]|0;o=0;ia(70,b|0,0);e=o;o=0;if(e&1){h=28;break c}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[n>>2];e=(c[h>>2]|0)+(r*3|0)|0;c[h>>2]=e;c[k>>2]=(c[k>>2]|0)+(r*3|0);f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){h=41;break b}}if((h|0)==28){f=Na()|0;break}else if((h|0)==29){f=Na()|0;break}}else h=41}while(0);do{if((h|0)==41){o=0;ha(182,b|0);y=o;o=0;if(y&1){f=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=u;return}}while(0);d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function jf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=b+180|0;if((c[A>>2]|0)<=0)return;B=b+4608|0;C=b+4604|0;D=b+4612|0;z=0;while(1){w=z+-1|0;i=c[B>>2]|0;j=c[C>>2]|0;e=z+1|0;h=d[j+(z*3|0)>>0]|0;y=c[D>>2]|0;k=d[j+(w*3|0)>>0]|0;l=h-k|0;m=d[i+(w*3|0)>>0]|0;n=k-m|0;o=((((a[y+((d[j+(e*3|0)>>0]|0)-h)>>0]|0)*9|0)+(a[y+l>>0]|0)|0)*9|0)+(a[y+n>>0]|0)|0;g=d[j+(z*3|0)+1>>0]|0;p=d[j+(w*3|0)+1>>0]|0;q=g-p|0;r=d[i+(w*3|0)+1>>0]|0;s=p-r|0;t=((((a[y+((d[j+(e*3|0)+1>>0]|0)-g)>>0]|0)*9|0)+(a[y+q>>0]|0)|0)*9|0)+(a[y+s>>0]|0)|0;f=d[j+(z*3|0)+2>>0]|0;u=d[j+(w*3|0)+2>>0]|0;v=f-u|0;w=d[i+(w*3|0)+2>>0]|0;x=u-w|0;y=((((a[y+((d[j+(e*3|0)+2>>0]|0)-f)>>0]|0)*9|0)+(a[y+v>>0]|0)|0)*9|0)+(a[y+x>>0]|0)|0;if(!(t|o|y))e=(kf(b,z,0)|0)+z|0;else{j=d[i+(z*3|0)>>0]|0;i=h-m>>31;if((i^n|0)>=0)if((i^l|0)<0)h=m;else h=m-k+h|0;j=lf(b,o,j,h,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+1>>0]|0;h=g-r>>31;if((h^s|0)>=0)if((h^q|0)<0)g=r;else g=r-p+g|0;h=lf(b,t,i,g,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+2>>0]|0;g=f-w>>31;if((g^x|0)>=0)if((g^v|0)<0)f=w;else f=w-u+f|0;y=lf(b,y,i,f,0)|0;z=(c[B>>2]|0)+(z*3|0)|0;a[z>>0]=j;a[z+1>>0]=h;a[z+2>>0]=y}if((e|0)<(c[A>>2]|0))z=e;else break}return}function kf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=i;i=i+32|0;A=B+15|0;q=B+12|0;p=B+9|0;r=B+6|0;w=B+3|0;x=B;y=(c[b+180>>2]|0)-e|0;z=c[b+4608>>2]|0;s=c[b+4604>>2]|0;v=z+((e+-1|0)*3|0)|0;t=a[v>>0]|0;u=a[v+1>>0]|0;v=a[v+2>>0]|0;f=t&255;g=b+144|0;h=u&255;j=v&255;o=0;while(1){k=z+((o+e|0)*3|0)|0;l=k+1|0;m=k+2|0;C=(d[k>>0]|0)-f|0;n=c[g>>2]|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(d[l>>0]|0)-h|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;C=(d[m>>0]|0)-j|0;if((((C|0)>-1?C:0-C|0)|0)>(n|0))break;a[k>>0]=t;a[l>>0]=u;a[m>>0]=v;o=o+1|0;if((o|0)==(y|0)){o=y;break}}h=(o|0)==(y|0);j=b+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1< (o|0))f=o;else{f=o;do{ae(b,1,1);g=c[j>>2]|0;f=f-(1< >2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1< >0]=a[C>>0]|0;a[w+1>>0]=a[C+1>>0]|0;a[w+2>>0]=a[C+2>>0]|0;a[x>>0]=t;a[x+1>>0]=u;a[x+2>>0]=v;e=s+(e*3|0)|0;a[p>>0]=a[w>>0]|0;a[p+1>>0]=a[w+1>>0]|0;a[p+2>>0]=a[w+2>>0]|0;a[q>>0]=a[x>>0]|0;a[q+1>>0]=a[x+1>>0]|0;a[q+2>>0]=a[x+2>>0]|0;a[A>>0]=a[e>>0]|0;a[A+1>>0]=a[e+1>>0]|0;a[A+2>>0]=a[e+2>>0]|0;nf(r,b,p,q,A);a[C>>0]=a[r>>0]|0;a[C+1>>0]=a[r+1>>0]|0;a[C+2>>0]=a[r+2>>0]|0;C=c[j>>2]|0;c[j>>2]=(C|0)<1?0:C+-1|0;C=o+1|0;i=B;return C|0}if(!f){C=y;i=B;return C|0}ae(b,1,1);C=y;i=B;return C|0}function lf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d>>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i< >1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;mf(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&255;return r|0}r=g&~(d>>31);r=r&255;return r|0}function mf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>0]|0;p=o-(d[g>>0]|0)>>31|1;i=$(p,(d[f>>0]|0)-o|0)|0;m=e+144|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;w=e+140|0;l=c[w>>2]|0;k=((i|0)<0?l:0)+i|0;l=k-((k|0)<((l+1|0)/2|0|0)?0:l)|0;k=e+4576|0;of(e,k,l);t=d[h+1>>0]|0;u=t-(d[g+1>>0]|0)>>31|1;i=$(u,(d[f+1>>0]|0)-t|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;q=c[w>>2]|0;v=((i|0)<0?q:0)+i|0;q=v-((v|0)<((q+1|0)/2|0|0)?0:q)|0;of(e,k,q);v=d[h+2>>0]|0;s=v-(d[g+2>>0]|0)>>31|1;i=$(s,(d[f+2>>0]|0)-v|0)|0;j=c[m>>2]|0;if((i|0)>0)i=(i+j|0)/(j<<1|1|0)|0;else i=(i-j|0)/(j<<1|1|0)|0;n=c[w>>2]|0;i=((i|0)<0?n:0)+i|0;n=i-((i|0)<((n+1|0)/2|0|0)?0:n)|0;of(e,k,n);k=c[m>>2]|0;m=k<<1|1;i=($($(m,l)|0,p)|0)+o|0;f=0-k|0;if((i|0)>=(f|0)){j=c[r>>2]|0;if((j+k|0)<(i|0)){i=i-($(c[w>>2]|0,m)|0)|0;g=j}else g=j}else{i=($(c[w>>2]|0,m)|0)+i|0;g=c[r>>2]|0}if((i&g|0)!=(i|0))i=g&~(i>>31);h=i&255;i=($($(m,q)|0,u)|0)+t|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)!=(i|0))i=g&~(i>>31);j=i&255;i=($($(m,n)|0,s)|0)+v|0;if((i|0)>=(f|0)){if((g+k|0)<(i|0))i=i-($(c[w>>2]|0,m)|0)|0}else i=($(c[w>>2]|0,m)|0)+i|0;if((i&g|0)==(i|0)){w=i;w=w&255;a[b>>0]=h;v=b+1|0;a[v>>0]=j;b=b+2|0;a[b>>0]=w;return}w=g&~(i>>31);w=w&255;a[b>>0]=h;v=b+1|0;a[v>>0]=j;b=b+2|0;a[b>>0]=w;return}function of(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0 >>0:0)g=1;else k=5;do{if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;mf(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function pf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+144|0;a:do{if(!(c[o>>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1< >2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0}while(0);n=1< >2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0 >>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function qf(a){a=a|0;var b=0,d=0;c[a>>2]=35996;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function rf(a){a=a|0;var b=0,d=0;c[a>>2]=35996;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function sf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,65535,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;Bf(d);g=0;do{c[d+172+(g*12|0)>>2]=1024;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=1024;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=1024;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function tf(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35772;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];vf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;vf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function uf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function vf(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+32|0;x=v+12|0;u=v;r=a+156|0;s=(c[r>>2]|0)+4|0;if((c[a+32>>2]|0)==1)t=c[a+24>>2]|0;else t=1;d=$(t<<1,s)|0;c[x>>2]=0;y=x+4|0;c[y>>2]=0;c[x+8>>2]=0;do{if(d){if(!((d|0)<0?(o=0,ha(178,x|0),w=o,o=0,w&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,w=o,o=0,!(w&1)):0){c[x>>2]=f;w=f+(d<<1)|0;c[x+8>>2]=w;iw(f|0,0,e|0)|0;c[y>>2]=w;break}f=Na()|0;d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}}while(0);c[u>>2]=0;w=u+4|0;c[w>>2]=0;c[u+8>>2]=0;do{if(!t)j=18;else{if(!(t>>>0>1073741823?(o=0,ha(178,u|0),q=o,o=0,q&1):0))j=16;if((j|0)==16?(g=t<<2,o=0,h=ka(67,g|0)|0,q=o,o=0,!(q&1)):0){c[u>>2]=h;j=h+(t<<2)|0;c[u+8>>2]=j;iw(h|0,0,g|0)|0;c[w>>2]=j;j=18;break}f=Na()|0;d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((j|0)==18){h=a+12|0;a:do{if((c[h>>2]|0)>0){j=a+4580|0;k=($(t,s)|0)+1|0;l=a+4584|0;m=a+92|0;n=(t|0)>0;p=a+4576|0;q=0;b:while(1){e=c[x>>2]|0;d=e+2|0;c[j>>2]=d;e=e+(k<<1)|0;c[l>>2]=e;if(!(q&1))d=e;else{c[j>>2]=e;c[l>>2]=d}g=c[m>>2]|0;o=0;Aa(c[(c[g>>2]|0)+12>>2]|0,g|0,d|0,c[r>>2]|0,s|0);g=o;o=0;if(g&1){j=28;break}if(n){d=c[j>>2]|0;e=c[l>>2]|0;f=c[u>>2]|0;g=0;do{c[p>>2]=c[f+(g<<2)>>2];f=c[r>>2]|0;b[d+(f<<1)>>1]=b[d+(f+-1<<1)>>1]|0;b[e+-2>>1]=b[d>>1]|0;o=0;ia(71,a|0,0);f=o;o=0;if(f&1){j=27;break b}f=c[u>>2]|0;c[f+(g<<2)>>2]=c[p>>2];d=(c[j>>2]|0)+(s<<1)|0;c[j>>2]=d;e=(c[l>>2]|0)+(s<<1)|0;c[l>>2]=e;g=g+1|0}while((g|0)<(t|0))}q=q+1|0;if((q|0)>=(c[h>>2]|0)){j=40;break a}}if((j|0)==27){f=Na()|0;break}else if((j|0)==28){f=Na()|0;break}}else j=40}while(0);do{if((j|0)==40){o=0;ha(182,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[u>>2]|0;e=d;if(d){f=c[w>>2]|0;if((f|0)!=(d|0))c[w>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[x>>2]|0;if(!d){i=v;return}e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=v;return}}while(0);d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function wf(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4580|0;f=c[p>>2]|0;s=d+156|0;if((c[s>>2]|0)<=0)return;q=d+4584|0;r=d+4588|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(yf(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=xf(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function xf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i< >1]^q)-q+f|0;if((g&65535|0)==(g|0))m=g;else m=g>>31&65535^65535;j=(e-m^q)-q<<16;l=j>>16;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;f=g^l;f=f>>30^f<<1;g=f>>h;if((g|0)<47){if((g|0)>30){i=(g|0)/2|0;ae(a,0,i);g=g-i|0}ae(a,1,g+1|0);ae(a,f&(1< >1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-65536?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&65535;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&65535;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&65535;return d|0}function yf(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=(c[a+156>>2]|0)-d|0;k=c[a+4584>>2]|0;m=c[a+4580>>2]|0;h=b[k+(d+-1<<1)>>1]|0;g=0;while(1){f=k+(g+d<<1)|0;if((b[f>>1]|0)!=h<<16>>16){n=g;break}b[f>>1]=h;g=g+1|0;if((g|0)==(j|0)){n=j;break}}i=h&65535;h=(n|0)==(j|0);l=a+4576|0;g=c[36476+(c[l>>2]<<2)>>2]|0;if((1< (n|0))f=n;else{f=n;do{ae(a,1,1);g=c[l>>2]|0;f=f-(1< >2])|0;g=(g|0)>30?31:g+1|0;c[l>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1< >1]|0;f=e[m+(f<<1)>>1]|0;m=i-f|0;if((((m|0)>-1?m:0-m|0)|0)<1){f=g-i<<16>>16;zf(a,a+4564|0,f);f=f+i|0}else{m=f-i>>31|1;d=($(g-f<<16,m)|0)>>16;zf(a,a+4552|0,d);f=($(d,m)|0)+f|0}b[h>>1]=f;a=c[l>>2]|0;c[l>>2]=(a|0)<1?0:a+-1|0;a=n+1|0;return a|0}function zf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0 >>0:0)g=1;else k=5;do{if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;Af(b,h,g,63-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function Af(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-16|0;if((e|0)<(d+-17|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-47|0)}else ae(a,1,f);ae(a,c+65535&65535,16);return}function Bf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,65535,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8909]|0;c[b+4588>>2]=l+(((c[8910]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=131072){if(h>>>0>131072?(j=d+131072|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,131072-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+65536;j=b+168|0;g=b+164|0;h=-65536;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==65536)break}i=m;return}function Cf(a){a=a|0;var b=0,d=0;c[a>>2]=35968;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Df(a){a=a|0;var b=0,d=0;c[a>>2]=35968;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Ef(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,4095,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;Nf(d);g=0;do{c[d+172+(g*12|0)>>2]=64;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=64;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=64;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function Ff(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35744;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];Hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;Hf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function Gf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Hf(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;v=i;i=i+32|0;x=v+12|0;u=v;r=a+156|0;s=(c[r>>2]|0)+4|0;if((c[a+32>>2]|0)==1)t=c[a+24>>2]|0;else t=1;d=$(t<<1,s)|0;c[x>>2]=0;y=x+4|0;c[y>>2]=0;c[x+8>>2]=0;do{if(d){if(!((d|0)<0?(o=0,ha(178,x|0),w=o,o=0,w&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,w=o,o=0,!(w&1)):0){c[x>>2]=f;w=f+(d<<1)|0;c[x+8>>2]=w;iw(f|0,0,e|0)|0;c[y>>2]=w;break}f=Na()|0;d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}}while(0);c[u>>2]=0;w=u+4|0;c[w>>2]=0;c[u+8>>2]=0;do{if(!t)j=18;else{if(!(t>>>0>1073741823?(o=0,ha(178,u|0),q=o,o=0,q&1):0))j=16;if((j|0)==16?(g=t<<2,o=0,h=ka(67,g|0)|0,q=o,o=0,!(q&1)):0){c[u>>2]=h;j=h+(t<<2)|0;c[u+8>>2]=j;iw(h|0,0,g|0)|0;c[w>>2]=j;j=18;break}f=Na()|0;d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((j|0)==18){h=a+12|0;a:do{if((c[h>>2]|0)>0){j=a+4580|0;k=($(t,s)|0)+1|0;l=a+4584|0;m=a+92|0;n=(t|0)>0;p=a+4576|0;q=0;b:while(1){e=c[x>>2]|0;d=e+2|0;c[j>>2]=d;e=e+(k<<1)|0;c[l>>2]=e;if(!(q&1))d=e;else{c[j>>2]=e;c[l>>2]=d}g=c[m>>2]|0;o=0;Aa(c[(c[g>>2]|0)+12>>2]|0,g|0,d|0,c[r>>2]|0,s|0);g=o;o=0;if(g&1){j=28;break}if(n){d=c[j>>2]|0;e=c[l>>2]|0;f=c[u>>2]|0;g=0;do{c[p>>2]=c[f+(g<<2)>>2];f=c[r>>2]|0;b[d+(f<<1)>>1]=b[d+(f+-1<<1)>>1]|0;b[e+-2>>1]=b[d>>1]|0;o=0;ia(72,a|0,0);f=o;o=0;if(f&1){j=27;break b}f=c[u>>2]|0;c[f+(g<<2)>>2]=c[p>>2];d=(c[j>>2]|0)+(s<<1)|0;c[j>>2]=d;e=(c[l>>2]|0)+(s<<1)|0;c[l>>2]=e;g=g+1|0}while((g|0)<(t|0))}q=q+1|0;if((q|0)>=(c[h>>2]|0)){j=40;break a}}if((j|0)==27){f=Na()|0;break}else if((j|0)==28){f=Na()|0;break}}else j=40}while(0);do{if((j|0)==40){o=0;ha(182,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[u>>2]|0;e=d;if(d){f=c[w>>2]|0;if((f|0)!=(d|0))c[w>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[x>>2]|0;if(!d){i=v;return}e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=v;return}}while(0);d=c[u>>2]|0;e=d;if(d){g=c[w>>2]|0;if((g|0)!=(d|0))c[w>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[x>>2]|0;if(!d)Ya(f|0);e=c[y>>2]|0;if((e|0)!=(d|0))c[y>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function If(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4580|0;f=c[p>>2]|0;s=d+156|0;if((c[s>>2]|0)<=0)return;q=d+4584|0;r=d+4588|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(Kf(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=Jf(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function Jf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i< >1]^q)-q+f|0;if((g&4095|0)==(g|0))m=g;else m=g>>31&4095^4095;j=(e-m^q)-q<<20;l=j>>20;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;f=g^l;f=f>>30^f<<1;g=f>>h;if((g|0)<35){if((g|0)>30){i=(g|0)/2|0;ae(a,0,i);g=g-i|0}ae(a,1,g+1|0);ae(a,f&(1< >1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-1048576?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&4095;d=d&65535;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&4095;d=d&65535;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&4095;d=d&65535;return d|0}function Kf(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=(c[a+156>>2]|0)-d|0;k=c[a+4584>>2]|0;m=c[a+4580>>2]|0;h=b[k+(d+-1<<1)>>1]|0;g=0;while(1){f=k+(g+d<<1)|0;if((b[f>>1]|0)!=h<<16>>16){n=g;break}b[f>>1]=h;g=g+1|0;if((g|0)==(j|0)){n=j;break}}i=h&65535;h=(n|0)==(j|0);l=a+4576|0;g=c[36476+(c[l>>2]<<2)>>2]|0;if((1< (n|0))f=n;else{f=n;do{ae(a,1,1);g=c[l>>2]|0;f=f-(1< >2])|0;g=(g|0)>30?31:g+1|0;c[l>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1< >1]|0;f=e[m+(f<<1)>>1]|0;m=i-f|0;if((((m|0)>-1?m:0-m|0)|0)<1){f=g-i<<20>>20;Lf(a,a+4564|0,f);f=f+i|0}else{m=f-i>>31|1;d=($(g-f<<20,m)|0)>>20;Lf(a,a+4552|0,d);f=($(d,m)|0)+f|0}b[h>>1]=f&4095;a=c[l>>2]|0;c[l>>2]=(a|0)<1?0:a+-1|0;a=n+1|0;return a|0}function Lf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0 >>0:0)g=1;else k=5;do{if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;Mf(b,h,g,47-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-12|0;if((e|0)<(d+-13|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-43|0)}else ae(a,1,f);ae(a,c+4095&4095,12);return}function Nf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,4095,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8906]|0;c[b+4588>>2]=l+(((c[8907]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=8192){if(h>>>0>8192?(j=d+8192|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,8192-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+4096;j=b+168|0;g=b+164|0;h=-4096;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==4096)break}i=m;return}function Of(a){a=a|0;var b=0,d=0;c[a>>2]=35940;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Pf(a){a=a|0;var b=0,d=0;c[a>>2]=35940;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Qf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;Zf(d);g=0;do{c[d+172+(g*12|0)>>2]=4;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=4;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=4;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function Rf(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35716;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];Tf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;Tf(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function Sf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Tf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;u=i;i=i+32|0;w=u+12|0;t=u;q=b+156|0;r=(c[q>>2]|0)+4|0;if((c[b+32>>2]|0)==1)s=c[b+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do{if(d){if(!((d|0)<0?(o=0,ha(178,w|0),v=o,o=0,v&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[x>>2]|0)+1|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do{if(!s)h=19;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))h=17;if((h|0)==17?(f=s<<2,o=0,g=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=g;h=g+(s<<2)|0;c[t+8>>2]=h;iw(g|0,0,f|0)|0;c[v>>2]=h;h=19;break}e=Na()|0;d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}}while(0);if((h|0)==19){g=b+12|0;b:do{if((c[g>>2]|0)>0){h=b+4580|0;j=($(s,r)|0)+1|0;k=b+4584|0;l=b+92|0;m=(s|0)>0;n=b+4576|0;p=0;c:while(1){e=c[w>>2]|0;d=e+1|0;c[h>>2]=d;e=e+j|0;c[k>>2]=e;if(!(p&1))d=e;else{c[h>>2]=e;c[k>>2]=d}f=c[l>>2]|0;o=0;Aa(c[(c[f>>2]|0)+12>>2]|0,f|0,d|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){h=29;break}if(m){d=c[h>>2]|0;e=c[t>>2]|0;f=0;do{c[n>>2]=c[e+(f<<2)>>2];e=c[q>>2]|0;a[d+e>>0]=a[d+(e+-1)>>0]|0;a[(c[k>>2]|0)+-1>>0]=a[c[h>>2]>>0]|0;o=0;ia(73,b|0,0);e=o;o=0;if(e&1){h=28;break c}e=c[t>>2]|0;c[e+(f<<2)>>2]=c[n>>2];d=(c[h>>2]|0)+r|0;c[h>>2]=d;c[k>>2]=(c[k>>2]|0)+r;f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){h=41;break b}}if((h|0)==28){e=Na()|0;break}else if((h|0)==29){e=Na()|0;break}}else h=41}while(0);do{if((h|0)==41){o=0;ha(182,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);i=u;return}}while(0);d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}function Uf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=b+4580|0;e=c[o>>2]|0;r=b+156|0;if((c[r>>2]|0)<=0)return;p=b+4584|0;q=b+4588|0;h=e;i=d[e+-1>>0]|0;e=d[e>>0]|0;n=0;while(1){m=c[p>>2]|0;l=d[m+(n+-1)>>0]|0;g=n+1|0;f=d[h+g>>0]|0;k=c[q>>2]|0;j=e-i|0;h=i-l|0;k=((((a[k+(f-e)>>0]|0)*9|0)+(a[k+j>>0]|0)|0)*9|0)+(a[k+h>>0]|0)|0;if(!k){g=(Wf(b,n,0)|0)+n|0;f=c[o>>2]|0;e=d[f+(g+-1)>>0]|0;f=d[f+g>>0]|0}else{i=e-l>>31;if((i^h|0)<0)h=e;else h=l+((i^j|0)<0?0:j)|0;m=Vf(b,k,d[m+n>>0]|0,h,0)|0;a[(c[p>>2]|0)+n>>0]=m}if((g|0)>=(c[r>>2]|0))break;h=c[o>>2]|0;i=e;e=f;n=g}return}function Vf(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i< >1]^q)-q+f|0;if((g&255|0)==(g|0))m=g;else m=g>>31&255^255;j=(e-m^q)-q<<24;l=j>>24;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;g=g^l;g=g>>30^g<<1;f=g>>h;if((f|0)<23){ae(a,1,f+1|0);ae(a,g&(1< >1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-16777216?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}function Wf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=(c[b+156>>2]|0)-e|0;k=c[b+4584>>2]|0;m=c[b+4580>>2]|0;h=a[k+(e+-1)>>0]|0;g=0;while(1){f=k+(g+e)|0;if((a[f>>0]|0)!=h<<24>>24){n=g;break}a[f>>0]=h;g=g+1|0;if((g|0)==(j|0)){n=j;break}}i=h&255;h=(n|0)==(j|0);l=b+4576|0;g=c[36476+(c[l>>2]<<2)>>2]|0;if((1< (n|0))f=n;else{f=n;do{ae(b,1,1);g=c[l>>2]|0;f=f-(1< >2])|0;g=(g|0)>30?31:g+1|0;c[l>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1< >0]|0;f=d[m+f>>0]|0;m=i-f|0;if((((m|0)>-1?m:0-m|0)|0)<1){f=g-i<<24>>24;Xf(b,b+4564|0,f);f=f+i|0}else{m=f-i>>31|1;e=($(g-f<<24,m)|0)>>24;Xf(b,b+4552|0,e);f=($(e,m)|0)+f|0}a[h>>0]=f;b=c[l>>2]|0;c[l>>2]=(b|0)<1?0:b+-1|0;b=n+1|0;return b|0}function Xf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0 >>0:0)g=1;else k=5;do{if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;Yf(b,h,g,31-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function Yf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-8|0;if((e|0)<(d+-9|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-39|0)}else ae(a,1,f);ae(a,c+255&255,8);return}function Zf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8900]|0;c[b+4588>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+256;j=b+168|0;g=b+164|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function _f(a){a=a|0;var b=0,d=0;c[a>>2]=35912;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function $f(a){a=a|0;var b=0,d=0;c[a>>2]=35912;b=c[a+4592>>2]|0;if(b){d=a+4596|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function ag(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+160>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+164>>2]=j;c[d+168>>2]=g;jg(d);g=0;do{c[d+172+(g*12|0)>>2]=4;c[d+172+(g*12|0)+4>>2]=0;b[d+172+(g*12|0)+8>>1]=0;b[d+172+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4552>>2]=4;c[d+4556>>2]=0;a[d+4560>>0]=l;a[d+4561>>0]=1;a[d+4562>>0]=0;c[d+4564>>2]=4;c[d+4568>>2]=1;a[d+4572>>0]=l;a[d+4573>>0]=1;a[d+4574>>0]=0;c[d+4576>>2]=0;i=h;return}function bg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4600)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35688;h=e+132|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+148>>2]=c[g>>2];c[e+152>>2]=0;c[e+156>>2]=0;c[e+160>>2]=0;h=e+4544|0;g=e+164|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4556|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4568|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];dg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;dg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function dg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=i;i=i+32|0;w=u+12|0;t=u;q=b+156|0;r=(c[q>>2]|0)+4|0;if((c[b+32>>2]|0)==1)s=c[b+24>>2]|0;else s=1;d=$(s<<1,r)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do{if(d){if(!(d>>>0>1431655765?(o=0,ha(178,w|0),v=o,o=0,v&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[x>>2]|0)+3|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do{if(!s)h=19;else{if(!(s>>>0>1073741823?(o=0,ha(178,t|0),p=o,o=0,p&1):0))h=17;if((h|0)==17?(f=s<<2,o=0,g=ka(67,f|0)|0,p=o,o=0,!(p&1)):0){c[t>>2]=g;h=g+(s<<2)|0;c[t+8>>2]=h;iw(g|0,0,f|0)|0;c[v>>2]=h;h=19;break}f=Na()|0;d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((h|0)==19){g=b+12|0;b:do{if((c[g>>2]|0)>0){h=b+4580|0;j=($(s,r)|0)+1|0;k=b+4584|0;l=b+92|0;m=(s|0)>0;n=b+4576|0;p=0;c:while(1){f=c[w>>2]|0;d=f+3|0;c[h>>2]=d;e=f+(j*3|0)|0;c[k>>2]=e;if(!(p&1))d=j;else{c[h>>2]=e;c[k>>2]=d;d=1}e=c[l>>2]|0;o=0;Aa(c[(c[e>>2]|0)+12>>2]|0,e|0,f+(d*3|0)|0,c[q>>2]|0,r|0);f=o;o=0;if(f&1){h=29;break}if(m){d=c[t>>2]|0;e=c[h>>2]|0;f=0;do{c[n>>2]=c[d+(f<<2)>>2];y=c[q>>2]|0;d=e+(y*3|0)|0;e=e+((y+-1|0)*3|0)|0;a[d>>0]=a[e>>0]|0;a[d+1>>0]=a[e+1>>0]|0;a[d+2>>0]=a[e+2>>0]|0;d=c[h>>2]|0;e=(c[k>>2]|0)+-3|0;a[e>>0]=a[d>>0]|0;a[e+1>>0]=a[d+1>>0]|0;a[e+2>>0]=a[d+2>>0]|0;o=0;ia(74,b|0,0);e=o;o=0;if(e&1){h=28;break c}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[n>>2];e=(c[h>>2]|0)+(r*3|0)|0;c[h>>2]=e;c[k>>2]=(c[k>>2]|0)+(r*3|0);f=f+1|0}while((f|0)<(s|0))}p=p+1|0;if((p|0)>=(c[g>>2]|0)){h=41;break b}}if((h|0)==28){f=Na()|0;break}else if((h|0)==29){f=Na()|0;break}}else h=41}while(0);do{if((h|0)==41){o=0;ha(182,b|0);y=o;o=0;if(y&1){f=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=u;return}}while(0);d=c[t>>2]|0;e=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(f|0);e=c[x>>2]|0;if((e|0)!=(d|0))c[x>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=b+156|0;if((c[A>>2]|0)<=0)return;B=b+4584|0;C=b+4580|0;D=b+4588|0;z=0;while(1){w=z+-1|0;i=c[B>>2]|0;j=c[C>>2]|0;e=z+1|0;h=d[j+(z*3|0)>>0]|0;y=c[D>>2]|0;k=d[j+(w*3|0)>>0]|0;l=h-k|0;m=d[i+(w*3|0)>>0]|0;n=k-m|0;o=((((a[y+((d[j+(e*3|0)>>0]|0)-h)>>0]|0)*9|0)+(a[y+l>>0]|0)|0)*9|0)+(a[y+n>>0]|0)|0;g=d[j+(z*3|0)+1>>0]|0;p=d[j+(w*3|0)+1>>0]|0;q=g-p|0;r=d[i+(w*3|0)+1>>0]|0;s=p-r|0;t=((((a[y+((d[j+(e*3|0)+1>>0]|0)-g)>>0]|0)*9|0)+(a[y+q>>0]|0)|0)*9|0)+(a[y+s>>0]|0)|0;f=d[j+(z*3|0)+2>>0]|0;u=d[j+(w*3|0)+2>>0]|0;v=f-u|0;w=d[i+(w*3|0)+2>>0]|0;x=u-w|0;y=((((a[y+((d[j+(e*3|0)+2>>0]|0)-f)>>0]|0)*9|0)+(a[y+v>>0]|0)|0)*9|0)+(a[y+x>>0]|0)|0;if(!(t|o|y))e=(fg(b,z,0)|0)+z|0;else{j=d[i+(z*3|0)>>0]|0;i=h-m>>31;if((i^n|0)>=0)if((i^l|0)<0)h=m;else h=m-k+h|0;j=gg(b,o,j,h,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+1>>0]|0;h=g-r>>31;if((h^s|0)>=0)if((h^q|0)<0)g=r;else g=r-p+g|0;h=gg(b,t,i,g,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+2>>0]|0;g=f-w>>31;if((g^x|0)>=0)if((g^v|0)<0)f=w;else f=w-u+f|0;y=gg(b,y,i,f,0)|0;z=(c[B>>2]|0)+(z*3|0)|0;a[z>>0]=j;a[z+1>>0]=h;a[z+2>>0]=y}if((e|0)<(c[A>>2]|0))z=e;else break}return}function fg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=(c[b+156>>2]|0)-e|0;n=c[b+4584>>2]|0;o=c[b+4580>>2]|0;l=n+((e+-1|0)*3|0)|0;p=a[l>>0]|0;k=a[l+1>>0]|0;l=a[l+2>>0]|0;i=0;while(1){f=n+((i+e|0)*3|0)|0;g=f+1|0;h=f+2|0;if(!(((a[f>>0]|0)==p<<24>>24?(a[g>>0]|0)==k<<24>>24:0)&(a[h>>0]|0)==l<<24>>24))break;a[f>>0]=p;a[g>>0]=k;a[h>>0]=l;i=i+1|0;if((i|0)==(m|0)){i=m;break}}h=(i|0)==(m|0);j=b+4576|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1< (i|0))f=i;else{f=i;do{ae(b,1,1);g=c[j>>2]|0;f=f-(1< >2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1< >0]|0;e=m+2|0;f=a[e>>0]|0;o=o+(q*3|0)|0;q=a[o+1>>0]|0;t=a[o+2>>0]|0;o=d[o>>0]|0;h=o-(p&255)>>31|1;g=($((d[m>>0]|0)-o<<24,h)|0)>>24;s=b+4552|0;hg(b,s,g);p=q&255;q=p-(k&255)>>31|1;r=($((r&255)-p<<24,q)|0)>>24;hg(b,s,r);k=t&255;l=k-(l&255)>>31|1;f=($((f&255)-k<<24,l)|0)>>24;hg(b,s,f);p=($(r,q)|0)+p&255;b=($(f,l)|0)+k&255;a[m>>0]=($(g,h)|0)+o;a[n>>0]=p;a[e>>0]=b;b=c[j>>2]|0;c[j>>2]=(b|0)<1?0:b+-1|0;b=i+1|0;return b|0}if(!f){t=m;return t|0}ae(b,1,1);t=m;return t|0}function gg(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=d>>31;k=(q^d)-q|0;p=a+172+(k*12|0)+10|0;i=b[p>>1]|0;o=a+172+(k*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){h=5;while(1)if((i< >1]^q)-q+f|0;if((g&255|0)==(g|0))m=g;else m=g>>31&255^255;j=(e-m^q)-q<<24;l=j>>24;if(!h)g=(c[a+172+(k*12|0)+4>>2]<<1)+-1+i>>31;else g=0;g=g^l;g=g>>30^g<<1;f=g>>h;if((f|0)<23){ae(a,1,f+1|0);ae(a,g&(1< >1]|0;g=i<<16>>16==64;h=g&1;e=(c[f>>2]|0)+l>>h;i=g?32:i<<16>>16;c[o>>2]=(c[o>>2]|0)+((j|0)>-16777216?l:0-l|0)>>h;h=i+1|0;b[p>>1]=h;g=h+e|0;if((g|0)<1){p=b[n>>1]|0;b[n>>1]=(p&65535)-(p<<16>>16>-128&1);p=(g|0)>(~i|0)?g:0-i|0;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}if((e|0)<=0){p=e;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}p=e-h|0;o=b[n>>1]|0;b[n>>1]=(o<<16>>16<127&1)+(o&65535);p=(p|0)>0?0:p;c[f>>2]=p;q=l^q;d=d>>>31;d=m+d|0;d=d+q|0;d=d&255;return d|0}function hg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0 >>0:0)g=1;else k=5;do{if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;ig(b,h,g,31-(c[36476+(c[b+4576>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function ig(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c>>b;f=d+-8|0;if((e|0)<(d+-9|0)){if((e|0)>30){d=(e|0)/2|0;ae(a,0,d);e=e-d|0}ae(a,1,e+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,d+-39|0)}else ae(a,1,f);ae(a,c+255&255,8);return}function jg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+160|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+164>>2]|0):0)?(c[k+12>>2]|0)==(c[b+168>>2]|0):0){l=c[8900]|0;c[b+4588>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4592|0;f=b+4596|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4588|0;c[k>>2]=d+256;j=b+168|0;g=b+164|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function kg(a){a=a|0;var b=0,d=0;c[a>>2]=35884;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);a=a+4|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function lg(a){a=a|0;var b=0,d=0;c[a>>2]=35884;b=c[a+4616>>2]|0;if(b){d=a+4620|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36612;b=c[a+120>>2]|0;if(b){d=a+124|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+92|0;b=c[d>>2]|0;c[d>>2]=0;if(b)Bb[c[(c[b>>2]|0)+4>>2]&255](b);d=a+4|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function mg(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+136>>2]|0,c[d+144>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+184>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+188>>2]=j;c[d+192>>2]=h;wg(d);h=d+140|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+196+(j*12|0)>>2]=e;c[d+196+(j*12|0)+4>>2]=0;b[d+196+(j*12|0)+8>>1]=0;b[d+196+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4576>>2]=l;c[d+4580>>2]=0;a[d+4584>>0]=m;a[d+4585>>0]=1;a[d+4586>>0]=0;c[d+4588>>2]=l;c[d+4592>>2]=1;a[d+4596>>0]=m;a[d+4597>>0]=1;a[d+4598>>0]=0;c[d+4600>>2]=0;i=k;return}function ng(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;m=o;l=d+92|0;k=c[e>>2]|0;c[e>>2]=0;e=c[l>>2]|0;c[l>>2]=k;if(e)Bb[c[(c[e>>2]|0)+4>>2]&255](e);c[m>>2]=0;c[m+4>>2]=g;l=f+8|0;c[m+8>>2]=c[l>>2];if(g){e=bj(4624)|0;g=d+8|0;h=e+4|0;j=g;k=h+84|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));h=e+88|0;k=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(k|0));c[e>>2]=35660;c[e+128>>2]=c[d+136>>2];c[e+132>>2]=c[d+140>>2];c[e+136>>2]=c[d+144>>2];c[e+140>>2]=c[d+148>>2];c[e+144>>2]=c[d+152>>2];c[e+148>>2]=c[d+156>>2];c[e+152>>2]=c[d+160>>2];h=e+156|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e+172>>2]=c[g>>2];c[e+176>>2]=0;c[e+180>>2]=0;c[e+184>>2]=0;h=e+4568|0;g=e+188|0;do{c[g>>2]=0;c[g+4>>2]=0;b[g+8>>1]=0;b[g+10>>1]=1;g=g+12|0}while((g|0)!=(h|0));j=d+4|0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;a[h+10>>0]=0;k=e+4580|0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;k=e+4592|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;a[k+28>>0]=0;if(!(c[e+28>>2]|0))c[e+20>>2]=1;g=c[j>>2]|0;c[j>>2]=e;if(g){Bb[c[(c[g>>2]|0)+4>>2]&255](g);e=c[j>>2]|0}Wd(e,m)}m=d+100|0;c[m>>2]=32;c[d+96>>2]=0;e=c[f>>2]|0;if(!e){c[d+108>>2]=c[f+4>>2];c[d+104>>2]=c[l>>2];pg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}c[d+132>>2]=e;h=d+120|0;l=d+124|0;g=c[l>>2]|0;e=c[h>>2]|0;j=e;k=g-j|0;if(k>>>0>=4e3){if(k>>>0>4e3?(n=e+4e3|0,(g|0)!=(n|0)):0){c[l>>2]=n;g=n}}else{Xd(h,4e3-k|0);e=c[h>>2]|0;j=e;g=c[l>>2]|0}c[d+108>>2]=j;c[d+104>>2]=g-e;pg(d);n=d+116|0;n=c[n>>2]|0;d=c[m>>2]|0;d=d+-32|0;d=(d|0)/8|0;d=n-d|0;i=o;return d|0}function og(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+32>>2]|0)!=0?(c[b+24>>2]|0)!=1:0){s=b+8|0;u=b+36|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+16>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+20>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function pg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;u=i;i=i+32|0;w=u+12|0;t=u;r=b+180|0;s=(c[r>>2]|0)+4|0;if((c[b+32>>2]|0)==1)p=c[b+24>>2]|0;else p=1;d=$(p<<1,s)|0;c[w>>2]=0;x=w+4|0;c[x>>2]=0;c[w+8>>2]=0;a:do{if(d){if(!((d|0)<0?(o=0,ha(178,w|0),v=o,o=0,v&1):0))q=6;if((q|0)==6?(o=0,e=ka(67,d|0)|0,v=o,o=0,!(v&1)):0){c[x>>2]=e;c[w>>2]=e;c[w+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[x>>2]|0)+1|0;c[x>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}}while(0);c[t>>2]=0;v=t+4|0;c[v>>2]=0;c[t+8>>2]=0;do{if(!p)q=19;else{if(!(p>>>0>1073741823?(o=0,ha(178,t|0),n=o,o=0,n&1):0))q=17;if((q|0)==17?(f=p<<2,o=0,g=ka(67,f|0)|0,n=o,o=0,!(n&1)):0){c[t>>2]=g;q=g+(p<<2)|0;c[t+8>>2]=q;iw(g|0,0,f|0)|0;c[v>>2]=q;q=19;break}e=Na()|0;d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}}while(0);if((q|0)==19){j=b+12|0;b:do{if((c[j>>2]|0)>0){k=b+4604|0;l=($(p,s)|0)+1|0;m=b+4608|0;n=b+92|0;h=b+4600|0;if((p|0)>0)g=0;else{f=0;while(1){e=c[w>>2]|0;d=e+1|0;c[k>>2]=d;e=e+l|0;c[m>>2]=e;if(!(f&1))d=e;else{c[k>>2]=e;c[m>>2]=d}p=c[n>>2]|0;o=0;Aa(c[(c[p>>2]|0)+12>>2]|0,p|0,d|0,c[r>>2]|0,s|0);p=o;o=0;if(p&1)break;f=f+1|0;if((f|0)>=(c[j>>2]|0)){q=45;break b}}e=Na()|0;break}c:while(1){e=c[w>>2]|0;d=e+1|0;c[k>>2]=d;e=e+l|0;c[m>>2]=e;if(!(g&1))d=e;else{c[k>>2]=e;c[m>>2]=d}q=c[n>>2]|0;o=0;Aa(c[(c[q>>2]|0)+12>>2]|0,q|0,d|0,c[r>>2]|0,s|0);q=o;o=0;if(q&1){q=28;break}d=c[t>>2]|0;e=c[k>>2]|0;f=0;do{c[h>>2]=c[d+(f<<2)>>2];q=c[r>>2]|0;a[e+q>>0]=a[e+(q+-1)>>0]|0;a[(c[m>>2]|0)+-1>>0]=a[c[k>>2]>>0]|0;o=0;ia(75,b|0,0);q=o;o=0;if(q&1){q=36;break c}d=c[t>>2]|0;c[d+(f<<2)>>2]=c[h>>2];e=(c[k>>2]|0)+s|0;c[k>>2]=e;c[m>>2]=(c[m>>2]|0)+s;f=f+1|0}while((f|0)<(p|0));g=g+1|0;if((g|0)>=(c[j>>2]|0)){q=45;break b}}if((q|0)==28){e=Na()|0;break}else if((q|0)==36){e=Na()|0;break}}else q=45}while(0);do{if((q|0)==45){o=0;ha(182,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[t>>2]|0;e=d;if(d){f=c[v>>2]|0;if((f|0)!=(d|0))c[v>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[w>>2]|0;if(!d){i=u;return}if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);i=u;return}}while(0);d=c[t>>2]|0;f=d;if(d){g=c[v>>2]|0;if((g|0)!=(d|0))c[v>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[w>>2]|0;if(!d)Ya(e|0);if((c[x>>2]|0)!=(d|0))c[x>>2]=d;cj(d);Ya(e|0)}function qg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=b+4604|0;e=c[o>>2]|0;r=b+180|0;if((c[r>>2]|0)<=0)return;p=b+4608|0;q=b+4612|0;h=e;i=d[e+-1>>0]|0;e=d[e>>0]|0;n=0;while(1){m=c[p>>2]|0;l=d[m+(n+-1)>>0]|0;g=n+1|0;f=d[h+g>>0]|0;k=c[q>>2]|0;j=e-i|0;h=i-l|0;k=((((a[k+(f-e)>>0]|0)*9|0)+(a[k+j>>0]|0)|0)*9|0)+(a[k+h>>0]|0)|0;if(!k){g=(sg(b,n,0)|0)+n|0;f=c[o>>2]|0;e=d[f+(g+-1)>>0]|0;f=d[f+g>>0]|0}else{i=e-l>>31;if((i^h|0)<0)h=e;else h=l+((i^j|0)<0?0:j)|0;m=rg(b,k,d[m+n>>0]|0,h,0)|0;a[(c[p>>2]|0)+n>>0]=m}if((g|0)>=(c[r>>2]|0))break;h=c[o>>2]|0;i=e;e=f;n=g}return}function rg(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=d>>31;h=(r^d)-r|0;p=a+196+(h*12|0)+10|0;i=b[p>>1]|0;o=a+196+(h*12|0)|0;g=c[o>>2]|0;if((i|0)<(g|0))if((i<<1|0)<(g|0))if((i<<2|0)<(g|0))if((i<<3|0)<(g|0))if((i<<4|0)<(g|0)){d=5;while(1)if((i< >1]^r)-r+f|0;q=a+136|0;f=c[q>>2]|0;if((g&f|0)==(g|0))l=g;else l=f&~(g>>31);g=(e-l^r)-r|0;k=a+144|0;f=c[k>>2]|0;if((g|0)>0)g=(g+f|0)/(f<<1|1|0)|0;else g=(g-f|0)/(f<<1|1|0)|0;n=a+140|0;j=c[n>>2]|0;e=((g|0)<0?j:0)+g|0;j=e-((e|0)<((j+1|0)/2|0|0)?0:j)|0;h=a+196+(h*12|0)+4|0;if(!(f|d))g=(c[h>>2]<<1)+-1+i>>31;else g=0;f=g^j;vg(a,d,f>>30^f<<1,c[a+156>>2]|0);f=c[a+160>>2]|0;d=(c[o>>2]|0)+((j|0)>-1?j:0-j|0)|0;g=(c[h>>2]|0)+($(c[k>>2]<<1|1,j)|0)|0;e=b[p>>1]|0;if((e|0)==(f|0)){d=d>>1;g=g>>1;e=f>>1}c[o>>2]=d;f=e+1|0;b[p>>1]=f;d=f+g|0;if((d|0)>=1){if((g|0)>0){g=g-f|0;p=b[m>>1]|0;b[m>>1]=(p<<16>>16<127&1)+(p&65535);g=(g|0)>0?0:g}}else{g=b[m>>1]|0;b[m>>1]=(g&65535)-(g<<16>>16>-128&1);g=(d|0)>(~e|0)?d:0-e|0}c[h>>2]=g;f=c[k>>2]|0;e=f<<1|1;d=($(e,(j^r)-r|0)|0)+l|0;if((d|0)>=(0-f|0)){g=c[q>>2]|0;if((g+f|0)<(d|0))d=d-($(c[n>>2]|0,e)|0)|0}else{d=($(c[n>>2]|0,e)|0)+d|0;g=c[q>>2]|0}if((d&g|0)==(d|0)){r=d;r=r&255;return r|0}r=g&~(d>>31);r=r&255;return r|0}function sg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=(c[b+180>>2]|0)-e|0;m=c[b+4608>>2]|0;n=c[b+4604>>2]|0;h=a[m+(e+-1)>>0]|0;k=h&255;f=b+144|0;i=0;while(1){g=m+(i+e)|0;j=(d[g>>0]|0)-k|0;if((((j|0)>-1?j:0-j|0)|0)>(c[f>>2]|0))break;a[g>>0]=h;i=i+1|0;if((i|0)==(l|0)){i=l;break}}h=(i|0)==(l|0);j=b+4600|0;g=c[36476+(c[j>>2]<<2)>>2]|0;if((1< (i|0))f=i;else{f=i;do{ae(b,1,1);g=c[j>>2]|0;f=f-(1< >2])|0;g=(g|0)>30?31:g+1|0;c[j>>2]=g;g=c[36476+(g<<2)>>2]|0}while((f|0)>=(1< >0]=tg(b,d[e>>0]|0,k,d[n+l>>0]|0)|0;b=c[j>>2]|0;c[j>>2]=(b|0)<1?0:b+-1|0;b=i+1|0;return b|0}if(!f){b=l;return b|0}ae(b,1,1);b=l;return b|0}function tg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=d-e|0;j=a+136|0;h=a+144|0;f=c[h>>2]|0;if((((i|0)>-1?i:0-i|0)|0)>(f|0)){g=e-d>>31|1;b=$(g,b-e|0)|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;d=((b|0)<0?f:0)+b|0;f=d-((d|0)<((f+1|0)/2|0|0)?0:f)|0;ug(a,a+4576|0,f);f=$(f,g)|0;g=c[h>>2]|0;h=g<<1|1;f=($(f,h)|0)+e|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&255;return j|0}j=b&~(f>>31);j=j&255;return j|0}else{b=b-d|0;if((b|0)>0)b=(f+b|0)/(f<<1|1|0)|0;else b=(b-f|0)/(f<<1|1|0)|0;i=a+140|0;f=c[i>>2]|0;g=((b|0)<0?f:0)+b|0;f=g-((g|0)<((f+1|0)/2|0|0)?0:f)|0;ug(a,a+4588|0,f);g=c[h>>2]|0;h=g<<1|1;f=($(h,f)|0)+d|0;if((f|0)>=(0-g|0)){b=c[j>>2]|0;if((b+g|0)<(f|0))f=f-($(c[i>>2]|0,h)|0)|0}else{f=($(c[i>>2]|0,h)|0)+f|0;b=c[j>>2]|0}if((f&b|0)==(f|0)){j=f;j=j&255;return j|0}j=b&~(f>>31);j=j&255;return j|0}return 0}function ug(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e+9|0;j=d[n>>0]|0;m=e+4|0;l=c[m>>2]|0;h=($(j>>>1,l)|0)+(c[e>>2]|0)|0;if((j|0)<(h|0)){i=j;g=0;do{i=i<<1;g=g+1|0}while((i|0)<(h|0));h=g}else h=0;if((f|0)>0&(h|0)==0?d[e+10>>0]<<1>>>0 >>0:0)g=1;else k=5;do{if((k|0)==5){g=(f|0)<0;if(g?d[e+10>>0]<<1>>>0>=j>>>0:0){g=1;break}g=g&(h|0)!=0}}while(0);g=(((f|0)>-1?f:0-f|0)<<1)-l+(g<<31>>31)|0;vg(b,h,g,(c[b+156>>2]|0)+-1-(c[36476+(c[b+4600>>2]<<2)>>2]|0)|0);if((f|0)<0){b=e+10|0;a[b>>0]=(d[b>>0]|0)+1}g=(g+1-(c[m>>2]|0)>>1)+(c[e>>2]|0)|0;c[e>>2]=g;h=a[n>>0]|0;if(h<<24>>24!=(a[e+8>>0]|0)){e=h;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}c[e>>2]=g>>1;b=(h&255)>>>1;a[n>>0]=b;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=b;e=e&255;e=e+1|0;e=e&255;a[n>>0]=e;return}function vg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=d>>b;g=a+148|0;h=e-(c[g>>2]|0)|0;if((f|0)<(h+-1|0)){if((f|0)>30){e=(f|0)/2|0;ae(a,0,e);f=f-e|0}ae(a,1,f+1|0);ae(a,(1<31){ae(a,0,31);ae(a,1,e+-31-(c[g>>2]|0)|0)}else ae(a,1,h);b=c[g>>2]|0;ae(a,(1<>2]|0)){e=c[b+136>>2]|0;d=b+152|0;if((((e|0)==((1< >2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+184>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+188>>2]|0):0)?(c[f+12>>2]|0)==(c[b+192>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4612>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4612>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4612>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4612>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+152|0}while(0);n=1< >2];e=b+4616|0;f=n<<1;g=b+4620|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0 >>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4612|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+192|0;l=b+188|0;j=b+184|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function xg(a){a=a|0;var b=0,d=0;c[a>>2]=35856;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function yg(a){a=a|0;var b=0,d=0;c[a>>2]=35856;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function zg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Ag(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;Lg(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function Bg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Cg(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Cg(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+172|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do{if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,B=o,o=0,!(B&1)):0){c[C>>2]=f;B=f+(d<<1)|0;c[C+8>>2]=B;iw(f|0,0,e|0)|0;c[D>>2]=B;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do{if(!y)j=18;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=16;if((j|0)==16?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=18;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((j|0)==18){h=a+8|0;a:do{if((c[h>>2]|0)>0){j=a+4596|0;k=$(y,x)|0;l=k+1|0;m=a+4600|0;n=(y|0)>0;p=a+160|0;q=a+168|0;r=a+164|0;s=a+156|0;t=a+88|0;u=a+4592|0;v=0;b:while(1){f=c[C>>2]|0;e=f+2|0;c[j>>2]=e;f=f+(l<<1)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;b[e+(g<<1)>>1]=b[e+(g+-1<<1)>>1]|0;b[d+-2>>1]=b[e>>1]|0;o=0;ia(76,a|0,0);g=o;o=0;if(g&1){j=29;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x<<1)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x<<1)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k<<1)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=30;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42}while(0);do{if((j|0)==42){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=A;return}}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function Dg(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=d+4596|0;g=c[q>>2]|0;u=d+172|0;f=c[u>>2]|0;if((f|0)<=0)return;r=d+4600|0;s=d+4604|0;t=d+4592|0;l=g;j=e[g+-2>>1]|0;g=e[g>>1]|0;p=0;while(1){n=c[r>>2]|0;k=b[n+(p+-1<<1)>>1]|0;o=k&65535;i=p+1|0;h=e[l+(i<<1)>>1]|0;m=c[s>>2]|0;l=g-j|0;j=j-o|0;m=((((a[m+(h-g)>>0]|0)*9|0)+(a[m+l>>0]|0)|0)*9|0)+(a[m+j>>0]|0)|0;n=n+(p<<1)|0;if(!m){f=Gg(d,k,n,f-p|0)|0;g=f+p|0;if((g|0)!=(c[u>>2]|0)){o=Hg(d,o,e[(c[q>>2]|0)+(g<<1)>>1]|0)|0;b[(c[r>>2]|0)+(g<<1)>>1]=o;o=c[t>>2]|0;c[t>>2]=(o|0)<1?0:o+-1|0;f=f+1|0}i=f+p|0;h=c[q>>2]|0;g=e[h+(i+-1<<1)>>1]|0;h=e[h+(i<<1)>>1]|0}else{f=g-o>>31;if((f^j|0)<0)f=g;else f=o+((f^l|0)<0?0:l)|0;o=Fg(d,m,e[n>>1]|0,f,0)|0;b[(c[r>>2]|0)+(p<<1)>>1]=o}f=c[u>>2]|0;if((f|0)<=(i|0))break;l=c[q>>2]|0;j=g;g=h;p=i}return}function Eg(b){b=b|0;var d=0,e=0,f=0,g=0;f=b+116|0;e=c[f>>2]|0;if((a[e>>0]|0)!=-1){g=b+112|0;d=c[g>>2]|0;if((d|0)<1){ge(b);d=c[g>>2]|0;e=c[f>>2]|0}b=b+108|0;f=c[b>>2]|0;c[g>>2]=d+-1;d=f<<1;c[b>>2]=d;if((a[e>>0]|0)!=-1){d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,6,35648);b=o;o=0;if(!(b&1))lb(d|0,824,96);b=Na()|0;La(d|0);Ya(b|0)}}else d=c[b+108>>2]|0;if(!d)return;d=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,d|0,6,35648);b=o;o=0;if(!(b&1))lb(d|0,824,96);b=Na()|0;La(d|0);Ya(b|0)}function Fg(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f< >1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f< >31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g< >2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&65535;return d|0}d=f&~(h>>31);d=d&65535;return d|0}function Gg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4592|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1< >2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)>0)i=0;else return h|0;do{b[f+(i<<1)>>1]=e;i=i+1|0}while((i|0)!=(h|0));return h|0}function Hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=b-d|0;h=a+128|0;e=a+136|0;if((((g|0)>-1?g:0-g|0)|0)>(c[e>>2]|0)){b=$(Ig(a,a+4568|0)|0,d-b>>31|1)|0;f=c[e>>2]|0;g=f<<1|1;b=($(b,g)|0)+d|0;if((b|0)>=(0-f|0)){e=c[h>>2]|0;if((e+f|0)<(b|0))b=b-($(c[a+132>>2]|0,g)|0)|0}else{b=($(c[a+132>>2]|0,g)|0)+b|0;e=c[h>>2]|0}if((b&e|0)==(b|0)){a=b;a=a&65535;return a|0}a=e&~(b>>31);a=a&65535;return a|0}else{d=Ig(a,a+4580|0)|0;g=c[e>>2]|0;f=g<<1|1;b=($(f,d)|0)+b|0;if((b|0)>=(0-g|0)){e=c[h>>2]|0;if((e+g|0)<(b|0))b=b-($(c[a+132>>2]|0,f)|0)|0}else{b=($(c[a+132>>2]|0,f)|0)+b|0;e=c[h>>2]|0}if((b&e|0)==(b|0)){a=b;a=a&65535;return a|0}a=e&~(b>>31);a=a&65535;return a|0}return 0}function Ig(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do{if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h< >2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function Jg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=a+112|0;if((c[g>>2]|0)<16)ge(a);h=a+108|0;d=c[h>>2]|0;if((d|0)>=0)if(!(d&1073741824))if(!(d&536870912))if(!(d&268435456))if(!(d&134217728))if(!(d&67108864))if(!(d&33554432))if(!(d&16777216))if(!(d&8388608))if(!(d&4194304))if(!(d&2097152))if(!(d&1048576))if(!(d&524288))if(!(d&262144))if(!(d&131072)){f=d>>>12&16;b=f+-1|0;if(!f){b=(c[g>>2]|0)+-15|0;c[g>>2]=b;e=d<<15;c[h>>2]=e;d=b;b=15;while(1){if((d|0)<1){ge(a);f=c[h>>2]|0;d=c[g>>2]|0}else f=e;d=d+-1|0;c[g>>2]=d;e=f<<1;c[h>>2]=e;if((f|0)<0)break;else b=b+1|0}return b|0}}else b=14;else b=13;else b=12;else b=11;else b=10;else b=9;else b=8;else b=7;else b=6;else b=5;else b=4;else b=3;else b=2;else b=1;else b=0;a=b+1|0;c[g>>2]=(c[g>>2]|0)-a;c[h>>2]=d<>2]|0;if((e|0)<(d|0)){ge(b);e=c[f>>2]|0;if((e|0)<(d|0)){e=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,e|0,5,35648);b=o;o=0;if(b&1){b=Na()|0;La(e|0);Ya(b|0)}else lb(e|0,824,96)}}g=b+108|0;b=c[g>>2]|0;c[f>>2]=e-d;c[g>>2]=b< >>(32-d|0)|0}function Lg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do{if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1< >2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0}while(0);n=1< >2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0 >>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function Mg(a){a=a|0;var b=0,d=0;c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Ng(a){a=a|0;var b=0,d=0;c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Og(a){a=a|0;var b=0,d=0;c[a>>2]=35828;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Pg(a){a=a|0;var b=0,d=0;c[a>>2]=35828;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Qg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=6;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Rg(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;Zg(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function Sg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Tg(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Tg(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+172|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do{if(d){if(!(d>>>0>715827882?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(o=0,e=ka(67,d*6|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;f=e+(d*6|0)|0;c[C+8>>2]=f;while(1){b[e>>1]=0;b[e+2>>1]=0;b[e+4>>1]=0;d=d+-1|0;if(!d)break;else e=e+6|0}c[D>>2]=f;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do{if(!y)j=20;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=18;if((j|0)==18?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=20;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((j|0)==20){h=a+8|0;a:do{if((c[h>>2]|0)>0){j=a+4596|0;k=$(y,x)|0;l=k+1|0;m=a+4600|0;n=(y|0)>0;p=a+160|0;q=a+168|0;r=a+164|0;s=a+156|0;t=a+88|0;u=a+4592|0;v=0;b:while(1){f=c[C>>2]|0;e=f+6|0;c[j>>2]=e;f=f+(l*6|0)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];d=c[w>>2]|0;g=e+(d*6|0)|0;e=e+((d+-1|0)*6|0)|0;b[g>>1]=b[e>>1]|0;b[g+2>>1]=b[e+2>>1]|0;b[g+4>>1]=b[e+4>>1]|0;g=(c[m>>2]|0)+-6|0;e=c[j>>2]|0;b[g>>1]=b[e>>1]|0;b[g+2>>1]=b[e+2>>1]|0;b[g+4>>1]=b[e+4>>1]|0;o=0;ia(77,a|0,0);g=o;o=0;if(g&1){j=31;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x*6|0)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x*6|0)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+(((c[s>>2]|0)-k|0)*6|0)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=32;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=44;break a}}if((j|0)==31){f=Na()|0;break}else if((j|0)==32){f=Na()|0;break}}else j=44}while(0);do{if((j|0)==44){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);i=A;return}}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-6-d|0)>>>0)/6|0)*6|0);cj(d);Ya(f|0)}function Ug(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;N=i;i=i+32|0;D=N+24|0;M=N+18|0;L=N+12|0;E=N+6|0;F=N;G=d+172|0;f=c[G>>2]|0;if((f|0)<=0){i=N;return}H=d+4600|0;I=d+4596|0;J=d+4604|0;K=d+4592|0;C=0;while(1){h=C+-1|0;j=c[H>>2]|0;O=c[I>>2]|0;g=C+1|0;k=e[O+(C*6|0)>>1]|0;B=c[J>>2]|0;l=e[O+(h*6|0)>>1]|0;m=k-l|0;n=e[j+(h*6|0)>>1]|0;o=l-n|0;p=((((a[B+((e[O+(g*6|0)>>1]|0)-k)>>0]|0)*9|0)+(a[B+m>>0]|0)|0)*9|0)+(a[B+o>>0]|0)|0;q=e[O+(C*6|0)+2>>1]|0;r=e[O+(h*6|0)+2>>1]|0;s=q-r|0;t=e[j+(h*6|0)+2>>1]|0;u=r-t|0;v=((((a[B+((e[O+(g*6|0)+2>>1]|0)-q)>>0]|0)*9|0)+(a[B+s>>0]|0)|0)*9|0)+(a[B+u>>0]|0)|0;w=e[O+(C*6|0)+4>>1]|0;x=e[O+(h*6|0)+4>>1]|0;y=w-x|0;z=e[j+(h*6|0)+4>>1]|0;A=x-z|0;B=((((a[B+((e[O+(g*6|0)+4>>1]|0)-w)>>0]|0)*9|0)+(a[B+y>>0]|0)|0)*9|0)+(a[B+A>>0]|0)|0;if(!(v|p|B)){g=j+(h*6|0)|0;b[L>>1]=b[g>>1]|0;b[L+2>>1]=b[g+2>>1]|0;b[L+4>>1]=b[g+4>>1]|0;b[D>>1]=b[g>>1]|0;b[D+2>>1]=b[g+2>>1]|0;b[D+4>>1]=b[g+4>>1]|0;f=Vg(d,D,j+(C*6|0)|0,f-C|0)|0;g=f+C|0;if((g|0)!=(c[G>>2]|0)){O=(c[I>>2]|0)+(g*6|0)|0;b[F>>1]=b[O>>1]|0;b[F+2>>1]=b[O+2>>1]|0;b[F+4>>1]=b[O+4>>1]|0;O=(c[H>>2]|0)+(g*6|0)|0;b[M>>1]=b[L>>1]|0;b[M+2>>1]=b[L+2>>1]|0;b[M+4>>1]=b[L+4>>1]|0;b[D>>1]=b[F>>1]|0;b[D+2>>1]=b[F+2>>1]|0;b[D+4>>1]=b[F+4>>1]|0;Wg(E,d,M,D);b[O>>1]=b[E>>1]|0;b[O+2>>1]=b[E+2>>1]|0;b[O+4>>1]=b[E+4>>1]|0;O=c[K>>2]|0;c[K>>2]=(O|0)<1?0:O+-1|0;f=f+1|0}g=f+C|0}else{h=e[j+(C*6|0)>>1]|0;f=k-n>>31;if((f^o|0)>=0)if((f^m|0)<0)f=n;else f=n-l+k|0;else f=k;k=Xg(d,p,h,f,0)|0;h=e[(c[H>>2]|0)+(C*6|0)+2>>1]|0;f=q-t>>31;if((f^u|0)>=0)if((f^s|0)<0)f=t;else f=t-r+q|0;else f=q;h=Xg(d,v,h,f,0)|0;j=e[(c[H>>2]|0)+(C*6|0)+4>>1]|0;f=w-z>>31;if((f^A|0)>=0)if((f^y|0)<0)f=z;else f=z-x+w|0;else f=w;B=Xg(d,B,j,f,0)|0;O=c[H>>2]|0;b[O+(C*6|0)>>1]=k;b[O+(C*6|0)+2>>1]=h;b[O+(C*6|0)+4>>1]=B}f=c[G>>2]|0;if((g|0)>=(f|0))break;else C=g}i=N;return}function Vg(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4592|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1< >2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)<=0)return h|0;i=0;do{r=f+(i*6|0)|0;b[r>>1]=b[e>>1]|0;b[r+2>>1]=b[e+2>>1]|0;b[r+4>>1]=b[e+4>>1]|0;i=i+1|0}while((i|0)!=(h|0));return h|0}function Wg(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=d+4568|0;o=Yg(d,l)|0;j=Yg(d,l)|0;l=Yg(d,l)|0;i=d+128|0;h=e[g>>1]|0;m=c[d+136>>2]|0;n=m<<1|1;h=($($(n,o)|0,h-(e[f>>1]|0)>>31|1)|0)+h|0;o=0-m|0;if((h|0)>=(o|0)){i=c[i>>2]|0;if((i+m|0)<(h|0))h=h-($(c[d+132>>2]|0,n)|0)|0}else{h=($(c[d+132>>2]|0,n)|0)+h|0;i=c[i>>2]|0}if((h&i|0)!=(h|0))h=i&~(h>>31);k=h&65535;h=e[g+2>>1]|0;h=($($(n,j)|0,h-(e[f+2>>1]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[d+132>>2]|0,n)|0)|0}else h=($(c[d+132>>2]|0,n)|0)+h|0;if((h&i|0)!=(h|0))h=i&~(h>>31);j=h&65535;h=e[g+4>>1]|0;h=($($(n,l)|0,h-(e[f+4>>1]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[d+132>>2]|0,n)|0)|0}else h=($(c[d+132>>2]|0,n)|0)+h|0;if((h&i|0)==(h|0)){d=h;d=d&65535;b[a>>1]=k;o=a+2|0;b[o>>1]=j;a=a+4|0;b[a>>1]=d;return}d=i&~(h>>31);d=d&65535;b[a>>1]=k;o=a+2|0;b[o>>1]=j;a=a+4|0;b[a>>1]=d;return}function Xg(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f< >1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f< >31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g< >2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&65535;return d|0}d=f&~(h>>31);d=d&65535;return d|0}function Yg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do{if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h< >2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function Zg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do{if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1< >2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0}while(0);n=1< >2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0 >>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function _g(a){a=a|0;var b=0,d=0;c[a>>2]=35800;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function $g(a){a=a|0;var b=0,d=0;c[a>>2]=35800;b=c[a+4608>>2]|0;if(b){d=a+4612|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function ah(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function bh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;m=k;Ei(m,c[d+128>>2]|0,c[d+136>>2]|0);l=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[m+8>>2]|0:j;h=c[e+12>>2]|0;h=(h|0)==0?c[m+12>>2]|0:h;f=c[e+16>>2]|0;g=c[m+16>>2]|0;c[d+176>>2]=(l|0)==0?c[m+4>>2]|0:l;c[d+180>>2]=j;c[d+184>>2]=h;jh(d);h=d+132|0;e=(c[h>>2]|0)+32|0;e=(e|0)<128?2:(e|0)/64|0;j=0;do{c[d+188+(j*12|0)>>2]=e;c[d+188+(j*12|0)+4>>2]=0;b[d+188+(j*12|0)+8>>1]=0;b[d+188+(j*12|0)+10>>1]=1;j=j+1|0}while((j|0)!=365);l=(c[h>>2]|0)+32|0;l=(l|0)<128?2:(l|0)/64|0;m=((f|0)==0?g:f)&255;c[d+4568>>2]=l;c[d+4572>>2]=0;a[d+4576>>0]=m;a[d+4577>>0]=1;a[d+4578>>0]=0;c[d+4580>>2]=l;c[d+4584>>2]=1;a[d+4588>>0]=m;a[d+4589>>0]=1;a[d+4590>>0]=0;c[d+4592>>2]=0;i=k;return}function ch(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4620>>0]=g&1;d=b+156|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);dh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function dh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=b+172|0;x=(c[w>>2]|0)+4|0;if((c[b+28>>2]|0)==1)y=c[b+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do{if(d){if(!(d>>>0>1431655765?(o=0,ha(178,C|0),B=o,o=0,B&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[D>>2]|0)+3|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do{if(!y)h=19;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))h=17;if((h|0)==17?(f=y<<2,o=0,g=ka(67,f|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=g;h=g+(y<<2)|0;c[z+8>>2]=h;iw(g|0,0,f|0)|0;c[B>>2]=h;h=19;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((h|0)==19){h=b+8|0;b:do{if((c[h>>2]|0)>0){j=b+4596|0;k=$(y,x)|0;l=k+1|0;m=b+4600|0;n=(y|0)>0;p=b+160|0;q=b+168|0;r=b+164|0;s=b+156|0;t=b+88|0;u=b+4592|0;v=0;c:while(1){f=c[C>>2]|0;e=f+3|0;c[j>>2]=e;f=f+(l*3|0)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];d=c[w>>2]|0;g=e+(d*3|0)|0;e=e+((d+-1|0)*3|0)|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;e=c[j>>2]|0;g=(c[m>>2]|0)+-3|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;o=0;ia(78,b|0,0);g=o;o=0;if(g&1){h=30;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x*3|0)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x*3|0)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+(((c[s>>2]|0)-k|0)*3|0)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){h=31;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){h=43;break b}}if((h|0)==30){f=Na()|0;break}else if((h|0)==31){f=Na()|0;break}}else h=43}while(0);do{if((h|0)==43){o=0;ha(183,b|0);b=o;o=0;if(b&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=A;return}}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function eh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;M=i;i=i+16|0;C=M+12|0;L=M+9|0;K=M+6|0;D=M+3|0;E=M;F=b+172|0;e=c[F>>2]|0;if((e|0)<=0){i=M;return}G=b+4600|0;H=b+4596|0;I=b+4604|0;J=b+4592|0;B=0;while(1){y=B+-1|0;g=c[G>>2]|0;h=g+(y*3|0)|0;N=c[H>>2]|0;f=B+1|0;j=d[N+(B*3|0)>>0]|0;A=c[I>>2]|0;k=d[N+(y*3|0)>>0]|0;l=j-k|0;m=d[h>>0]|0;n=k-m|0;o=((((a[A+((d[N+(f*3|0)>>0]|0)-j)>>0]|0)*9|0)+(a[A+l>>0]|0)|0)*9|0)+(a[A+n>>0]|0)|0;p=d[N+(B*3|0)+1>>0]|0;q=d[N+(y*3|0)+1>>0]|0;r=p-q|0;s=d[g+(y*3|0)+1>>0]|0;t=q-s|0;u=((((a[A+((d[N+(f*3|0)+1>>0]|0)-p)>>0]|0)*9|0)+(a[A+r>>0]|0)|0)*9|0)+(a[A+t>>0]|0)|0;v=d[N+(B*3|0)+2>>0]|0;w=d[N+(y*3|0)+2>>0]|0;x=v-w|0;y=d[g+(y*3|0)+2>>0]|0;z=w-y|0;A=((((a[A+((d[N+(f*3|0)+2>>0]|0)-v)>>0]|0)*9|0)+(a[A+x>>0]|0)|0)*9|0)+(a[A+z>>0]|0)|0;if(!(u|o|A)){a[K>>0]=a[h>>0]|0;a[K+1>>0]=a[h+1>>0]|0;a[K+2>>0]=a[h+2>>0]|0;a[C>>0]=a[h>>0]|0;a[C+1>>0]=a[h+1>>0]|0;a[C+2>>0]=a[h+2>>0]|0;e=fh(b,C,g+(B*3|0)|0,e-B|0)|0;f=e+B|0;if((f|0)!=(c[F>>2]|0)){N=(c[H>>2]|0)+(f*3|0)|0;a[E>>0]=a[N>>0]|0;a[E+1>>0]=a[N+1>>0]|0;a[E+2>>0]=a[N+2>>0]|0;N=c[G>>2]|0;a[L>>0]=a[K>>0]|0;a[L+1>>0]=a[K+1>>0]|0;a[L+2>>0]=a[K+2>>0]|0;a[C>>0]=a[E>>0]|0;a[C+1>>0]=a[E+1>>0]|0;a[C+2>>0]=a[E+2>>0]|0;gh(D,b,L,C);N=N+(f*3|0)|0;a[N>>0]=a[D>>0]|0;a[N+1>>0]=a[D+1>>0]|0;a[N+2>>0]=a[D+2>>0]|0;N=c[J>>2]|0;c[J>>2]=(N|0)<1?0:N+-1|0;e=e+1|0}f=e+B|0}else{g=d[g+(B*3|0)>>0]|0;e=j-m>>31;if((e^n|0)>=0)if((e^l|0)<0)e=m;else e=m-k+j|0;else e=j;j=hh(b,o,g,e,0)|0;g=d[(c[G>>2]|0)+(B*3|0)+1>>0]|0;e=p-s>>31;if((e^t|0)>=0)if((e^r|0)<0)e=s;else e=s-q+p|0;else e=p;g=hh(b,u,g,e,0)|0;h=d[(c[G>>2]|0)+(B*3|0)+2>>0]|0;e=v-y>>31;if((e^z|0)>=0)if((e^x|0)<0)e=y;else e=y-w+v|0;else e=v;A=hh(b,A,h,e,0)|0;N=(c[G>>2]|0)+(B*3|0)|0;a[N>>0]=j;a[N+1>>0]=g;a[N+2>>0]=A}e=c[F>>2]|0;if((f|0)>=(e|0))break;else B=f}i=M;return}function fh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4592|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1< >2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;h=0;do{q=e+(h*3|0)|0;a[q>>0]=a[d>>0]|0;a[q+1>>0]=a[d+1>>0]|0;a[q+2>>0]=a[d+2>>0]|0;h=h+1|0}while((h|0)!=(g|0));return g|0}function gh(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=e+4568|0;o=ih(e,l)|0;j=ih(e,l)|0;l=ih(e,l)|0;i=e+128|0;h=d[g>>0]|0;m=c[e+136>>2]|0;n=m<<1|1;h=($($(n,o)|0,h-(d[f>>0]|0)>>31|1)|0)+h|0;o=0-m|0;if((h|0)>=(o|0)){i=c[i>>2]|0;if((i+m|0)<(h|0))h=h-($(c[e+132>>2]|0,n)|0)|0}else{h=($(c[e+132>>2]|0,n)|0)+h|0;i=c[i>>2]|0}if((h&i|0)!=(h|0))h=i&~(h>>31);k=h&255;h=d[g+1>>0]|0;h=($($(n,j)|0,h-(d[f+1>>0]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[e+132>>2]|0,n)|0)|0}else h=($(c[e+132>>2]|0,n)|0)+h|0;if((h&i|0)!=(h|0))h=i&~(h>>31);j=h&255;h=d[g+2>>0]|0;h=($($(n,l)|0,h-(d[f+2>>0]|0)>>31|1)|0)+h|0;if((h|0)>=(o|0)){if((i+m|0)<(h|0))h=h-($(c[e+132>>2]|0,n)|0)|0}else h=($(c[e+132>>2]|0,n)|0)+h|0;if((h&i|0)==(h|0)){e=h;e=e&255;a[b>>0]=k;o=b+1|0;a[o>>0]=j;b=b+2|0;a[b>>0]=e;return}e=i&~(h>>31);e=e&255;a[b>>0]=k;o=b+1|0;a[o>>0]=j;b=b+2|0;a[b>>0]=e;return}function hh(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0;t=e>>31;l=(t^e)-t|0;r=d+188+(l*12|0)+10|0;f=b[r>>1]|0;q=d+188+(l*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){e=5;while(1)if((f< >1]^t)-t+g|0;s=d+128|0;h=c[s>>2]|0;if((f&h|0)==(f|0))m=f;else m=h&~(f>>31);f=d+112|0;if((c[f>>2]|0)<8)ge(d);h=d+108|0;g=c[h>>2]|0;i=g>>>24;j=c[2832+(e<<11)+(i<<3)+4>>2]|0;if(!j){k=c[d+148>>2]|0;h=c[d+140>>2]|0;f=Jg(d)|0;if((f|0)<(k+-1-h|0)){if(e)f=(Kg(d,e)|0)+(f< >31^f>>1;if((((f|0)>-1?f:0-f|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);d=o;o=0;if(d&1){d=Na()|0;La(f|0);Ya(d|0)}else lb(f|0,824,96)}}else{c[f>>2]=(c[f>>2]|0)-j;c[h>>2]=g< >2]|0}k=d+136|0;g=c[k>>2]|0;if(!e){if(!g)h=(c[d+188+(l*12|0)+4>>2]<<1)+-1+(b[r>>1]|0)>>31;else h=0;j=h^f}else j=f;e=c[d+152>>2]|0;h=(c[q>>2]|0)+((j|0)>-1?j:0-j|0)|0;i=d+188+(l*12|0)+4|0;f=(c[i>>2]|0)+($(g<<1|1,j)|0)|0;g=b[r>>1]|0;if((g|0)==(e|0)){h=h>>1;f=f>>1;g=e>>1}c[q>>2]=h;e=g+1|0;b[r>>1]=e;h=e+f|0;if((h|0)>=1){if((f|0)>0){f=f-e|0;r=b[p>>1]|0;b[p>>1]=(r<<16>>16<127&1)+(r&65535);f=(f|0)>0?0:f}}else{f=b[p>>1]|0;b[p>>1]=(f&65535)-(f<<16>>16>-128&1);f=(h|0)>(~g|0)?h:0-g|0}c[i>>2]=f;e=c[k>>2]|0;g=e<<1|1;h=($(g,(j^t)-t|0)|0)+m|0;if((h|0)>=(0-e|0)){f=c[s>>2]|0;if((f+e|0)<(h|0))h=h-($(c[d+132>>2]|0,g)|0)|0}else{h=($(c[d+132>>2]|0,g)|0)+h|0;f=c[s>>2]|0}if((h&f|0)==(h|0)){d=h;d=d&255;return d|0}d=f&~(h>>31);d=d&255;return d|0}function ih(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e+9|0;f=d[m>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;j=c[b+148>>2]|0;k=c[36476+(c[b+4592>>2]<<2)>>2]|0;f=c[b+140>>2]|0;h=Jg(b)|0;do{if((h|0)<(j+-2-k-f|0))if(!g){g=c[i>>2]|0;b=g+h|0;f=b&1;b=(f+b|0)/2|0;l=8;break}else{k=(Kg(b,g)|0)+(h< >2]|0;h=k+g|0;j=h&1;f=j;i=1;h=(j+h|0)/2|0;break}else{h=(Kg(b,f)|0)+1|0;j=c[i>>2]|0;b=h+j|0;f=b&1;b=(f+b|0)/2|0;if(!g){g=j;l=8}else{k=h;i=1;h=b;g=j}}}while(0);if((l|0)==8){k=h;i=d[e+10>>0]<<1>>>0>=(d[m>>0]|0)>>>0;h=b}h=(f|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(k+1-g>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[m>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){e=g;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[m>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;e=l;e=e&255;e=e+1|0;e=e&255;a[m>>0]=e;return h|0}function jh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;f=p;o=b+136|0;a:do{if(!(c[o>>2]|0)){e=c[b+128>>2]|0;d=b+144|0;if((((e|0)==((1< >2])+-1|0)?(Ei(f,e,0),(c[f+4>>2]|0)==(c[b+176>>2]|0)):0)?(c[f+8>>2]|0)==(c[b+180>>2]|0):0)?(c[f+12>>2]|0)==(c[b+184>>2]|0):0)switch(c[d>>2]|0){case 8:{o=c[8900]|0;c[b+4604>>2]=o+(((c[8901]|0)-o|0)>>>1);i=p;return}case 10:{o=c[8903]|0;c[b+4604>>2]=o+(((c[8904]|0)-o|0)>>>1);i=p;return}case 12:{o=c[8906]|0;c[b+4604>>2]=o+(((c[8907]|0)-o|0)>>>1);i=p;return}case 16:{o=c[8909]|0;c[b+4604>>2]=o+(((c[8910]|0)-o|0)>>>1);i=p;return}default:break a}}else d=b+144|0}while(0);n=1< >2];e=b+4608|0;f=n<<1;g=b+4612|0;h=c[g>>2]|0;d=c[e>>2]|0;j=h-d|0;if(f>>>0<=j>>>0){if(f>>>0 >>0?(k=d+f|0,(h|0)!=(k|0)):0)c[g>>2]=k}else{ie(e,f-j|0);d=c[e>>2]|0}m=b+4604|0;c[m>>2]=d+n;d=0-n|0;if((n|0)<=(d|0)){i=p;return}k=b+184|0;l=b+180|0;j=b+176|0;h=d;do{d=c[k>>2]|0;if((h|0)>(0-d|0)){e=c[l>>2]|0;if((h|0)>(0-e|0)){f=c[j>>2]|0;if((h|0)>(0-f|0)){g=c[o>>2]|0;if((h|0)>=(0-g|0))if((g|0)<(h|0))if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1;else d=0;else d=-1}else d=-2}else d=-3}else d=-4;a[(c[m>>2]|0)+h>>0]=d;h=h+1|0}while((h|0)!=(n|0));i=p;return}function kh(a){a=a|0;var b=0,d=0;c[a>>2]=35772;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function lh(a){a=a|0;var b=0,d=0;c[a>>2]=35772;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function mh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function nh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,65535,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;vh(d);g=0;do{c[d+164+(g*12|0)>>2]=1024;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=1024;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=1024;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function oh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);ph(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function ph(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+148|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do{if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,B=o,o=0,!(B&1)):0){c[C>>2]=f;B=f+(d<<1)|0;c[C+8>>2]=B;iw(f|0,0,e|0)|0;c[D>>2]=B;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do{if(!y)j=18;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=16;if((j|0)==16?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=18;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((j|0)==18){h=a+8|0;a:do{if((c[h>>2]|0)>0){j=a+4572|0;k=$(y,x)|0;l=k+1|0;m=a+4576|0;n=(y|0)>0;p=a+136|0;q=a+144|0;r=a+140|0;s=a+132|0;t=a+88|0;u=a+4568|0;v=0;b:while(1){f=c[C>>2]|0;e=f+2|0;c[j>>2]=e;f=f+(l<<1)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;b[e+(g<<1)>>1]=b[e+(g+-1<<1)>>1]|0;b[d+-2>>1]=b[e>>1]|0;o=0;ia(79,a|0,0);g=o;o=0;if(g&1){j=29;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x<<1)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x<<1)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k<<1)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=30;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42}while(0);do{if((j|0)==42){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=A;return}}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function qh(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4572|0;f=c[p>>2]|0;s=d+148|0;if((c[s>>2]|0)<=0)return;q=d+4576|0;r=d+4580|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(sh(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=rh(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function rh(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&65535|0)!=(f|0))f=f>>31&65535^65535;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<47){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j< >2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&65535;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&65535;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&65535;return e|0}function sh(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;i=a+4576|0;h=c[i>>2]|0;f=b[h+(d+-1<<1)>>1]|0;j=a+148|0;h=th(a,f,h+(d<<1)|0,(c[j>>2]|0)-d|0)|0;g=h+d|0;if((g|0)==(c[j>>2]|0)){j=h;return j|0}f=f&65535;d=e[(c[a+4572>>2]|0)+(g<<1)>>1]|0;j=f-d|0;if((((j|0)>-1?j:0-j|0)|0)<1)f=(uh(a,a+4556|0)|0)+f|0;else f=($(uh(a,a+4544|0)|0,d-f>>31|1)|0)+d|0;b[(c[i>>2]|0)+(g<<1)>>1]=f;j=a+4568|0;a=c[j>>2]|0;c[j>>2]=(a|0)<1?0:a+-1|0;j=h+1|0;return j|0}function th(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4568|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1< >2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)>0)i=0;else return h|0;do{b[f+(i<<1)>>1]=e;i=i+1|0}while((i|0)!=(h|0));return h|0}function uh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do{if((f|0)<(46-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f< >2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,16)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}function vh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,65535,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8909]|0;c[b+4580>>2]=l+(((c[8910]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=131072){if(h>>>0>131072?(j=d+131072|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,131072-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+65536;j=b+160|0;g=b+156|0;h=-65536;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==65536)break}i=m;return}function wh(a){a=a|0;var b=0,d=0;c[a>>2]=35744;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function xh(a){a=a|0;var b=0,d=0;c[a>>2]=35744;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function yh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(37,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==16)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(38,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(39,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(40,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=2;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function zh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,4095,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;Hh(d);g=0;do{c[d+164+(g*12|0)>>2]=64;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=64;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=64;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function Ah(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Bh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Bh(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=a+148|0;x=(c[w>>2]|0)+4|0;if((c[a+28>>2]|0)==1)y=c[a+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;do{if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))j=6;if((j|0)==6?(e=d<<1,o=0,f=ka(67,e|0)|0,B=o,o=0,!(B&1)):0){c[C>>2]=f;B=f+(d<<1)|0;c[C+8>>2]=B;iw(f|0,0,e|0)|0;c[D>>2]=B;break}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do{if(!y)j=18;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))j=16;if((j|0)==16?(g=y<<2,o=0,h=ka(67,g|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=h;j=h+(y<<2)|0;c[z+8>>2]=j;iw(h|0,0,g|0)|0;c[B>>2]=j;j=18;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((j|0)==18){h=a+8|0;a:do{if((c[h>>2]|0)>0){j=a+4572|0;k=$(y,x)|0;l=k+1|0;m=a+4576|0;n=(y|0)>0;p=a+136|0;q=a+144|0;r=a+140|0;s=a+132|0;t=a+88|0;u=a+4568|0;v=0;b:while(1){f=c[C>>2]|0;e=f+2|0;c[j>>2]=e;f=f+(l<<1)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;b[e+(g<<1)>>1]=b[e+(g+-1<<1)>>1]|0;b[d+-2>>1]=b[e>>1]|0;o=0;ia(80,a|0,0);g=o;o=0;if(g&1){j=29;break b}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x<<1)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x<<1)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k<<1)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){j=30;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){j=42;break a}}if((j|0)==29){f=Na()|0;break}else if((j|0)==30){f=Na()|0;break}}else j=42}while(0);do{if((j|0)==42){o=0;ha(183,a|0);a=o;o=0;if(a&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);i=A;return}}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~((e+-2-d|0)>>>1)<<1);cj(d);Ya(f|0)}function Ch(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=d+4572|0;f=c[p>>2]|0;s=d+148|0;if((c[s>>2]|0)<=0)return;q=d+4576|0;r=d+4580|0;i=f;j=e[f+-2>>1]|0;f=e[f>>1]|0;o=0;while(1){n=c[q>>2]|0;m=e[n+(o+-1<<1)>>1]|0;h=o+1|0;g=e[i+(h<<1)>>1]|0;l=c[r>>2]|0;k=f-j|0;i=j-m|0;l=((((a[l+(g-f)>>0]|0)*9|0)+(a[l+k>>0]|0)|0)*9|0)+(a[l+i>>0]|0)|0;if(!l){h=(Eh(d,o,0)|0)+o|0;g=c[p>>2]|0;f=e[g+(h+-1<<1)>>1]|0;g=e[g+(h<<1)>>1]|0}else{j=f-m>>31;if((j^i|0)<0)i=f;else i=m+((j^k|0)<0?0:k)|0;n=Dh(d,l,e[n+(o<<1)>>1]|0,i,0)|0;b[(c[q>>2]|0)+(o<<1)>>1]=n}if((h|0)>=(c[s>>2]|0))break;i=c[p>>2]|0;j=f;f=g;o=h}return}function Dh(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&4095|0)!=(f|0))f=f>>31&4095^4095;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<35){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j< >2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&4095;e=e&65535;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&4095;e=e&65535;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&4095;e=e&65535;return e|0}function Eh(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;i=a+4576|0;h=c[i>>2]|0;f=b[h+(d+-1<<1)>>1]|0;j=a+148|0;h=Fh(a,f,h+(d<<1)|0,(c[j>>2]|0)-d|0)|0;g=h+d|0;if((g|0)==(c[j>>2]|0)){j=h;return j|0}f=f&65535;d=e[(c[a+4572>>2]|0)+(g<<1)>>1]|0;j=f-d|0;if((((j|0)>-1?j:0-j|0)|0)<1)f=(Gh(a,a+4556|0)|0)+f|0;else f=($(Gh(a,a+4544|0)|0,d-f>>31|1)|0)+d|0;b[(c[i>>2]|0)+(g<<1)>>1]=f&4095;j=a+4568|0;a=c[j>>2]|0;c[j>>2]=(a|0)<1?0:a+-1|0;j=h+1|0;return j|0}function Fh(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0;k=d+112|0;l=d+108|0;m=d+4568|0;h=c[k>>2]|0;i=0;while(1){if((h|0)<1){ge(d);h=c[k>>2]|0}j=c[l>>2]|0;h=h+-1|0;c[k>>2]=h;c[l>>2]=j<<1;if((j|0)>=0){p=8;break}j=c[m>>2]|0;q=1< >2];r=g-i|0;r=(q|0)<(r|0)?q:r;i=r+i|0;if((r|0)==(q|0))c[m>>2]=(j|0)>30?31:j+1|0;if((i|0)==(g|0)){h=g;break}}if((p|0)==8)if((i|0)!=(g|0)){h=c[m>>2]|0;if((h+-4|0)>>>0<28)h=Kg(d,c[36476+(h<<2)>>2]|0)|0;else h=0;h=h+i|0;if((h|0)>(g|0)){h=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,h|0,5,35648);r=o;o=0;if(r&1){r=Na()|0;La(h|0);Ya(r|0)}else lb(h|0,824,96)}}else h=g;if((h|0)>0)i=0;else return h|0;do{b[f+(i<<1)>>1]=e;i=i+1|0}while((i|0)!=(h|0));return h|0}function Gh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do{if((f|0)<(34-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f< >2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,12)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}function Hh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,4095,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8906]|0;c[b+4580>>2]=l+(((c[8907]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=8192){if(h>>>0>8192?(j=d+8192|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,8192-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+4096;j=b+160|0;g=b+156|0;h=-4096;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==4096)break}i=m;return}function Ih(a){a=a|0;var b=0,d=0;c[a>>2]=35716;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Jh(a){a=a|0;var b=0,d=0;c[a>>2]=35716;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=1;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Lh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;Th(d);g=0;do{c[d+164+(g*12|0)>>2]=4;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=4;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=4;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function Mh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Nh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Nh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=b+148|0;x=(c[w>>2]|0)+4|0;if((c[b+28>>2]|0)==1)y=c[b+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do{if(d){if(!((d|0)<0?(o=0,ha(178,C|0),B=o,o=0,B&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+d;while(1){a[e>>0]=0;e=(c[D>>2]|0)+1|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}e=Na()|0;d=c[C>>2]|0;if(!d)Ya(e|0);if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);Ya(e|0)}}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do{if(!y)h=19;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))h=17;if((h|0)==17?(f=y<<2,o=0,g=ka(67,f|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=g;h=g+(y<<2)|0;c[z+8>>2]=h;iw(g|0,0,f|0)|0;c[B>>2]=h;h=19;break}e=Na()|0;d=c[z>>2]|0;f=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}}while(0);if((h|0)==19){h=b+8|0;b:do{if((c[h>>2]|0)>0){j=b+4572|0;k=$(y,x)|0;l=k+1|0;m=b+4576|0;n=(y|0)>0;p=b+136|0;q=b+144|0;r=b+140|0;s=b+132|0;t=b+88|0;u=b+4568|0;v=0;c:while(1){f=c[C>>2]|0;e=f+1|0;c[j>>2]=e;f=f+l|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];g=c[w>>2]|0;a[e+g>>0]=a[e+(g+-1)>>0]|0;a[(c[m>>2]|0)+-1>>0]=a[c[j>>2]>>0]|0;o=0;ia(81,b|0,0);g=o;o=0;if(g&1){h=30;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+x|0;c[j>>2]=e;d=(c[m>>2]|0)+x|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+((c[s>>2]|0)-k)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){h=31;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){h=43;break b}}if((h|0)==30){e=Na()|0;break}else if((h|0)==31){e=Na()|0;break}}else h=43}while(0);do{if((h|0)==43){o=0;ha(183,b|0);b=o;o=0;if(b&1){e=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);i=A;return}}while(0);d=c[z>>2]|0;f=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-f|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(e|0);if((c[D>>2]|0)!=(d|0))c[D>>2]=d;cj(d);Ya(e|0)}function Oh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=b+4572|0;e=c[o>>2]|0;r=b+148|0;if((c[r>>2]|0)<=0)return;p=b+4576|0;q=b+4580|0;h=e;i=d[e+-1>>0]|0;e=d[e>>0]|0;n=0;while(1){m=c[p>>2]|0;l=d[m+(n+-1)>>0]|0;g=n+1|0;f=d[h+g>>0]|0;k=c[q>>2]|0;j=e-i|0;h=i-l|0;k=((((a[k+(f-e)>>0]|0)*9|0)+(a[k+j>>0]|0)|0)*9|0)+(a[k+h>>0]|0)|0;if(!k){g=(Qh(b,n,0)|0)+n|0;f=c[o>>2]|0;e=d[f+(g+-1)>>0]|0;f=d[f+g>>0]|0}else{i=e-l>>31;if((i^h|0)<0)h=e;else h=l+((i^j|0)<0?0:j)|0;m=Ph(b,k,d[m+n>>0]|0,h,0)|0;a[(c[p>>2]|0)+n>>0]=m}if((g|0)>=(c[r>>2]|0))break;h=c[o>>2]|0;i=e;e=f;n=g}return}function Ph(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&255|0)!=(f|0))f=f>>31&255^255;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<23){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j< >2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}function Qh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=b+4576|0;h=c[i>>2]|0;f=a[h+(e+-1)>>0]|0;j=b+148|0;h=Rh(b,f,h+e|0,(c[j>>2]|0)-e|0)|0;g=h+e|0;if((g|0)==(c[j>>2]|0)){j=h;return j|0}f=f&255;e=d[(c[b+4572>>2]|0)+g>>0]|0;j=f-e|0;if((((j|0)>-1?j:0-j|0)|0)<1)f=(Sh(b,b+4556|0)|0)+f|0;else f=($(Sh(b,b+4544|0)|0,e-f>>31|1)|0)+e|0;a[(c[i>>2]|0)+g>>0]=f;j=b+4568|0;b=c[j>>2]|0;c[j>>2]=(b|0)<1?0:b+-1|0;j=h+1|0;return j|0}function Rh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4568|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1< >2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;iw(e|0,d|0,g|0)|0;return g|0}function Sh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do{if((f|0)<(22-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f< >2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,8)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}function Th(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m;Ei(k,255,0);l=b+152|0;if(((c[k+4>>2]|0)==(c[l>>2]|0)?(c[k+8>>2]|0)==(c[b+156>>2]|0):0)?(c[k+12>>2]|0)==(c[b+160>>2]|0):0){l=c[8900]|0;c[b+4580>>2]=l+(((c[8901]|0)-l|0)>>>1);i=m;return}e=b+4584|0;f=b+4588|0;g=c[f>>2]|0;d=c[e>>2]|0;h=g-d|0;if(h>>>0>=512){if(h>>>0>512?(j=d+512|0,(g|0)!=(j|0)):0)c[f>>2]=j}else{ie(e,512-h|0);d=c[e>>2]|0}k=b+4580|0;c[k>>2]=d+256;j=b+160|0;g=b+156|0;h=-256;while(1){d=c[j>>2]|0;if((h|0)>(0-d|0)){e=c[g>>2]|0;if((h|0)>(0-e|0)){f=c[l>>2]|0;if((h|0)>(0-f|0))if((h|0)>=0){if((h|0)<1){a[(c[k>>2]|0)+h>>0]=0;h=1;continue}if((f|0)<=(h|0))if((e|0)>(h|0))d=2;else d=(d|0)>(h|0)?3:4;else d=1}else d=-1;else d=-2}else d=-3}else d=-4;a[(c[k>>2]|0)+h>>0]=d;h=h+1|0;if((h|0)==256)break}i=m;return}function Uh(a){a=a|0;var b=0,d=0;c[a>>2]=35688;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}a=a+88|0;b=c[a>>2]|0;c[a>>2]=0;if(!b)return;Bb[c[(c[b>>2]|0)+4>>2]&255](b);return}function Vh(a){a=a|0;var b=0,d=0;c[a>>2]=35688;b=c[a+4584>>2]|0;if(b){d=a+4588|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}c[a>>2]=36736;b=c[a+92>>2]|0;if(b){d=a+96|0;if((c[d>>2]|0)!=(b|0))c[d>>2]=b;cj(b)}d=a+88|0;b=c[d>>2]|0;c[d>>2]=0;if(!b){cj(a);return}Bb[c[(c[b>>2]|0)+4>>2]&255](b);cj(a);return}function Wh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=i;i=i+352|0;x=w+328|0;y=w+192|0;e=w+343|0;f=w+342|0;g=w+341|0;h=w+340|0;r=w+176|0;k=w+168|0;l=w+160|0;m=w+152|0;v=w;t=w+136|0;if((c[b+28>>2]|0)!=0?(c[b+20>>2]|0)!=1:0){s=b+4|0;u=b+32|0;j=c[u>>2]|0;if(!j){b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[e>>0]|0;Aa(44,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}b=c[b+12>>2]|0;if((b|0)==8)switch(j|0){case 1:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[f>>0]|0;Aa(45,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[g>>0]|0;Aa(46,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(48)|0;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];a[x>>0]=a[h>>0]|0;Aa(47,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=y+56|0;g=y+4|0;c[y>>2]=36160;c[j>>2]=36180;o=0;ia(62,y+56|0,g|0);w=o;o=0;if(w&1){z=Na()|0;fn(j);Ya(z|0)}c[y+128>>2]=0;c[y+132>>2]=-1;c[y>>2]=36200;c[y+56>>2]=36220;o=0;ha(180,g|0);w=o;o=0;do{if(w&1)b=Na()|0;else{c[g>>2]=36236;h=y+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[y+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);w=o;o=0;if(w&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,y|0,49007,21)|0;x=o;o=0;do{if((!(x&1)?(o=0,p=ra(36,b|0,c[u>>2]|0)|0,x=o,o=0,!(x&1)):0)?(o=0,ma(28,p|0,50997,18)|0,x=o,o=0,!(x&1)):0){f=Ma(16)|0;o=0;ia(64,r|0,g|0);x=o;o=0;if(!(x&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,r|0);x=o;o=0;if(x&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(r);if(!e)break}else b=Na()|0;La(f|0)}else z=34}while(0);if((z|0)==34)b=Na()|0;c[y>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}if((b|0)<=8){b=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,b|0,8,35648);z=o;o=0;if(!(z&1))lb(b|0,824,96);z=Na()|0;La(b|0);Ya(z|0)}e=16-b|0;switch(j|0){case 1:{b=bj(60)|0;c[k>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];Aa(41,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 2:{b=bj(60)|0;c[l>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[l>>2];c[x+4>>2]=c[l+4>>2];Aa(42,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}case 3:{b=bj(60)|0;c[m>>2]=e;o=0;c[y>>2]=c[d>>2];c[y+4>>2]=c[d+4>>2];c[y+8>>2]=c[d+8>>2];c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];Aa(43,b|0,y|0,s|0,x|0);z=o;o=0;if(!(z&1)){z=b;i=w;return z|0}z=Na()|0;cj(b);Ya(z|0)}default:{j=v+56|0;g=v+4|0;c[v>>2]=36160;c[j>>2]=36180;o=0;ia(62,v+56|0,g|0);y=o;o=0;if(y&1){z=Na()|0;fn(j);Ya(z|0)}c[v+128>>2]=0;c[v+132>>2]=-1;c[v>>2]=36200;c[v+56>>2]=36220;o=0;ha(180,g|0);y=o;o=0;do{if(y&1)b=Na()|0;else{c[g>>2]=36236;h=v+36|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[v+52>>2]=16;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;o=0;ia(63,g|0,x|0);y=o;o=0;if(y&1){b=Na()|0;Im(x);Im(h);nn(g);break}Im(x);o=0;b=ma(28,v|0,49007,21)|0;y=o;o=0;do{if((!(y&1)?(o=0,q=ra(36,b|0,c[u>>2]|0)|0,y=o,o=0,!(y&1)):0)?(o=0,ma(28,q|0,50997,18)|0,y=o,o=0,!(y&1)):0){f=Ma(16)|0;o=0;ia(64,t|0,g|0);y=o;o=0;if(!(y&1)){if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;Aa(36,f|0,9,35648,t|0);y=o;o=0;if(y&1)e=1;else{o=0;wa(6,f|0,824,96);o=0;e=0}b=Na()|0;Im(t);if(!e)break}else b=Na()|0;La(f|0)}else z=64}while(0);if((z|0)==64)b=Na()|0;c[v>>2]=36200;c[j>>2]=36220;c[g>>2]=36236;Im(h);nn(g);fn(j);z=b;Ya(z|0)}}while(0);z=b;fn(j);Ya(z|0)}}}e=c[d+4>>2]|0;f=bj(16)|0;b=c[b+16>>2]|0;if(!e){z=c[d>>2]|0;c[f>>2]=36132;c[f+4>>2]=z;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}else{c[f>>2]=36108;c[f+4>>2]=e;c[f+8>>2]=3;c[f+12>>2]=b;z=f;i=w;return z|0}return 0}function Xh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;h=i;i=i+32|0;l=h;Ei(l,255,0);k=c[e+4>>2]|0;j=c[e+8>>2]|0;j=(j|0)==0?c[l+8>>2]|0:j;g=c[e+12>>2]|0;g=(g|0)==0?c[l+12>>2]|0:g;e=c[e+16>>2]|0;f=c[l+16>>2]|0;c[d+152>>2]=(k|0)==0?c[l+4>>2]|0:k;c[d+156>>2]=j;c[d+160>>2]=g;di(d);g=0;do{c[d+164+(g*12|0)>>2]=4;c[d+164+(g*12|0)+4>>2]=0;b[d+164+(g*12|0)+8>>1]=0;b[d+164+(g*12|0)+10>>1]=1;g=g+1|0}while((g|0)!=365);l=((e|0)==0?f:e)&255;c[d+4544>>2]=4;c[d+4548>>2]=0;a[d+4552>>0]=l;a[d+4553>>0]=1;a[d+4554>>0]=0;c[d+4556>>2]=4;c[d+4560>>2]=1;a[d+4564>>0]=l;a[d+4565>>0]=1;a[d+4566>>0]=0;c[d+4568>>2]=0;i=h;return}function Yh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=b+88|0;h=c[d>>2]|0;c[d>>2]=0;d=c[i>>2]|0;c[i>>2]=h;if(d)Bb[c[(c[d>>2]|0)+4>>2]&255](d);i=f+4|0;h=c[i>>2]|0;a[b+4596>>0]=g&1;d=b+132|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];Wd(b,f);Zh(b);d=c[b+116>>2]|0;b=c[b+112>>2]|0;while(1){g=d+-1|0;e=(a[g>>0]|0)==-1?7:8;if((b|0)<(e|0))break;else{d=g;b=b-e|0}}d=d-h|0;g=c[i>>2]|0;if(!g)return;c[i>>2]=g+d;f=f+8|0;c[f>>2]=(c[f>>2]|0)-d;return}function Zh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=i;i=i+32|0;C=A+12|0;z=A;w=b+148|0;x=(c[w>>2]|0)+4|0;if((c[b+28>>2]|0)==1)y=c[b+20>>2]|0;else y=1;d=$(y<<1,x)|0;c[C>>2]=0;D=C+4|0;c[D>>2]=0;c[C+8>>2]=0;a:do{if(d){if(!(d>>>0>1431655765?(o=0,ha(178,C|0),B=o,o=0,B&1):0))h=6;if((h|0)==6?(o=0,e=ka(67,d*3|0)|0,B=o,o=0,!(B&1)):0){c[D>>2]=e;c[C>>2]=e;c[C+8>>2]=e+(d*3|0);while(1){a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;e=(c[D>>2]|0)+3|0;c[D>>2]=e;d=d+-1|0;if(!d)break a}}f=Na()|0;d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}}while(0);c[z>>2]=0;B=z+4|0;c[B>>2]=0;c[z+8>>2]=0;do{if(!y)h=19;else{if(!(y>>>0>1073741823?(o=0,ha(178,z|0),v=o,o=0,v&1):0))h=17;if((h|0)==17?(f=y<<2,o=0,g=ka(67,f|0)|0,v=o,o=0,!(v&1)):0){c[z>>2]=g;h=g+(y<<2)|0;c[z+8>>2]=h;iw(g|0,0,f|0)|0;c[B>>2]=h;h=19;break}f=Na()|0;d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}}while(0);if((h|0)==19){h=b+8|0;b:do{if((c[h>>2]|0)>0){j=b+4572|0;k=$(y,x)|0;l=k+1|0;m=b+4576|0;n=(y|0)>0;p=b+136|0;q=b+144|0;r=b+140|0;s=b+132|0;t=b+88|0;u=b+4568|0;v=0;c:while(1){f=c[C>>2]|0;e=f+3|0;c[j>>2]=e;f=f+(l*3|0)|0;c[m>>2]=f;if(!(v&1))d=f;else{c[j>>2]=f;c[m>>2]=e;d=e;e=f}if(n){g=c[z>>2]|0;f=0;do{c[u>>2]=c[g+(f<<2)>>2];d=c[w>>2]|0;g=e+(d*3|0)|0;e=e+((d+-1|0)*3|0)|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;e=c[j>>2]|0;g=(c[m>>2]|0)+-3|0;a[g>>0]=a[e>>0]|0;a[g+1>>0]=a[e+1>>0]|0;a[g+2>>0]=a[e+2>>0]|0;o=0;ia(82,b|0,0);g=o;o=0;if(g&1){h=30;break c}g=c[z>>2]|0;c[g+(f<<2)>>2]=c[u>>2];e=(c[j>>2]|0)+(x*3|0)|0;c[j>>2]=e;d=(c[m>>2]|0)+(x*3|0)|0;c[m>>2]=d;f=f+1|0}while((f|0)<(y|0))}g=c[p>>2]|0;if(((g|0)<=(v|0)?(v|0)<((c[q>>2]|0)+g|0):0)?(g=c[t>>2]|0,o=0,Aa(c[(c[g>>2]|0)+8>>2]|0,g|0,d+(((c[s>>2]|0)-k|0)*3|0)|0,c[r>>2]|0,x|0),g=o,o=0,g&1):0){h=31;break}v=v+1|0;if((v|0)>=(c[h>>2]|0)){h=43;break b}}if((h|0)==30){f=Na()|0;break}else if((h|0)==31){f=Na()|0;break}}else h=43}while(0);do{if((h|0)==43){o=0;ha(183,b|0);b=o;o=0;if(b&1){f=Na()|0;break}d=c[z>>2]|0;e=d;if(d){f=c[B>>2]|0;if((f|0)!=(d|0))c[B>>2]=f+(~((f+-4-e|0)>>>2)<<2);cj(d)}d=c[C>>2]|0;if(!d){i=A;return}e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);i=A;return}}while(0);d=c[z>>2]|0;e=d;if(d){g=c[B>>2]|0;if((g|0)!=(d|0))c[B>>2]=g+(~((g+-4-e|0)>>>2)<<2);cj(d)}}d=c[C>>2]|0;if(!d)Ya(f|0);e=c[D>>2]|0;if((e|0)!=(d|0))c[D>>2]=e+(~(((e+-3-d|0)>>>0)/3|0)*3|0);cj(d);Ya(f|0)}function _h(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=b+148|0;if((c[A>>2]|0)<=0)return;B=b+4576|0;C=b+4572|0;D=b+4580|0;z=0;while(1){w=z+-1|0;i=c[B>>2]|0;j=c[C>>2]|0;e=z+1|0;h=d[j+(z*3|0)>>0]|0;y=c[D>>2]|0;k=d[j+(w*3|0)>>0]|0;l=h-k|0;m=d[i+(w*3|0)>>0]|0;n=k-m|0;o=((((a[y+((d[j+(e*3|0)>>0]|0)-h)>>0]|0)*9|0)+(a[y+l>>0]|0)|0)*9|0)+(a[y+n>>0]|0)|0;g=d[j+(z*3|0)+1>>0]|0;p=d[j+(w*3|0)+1>>0]|0;q=g-p|0;r=d[i+(w*3|0)+1>>0]|0;s=p-r|0;t=((((a[y+((d[j+(e*3|0)+1>>0]|0)-g)>>0]|0)*9|0)+(a[y+q>>0]|0)|0)*9|0)+(a[y+s>>0]|0)|0;f=d[j+(z*3|0)+2>>0]|0;u=d[j+(w*3|0)+2>>0]|0;v=f-u|0;w=d[i+(w*3|0)+2>>0]|0;x=u-w|0;y=((((a[y+((d[j+(e*3|0)+2>>0]|0)-f)>>0]|0)*9|0)+(a[y+v>>0]|0)|0)*9|0)+(a[y+x>>0]|0)|0;if(!(t|o|y))e=($h(b,z,0)|0)+z|0;else{j=d[i+(z*3|0)>>0]|0;i=h-m>>31;if((i^n|0)>=0)if((i^l|0)<0)h=m;else h=m-k+h|0;j=ai(b,o,j,h,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+1>>0]|0;h=g-r>>31;if((h^s|0)>=0)if((h^q|0)<0)g=r;else g=r-p+g|0;h=ai(b,t,i,g,0)|0;i=d[(c[B>>2]|0)+(z*3|0)+2>>0]|0;g=f-w>>31;if((g^x|0)>=0)if((g^v|0)<0)f=w;else f=w-u+f|0;y=ai(b,y,i,f,0)|0;z=(c[B>>2]|0)+(z*3|0)|0;a[z>>0]=j;a[z+1>>0]=h;a[z+2>>0]=y}if((e|0)<(c[A>>2]|0))z=e;else break}return}function $h(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+16|0;n=l+3|0;o=l;h=b+4576|0;e=c[h>>2]|0;f=e+((d+-1|0)*3|0)|0;j=a[f>>0]|0;k=a[f+1>>0]|0;f=a[f+2>>0]|0;a[o>>0]=j;a[o+1>>0]=k;a[o+2>>0]=f;m=b+148|0;g=(c[m>>2]|0)-d|0;a[n>>0]=a[o>>0]|0;a[n+1>>0]=a[o+1>>0]|0;a[n+2>>0]=a[o+2>>0]|0;g=bi(b,n,e+(d*3|0)|0,g)|0;e=g+d|0;if((e|0)==(c[m>>2]|0)){o=g;i=l;return o|0}n=(c[b+4572>>2]|0)+(e*3|0)|0;d=a[n>>0]|0;m=a[n+1>>0]|0;n=a[n+2>>0]|0;o=c[h>>2]|0;p=b+4544|0;h=ci(b,p)|0;q=ci(b,p)|0;d=d&255;m=m&255;m=($(m-(k&255)>>31|1,q)|0)+m&255;n=n&255;n=($(n-(f&255)>>31|1,ci(b,p)|0)|0)+n&255;o=o+(e*3|0)|0;a[o>>0]=($(d-(j&255)>>31|1,h)|0)+d;a[o+1>>0]=m;a[o+2>>0]=n;o=b+4568|0;n=c[o>>2]|0;c[o>>2]=(n|0)<1?0:n+-1|0;o=g+1|0;i=l;return o|0}function ai(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0;s=e>>31;m=(s^e)-s|0;r=d+164+(m*12|0)+10|0;f=b[r>>1]|0;q=d+164+(m*12|0)|0;h=c[q>>2]|0;if((f|0)<(h|0))if((f<<1|0)<(h|0))if((f<<2|0)<(h|0))if((f<<3|0)<(h|0))if((f<<4|0)<(h|0)){i=5;while(1)if((f<>1]^s)-s+g|0;if((f&255|0)!=(f|0))f=f>>31&255^255;h=d+112|0;if((c[h>>2]|0)<8)ge(d);g=d+108|0;j=c[g>>2]|0;k=j>>>24;l=c[2832+(i<<11)+(k<<3)+4>>2]|0;if(!l){h=Jg(d)|0;if((h|0)<23){if(i)h=(Kg(d,i)|0)+(h<>31^h>>1;if((((h|0)>-1?h:0-h|0)|0)>65535){f=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,f|0,5,35648);e=o;o=0;if(e&1){e=Na()|0;La(f|0);Ya(e|0)}else lb(f|0,824,96)}}else{c[h>>2]=(c[h>>2]|0)-l;c[g>>2]=j< >2]|0}l=d+164+(m*12|0)+4|0;g=c[l>>2]|0;if(!i){d=b[r>>1]|0;i=d;h=(g<<1)+-1+(d<<16>>16)>>31^h}else i=b[r>>1]|0;j=i<<16>>16==64;d=j&1;k=g+h>>d;j=j?32:i<<16>>16;c[q>>2]=((h|0)>-1?h:0-h|0)+(c[q>>2]|0)>>d;g=j+1|0;b[r>>1]=g;i=g+k|0;if((i|0)<1){r=b[p>>1]|0;b[p>>1]=(r&65535)-(r<<16>>16>-128&1);r=(i|0)>(~j|0)?i:0-j|0;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}if((k|0)<=0){r=k;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}r=k-g|0;q=b[p>>1]|0;b[p>>1]=(q<<16>>16<127&1)+(q&65535);r=(r|0)>0?0:r;c[l>>2]=r;s=h^s;e=e>>>31;e=f+e|0;e=e+s|0;e=e&255;return e|0}function bi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,p=0,q=0;j=b+112|0;k=b+108|0;l=b+4568|0;g=c[j>>2]|0;h=0;while(1){if((g|0)<1){ge(b);g=c[j>>2]|0}i=c[k>>2]|0;g=g+-1|0;c[j>>2]=g;c[k>>2]=i<<1;if((i|0)>=0){m=8;break}i=c[l>>2]|0;p=1< >2];q=f-h|0;q=(p|0)<(q|0)?p:q;h=q+h|0;if((q|0)==(p|0))c[l>>2]=(i|0)>30?31:i+1|0;if((h|0)==(f|0)){g=f;break}}if((m|0)==8)if((h|0)!=(f|0)){g=c[l>>2]|0;if((g+-4|0)>>>0<28)g=Kg(b,c[36476+(g<<2)>>2]|0)|0;else g=0;g=g+h|0;if((g|0)>(f|0)){g=Ma(16)|0;if((a[8]|0)==0?(Ha(8)|0)!=0:0){kb(72,35648,n|0)|0;Pa(8)}o=0;wa(7,g|0,5,35648);q=o;o=0;if(q&1){q=Na()|0;La(g|0);Ya(q|0)}else lb(g|0,824,96)}}else g=f;if((g|0)<=0)return g|0;h=0;do{q=e+(h*3|0)|0;a[q>>0]=a[d>>0]|0;a[q+1>>0]=a[d+1>>0]|0;a[q+2>>0]=a[d+2>>0]|0;h=h+1|0}while((h|0)!=(g|0));return g|0}function ci(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=e+9|0;f=d[k>>0]|0;i=e+4|0;h=($(f>>>1,c[i>>2]|0)|0)+(c[e>>2]|0)|0;if((f|0)<(h|0)){g=0;do{f=f<<1;g=g+1|0}while((f|0)<(h|0))}else g=0;h=c[36476+(c[b+4568>>2]<<2)>>2]|0;f=Jg(b)|0;do{if((f|0)<(22-h|0))if(!g){b=c[i>>2]|0;h=b+f|0;g=h&1;h=(g+h|0)/2|0;j=8;break}else{f=(Kg(b,g)|0)+(f< >2]|0;h=f+b|0;l=h&1;g=l;i=1;h=(l+h|0)/2|0;break}else{f=(Kg(b,8)|0)+1|0;b=c[i>>2]|0;h=f+b|0;i=h&1;h=(i+h|0)/2|0;if(!g){g=i;j=8}else{g=i;i=1}}}while(0);if((j|0)==8)i=d[e+10>>0]<<1>>>0>=(d[k>>0]|0)>>>0;h=(g|0)!=0^i?h:0-h|0;if((h|0)<0){l=e+10|0;a[l>>0]=(d[l>>0]|0)+1}f=(f+1-b>>1)+(c[e>>2]|0)|0;c[e>>2]=f;g=a[k>>0]|0;if(g<<24>>24!=(a[e+8>>0]|0)){l=g;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}c[e>>2]=f>>1;l=(g&255)>>>1;a[k>>0]=l;e=e+10|0;a[e>>0]=(d[e>>0]|0)>>>1;l=l&255;l=l+1|0;l=l&255;a[k>>0]=l;return h|0}function Lp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;n=i;i=i+128|0;h=n;q=n+116|0;r=n+104|0;k=n+20|0;m=n+16|0;l=n+12|0;p=n+8|0;j=n+4|0;a[q>>0]=a[58887]|0;a[q+1>>0]=a[58888]|0;a[q+2>>0]=a[58889]|0;a[q+3>>0]=a[58890]|0;a[q+4>>0]=a[58891]|0;a[q+5>>0]=a[58892]|0;up(q+1|0,58893,0,c[e+4>>2]|0);b=Xo()|0;c[h>>2]=g;g=r+(Su(r,12,b,q,h)|0)|0;q=vp(r,g,e)|0;b=jn(e)|0;c[p>>2]=b;o=0;pa(3,r|0,q|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){r=Na()|0;pm(b)|0;Ya(r|0)}else{pm(b)|0;c[j>>2]=c[d>>2];q=c[m>>2]|0;r=c[l>>2]|0;c[h>>2]=c[j>>2];r=Uu(h,k,q,r,e,f)|0;i=n;return r|0}return 0}function Mp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0;n=i;i=i+240|0;h=n+8|0;a=n;q=n+204|0;k=n+32|0;m=n+28|0;l=n+24|0;p=n+20|0;j=n+16|0;r=a;c[r>>2]=37;c[r+4>>2]=0;up(a+1|0,58895,0,c[d+4>>2]|0);r=Xo()|0;s=h;c[s>>2]=f;c[s+4>>2]=g;g=q+(Su(q,23,r,a,h)|0)|0;f=vp(q,g,d)|0;a=jn(d)|0;c[p>>2]=a;o=0;pa(3,q|0,f|0,g|0,k|0,m|0,l|0,p|0);g=o;o=0;if(g&1){s=Na()|0;pm(a)|0;Ya(s|0)}else{pm(a)|0;c[j>>2]=c[b>>2];r=c[m>>2]|0;s=c[l>>2]|0;c[h>>2]=c[j>>2];s=Uu(h,k,r,s,d,e)|0;i=n;return s|0}return 0}function Np(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+352|0;u=z+312|0;q=z+48|0;p=z+32|0;l=z+24|0;g=z+8|0;n=z;s=z+316|0;t=z+80|0;k=z+84|0;y=z+76|0;x=z+72|0;v=z+68|0;w=z+64|0;m=n;c[m>>2]=37;c[m+4>>2]=0;m=Bp(n+1|0,58898,c[d+4>>2]|0)|0;c[t>>2]=s;a=Xo()|0;if(m){c[g>>2]=c[d+8>>2];h[g+8>>3]=f;g=Su(s,30,a,n,g)|0}else{h[l>>3]=f;g=Su(s,30,a,n,l)|0}a:do{if((g|0)>29){o=0;a=ua(3)|0;g=o;o=0;g=g&1;if(m){if(!g?(o=0,c[p>>2]=c[d+8>>2],h[p+8>>3]=f,j=va(17,t|0,a|0,n|0,p|0)|0,r=o,o=0,!(r&1)):0)A=12}else if(!g?(o=0,c[q>>2]=c[d+8>>2],h[q+8>>3]=f,r=va(17,t|0,a|0,n|0,q|0)|0,q=o,o=0,!(q&1)):0){j=r;A=12}do{if((A|0)==12){a=c[t>>2]|0;if(!a){o=0;xa(6);r=o;o=0;if(r&1)break;g=c[t>>2]|0}else g=a;a=g;n=g;A=16;break a}}while(0);a=Na()|0}else{a=c[t>>2]|0;n=0;j=g;A=16}}while(0);if((A|0)==16){l=a+j|0;m=vp(a,l,d)|0;do{if((a|0)==(s|0)){a=s;g=0;A=22}else{j=Fl(j<<3)|0;if(!j){o=0;xa(6);A=o;o=0;if(A&1){g=0;A=20;break}a=c[t>>2]|0}g=j;k=j;A=22}}while(0);do{if((A|0)==22){o=0;j=ka(68,d|0)|0;t=o;o=0;if(!(t&1)){c[v>>2]=j;o=0;pa(4,a|0,m|0,l|0,k|0,y|0,x|0,v|0);v=o;o=0;if(v&1){a=Na()|0;pm(j)|0;break}pm(j)|0;c[w>>2]=c[b>>2];A=c[y>>2]|0;a=c[x>>2]|0;o=0;c[u>>2]=c[w>>2];a=ja(40,u|0,k|0,A|0,a|0,d|0,e|0)|0;A=o;o=0;if(!(A&1)){c[b>>2]=a;if(g)Gl(g);if(n)Gl(n);i=z;return a|0}else A=20}else A=20}}while(0);if((A|0)==20)a=Na()|0;if(g)Gl(g);if(n)Gl(n)}Ya(a|0);return 0}function Op(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;y=i;i=i+16|0;z=y;x=Is(j,44212)|0;v=Is(j,44368)|0;Cb[c[(c[v>>2]|0)+20>>2]&127](z,v);c[h>>2]=f;j=a[b>>0]|0;switch(j<<24>>24){case 43:case 45:{o=0;j=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,j|0)|0;w=o;o=0;if(w&1)u=8;else{m=c[h>>2]|0;c[h>>2]=m+4;c[m>>2]=j;m=b+1|0;u=10}break}default:{m=b;u=10}}a:do{if((u|0)==10){w=e;b:do{if((w-m|0)>1?(a[m>>0]|0)==48:0){k=m+1|0;switch(a[k>>0]|0){case 88:case 120:break;default:{u=11;break b}}o=0;j=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,48)|0;t=o;o=0;if(t&1){u=8;break a}t=c[h>>2]|0;c[h>>2]=t+4;c[t>>2]=j;m=m+2|0;o=0;j=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,a[k>>0]|0)|0;t=o;o=0;if(t&1){u=8;break a}t=c[h>>2]|0;c[h>>2]=t+4;c[t>>2]=j;if(m>>>0 >>0){j=m;while(1){k=a[j>>0]|0;o=0;l=ua(3)|0;t=o;o=0;if(t&1)break;o=0;k=ra(39,k<<24>>24|0,l|0)|0;t=o;o=0;if(t&1)break;if(!k){t=m;break b}j=j+1|0;if(j>>>0>=e>>>0){t=m;break b}}j=Na()|0;break a}else{t=m;j=m}}else u=11}while(0);c:do{if((u|0)==11)if(m>>>0 >>0){j=m;while(1){k=a[j>>0]|0;o=0;l=ua(3)|0;t=o;o=0;if(t&1)break;o=0;k=ra(40,k<<24>>24|0,l|0)|0;t=o;o=0;if(t&1)break;if(!k){t=m;break c}j=j+1|0;if(j>>>0>=e>>>0){t=m;break c}}j=Na()|0;break a}else{t=m;j=m}}while(0);r=a[z>>0]|0;s=z+4|0;if(((r&1)==0?(r&255)>>>1:c[s>>2]|0)|0){if((t|0)!=(j|0)?(n=j+-1|0,t>>>0 >>0):0){l=t;k=n;do{r=a[l>>0]|0;a[l>>0]=a[k>>0]|0;a[k>>0]=r;l=l+1|0;k=k+-1|0}while(l>>>0 >>0)}o=0;n=ka(c[(c[v>>2]|0)+16>>2]|0,v|0)|0;r=o;o=0;if(r&1){u=8;break}p=z+8|0;q=z+1|0;d:do{if(t>>>0 >>0){k=0;l=0;r=t;while(1){m=a[((a[z>>0]&1)==0?q:c[p>>2]|0)+l>>0]|0;if(m<<24>>24>0&(k|0)==(m<<24>>24|0)){k=c[h>>2]|0;c[h>>2]=k+4;c[k>>2]=n;k=a[z>>0]|0;m=0;l=(l>>>0<(((k&1)==0?(k&255)>>>1:c[s>>2]|0)+-1|0)>>>0&1)+l|0}else m=k;o=0;k=ra(c[(c[x>>2]|0)+44>>2]|0,x|0,a[r>>0]|0)|0;A=o;o=0;if(A&1)break;A=c[h>>2]|0;c[h>>2]=A+4;c[A>>2]=k;r=r+1|0;if(r>>>0>=j>>>0)break d;else k=m+1|0}j=Na()|0;break a}}while(0);k=f+(t-b<<2)|0;m=c[h>>2]|0;if((k|0)!=(m|0)){l=m+-4|0;if(k>>>0 >>0){do{A=c[k>>2]|0;c[k>>2]=c[l>>2];c[l>>2]=A;k=k+4|0;l=l+-4|0}while(k>>>0 >>0);n=x;k=m}else{n=x;k=m}}else n=x}else{o=0;va(c[(c[x>>2]|0)+48>>2]|0,x|0,t|0,j|0,c[h>>2]|0)|0;A=o;o=0;if(A&1){u=8;break}k=(c[h>>2]|0)+(j-t<<2)|0;c[h>>2]=k;n=x}e:do{if(j>>>0 >>0){while(1){k=a[j>>0]|0;if(k<<24>>24==46){l=j;break}o=0;l=ra(c[(c[n>>2]|0)+44>>2]|0,x|0,k|0)|0;A=o;o=0;if(A&1){u=4;break}A=c[h>>2]|0;k=A+4|0;c[h>>2]=k;c[A>>2]=l;j=j+1|0;if(j>>>0>=e>>>0)break e}if((u|0)==4){j=Na()|0;break a}o=0;j=ka(c[(c[v>>2]|0)+12>>2]|0,v|0)|0;A=o;o=0;if(A&1){u=8;break a}A=c[h>>2]|0;k=A+4|0;c[h>>2]=k;c[A>>2]=j;j=l+1|0}}while(0);o=0;va(c[(c[x>>2]|0)+48>>2]|0,x|0,j|0,e|0,k|0)|0;A=o;o=0;if(A&1)u=8;else{A=(c[h>>2]|0)+(w-j<<2)|0;c[h>>2]=A;c[g>>2]=(d|0)==(e|0)?A:f+(d-b<<2)|0;Im(z);i=y;return}}}while(0);if((u|0)==8)j=Na()|0;Im(z);Ya(j|0)}function Pp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+352|0;u=z+304|0;q=z+48|0;p=z+32|0;l=z+24|0;g=z+8|0;n=z;s=z+308|0;t=z+72|0;k=z+76|0;y=z+68|0;x=z+64|0;v=z+60|0;w=z+56|0;m=n;c[m>>2]=37;c[m+4>>2]=0;m=Bp(n+1|0,58899,c[d+4>>2]|0)|0;c[t>>2]=s;a=Xo()|0;if(m){c[g>>2]=c[d+8>>2];h[g+8>>3]=f;g=Su(s,30,a,n,g)|0}else{h[l>>3]=f;g=Su(s,30,a,n,l)|0}a:do{if((g|0)>29){o=0;a=ua(3)|0;g=o;o=0;g=g&1;if(m){if(!g?(o=0,c[p>>2]=c[d+8>>2],h[p+8>>3]=f,j=va(17,t|0,a|0,n|0,p|0)|0,r=o,o=0,!(r&1)):0)A=12}else if(!g?(o=0,h[q>>3]=f,r=va(17,t|0,a|0,n|0,q|0)|0,q=o,o=0,!(q&1)):0){j=r;A=12}do{if((A|0)==12){a=c[t>>2]|0;if(!a){o=0;xa(6);r=o;o=0;if(r&1)break;g=c[t>>2]|0}else g=a;a=g;n=g;A=16;break a}}while(0);a=Na()|0}else{a=c[t>>2]|0;n=0;j=g;A=16}}while(0);if((A|0)==16){l=a+j|0;m=vp(a,l,d)|0;do{if((a|0)==(s|0)){a=s;g=0;A=22}else{j=Fl(j<<3)|0;if(!j){o=0;xa(6);A=o;o=0;if(A&1){g=0;A=20;break}a=c[t>>2]|0}g=j;k=j;A=22}}while(0);do{if((A|0)==22){o=0;j=ka(68,d|0)|0;t=o;o=0;if(!(t&1)){c[v>>2]=j;o=0;pa(4,a|0,m|0,l|0,k|0,y|0,x|0,v|0);v=o;o=0;if(v&1){a=Na()|0;pm(j)|0;break}pm(j)|0;c[w>>2]=c[b>>2];A=c[y>>2]|0;a=c[x>>2]|0;o=0;c[u>>2]=c[w>>2];a=ja(40,u|0,k|0,A|0,a|0,d|0,e|0)|0;A=o;o=0;if(!(A&1)){c[b>>2]=a;if(g)Gl(g);if(n)Gl(n);i=z;return a|0}else A=20}else A=20}}while(0);if((A|0)==20)a=Na()|0;if(g)Gl(g);if(n)Gl(n)}Ya(a|0);return 0}function Qp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0;q=i;i=i+192|0;l=q;b=q+180|0;n=q+160|0;p=q+12|0;k=q+8|0;m=q+4|0;a[b>>0]=a[58901]|0;a[b+1>>0]=a[58902]|0;a[b+2>>0]=a[58903]|0;a[b+3>>0]=a[58904]|0;a[b+4>>0]=a[58905]|0;a[b+5>>0]=a[58906]|0;h=Xo()|0;c[l>>2]=g;b=Su(n,20,h,b,l)|0;g=n+b|0;h=vp(n,g,e)|0;j=jn(e)|0;c[k>>2]=j;o=0;k=ra(37,k|0,44212)|0;r=o;o=0;if(r&1){r=Na()|0;pm(j)|0;Ya(r|0)}else{pm(j)|0;Pb[c[(c[k>>2]|0)+48>>2]&31](k,n,g,p)|0;r=p+(b<<2)|0;c[m>>2]=c[d>>2];c[l>>2]=c[m>>2];r=Uu(l,p,(h|0)==(g|0)?r:p+(h-n<<2)|0,r,e,f)|0;i=q;return r|0}return 0}function Rp(e,f,g,h,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+32|0;w=C+16|0;v=C+12|0;z=C+8|0;x=C+4|0;y=C;n=jn(h)|0;c[z>>2]=n;o=0;z=ra(37,z|0,44220)|0;u=o;o=0;if(u&1){C=Na()|0;pm(n)|0;Ya(C|0)}pm(n)|0;c[j>>2]=0;u=z+8|0;n=c[f>>2]|0;a:do{if((l|0)!=(m|0)){b:while(1){p=n;if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)?(Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1:0){c[f>>2]=0;n=0;p=0}}else n=0;s=(n|0)==0;r=c[g>>2]|0;q=r;do{if(r){if((c[r+12>>2]|0)==(c[r+16>>2]|0)?(Eb[c[(c[r>>2]|0)+36>>2]&127](r)|0)==-1:0){c[g>>2]=0;q=0;B=12;break}if(!s){B=13;break b}}else B=12}while(0);if((B|0)==12){B=0;if(s){B=13;break}else r=0}c:do{if((Gb[c[(c[z>>2]|0)+36>>2]&63](z,a[l>>0]|0,0)|0)<<24>>24==37){r=l+1|0;if((r|0)==(m|0)){B=17;break b}t=Gb[c[(c[z>>2]|0)+36>>2]&63](z,a[r>>0]|0,0)|0;switch(t<<24>>24){case 48:case 69:{s=l+2|0;if((s|0)==(m|0)){B=20;break b}l=r;r=Gb[c[(c[z>>2]|0)+36>>2]&63](z,a[s>>0]|0,0)|0;n=t;break}default:{r=t;n=0}}t=c[(c[e>>2]|0)+36>>2]|0;c[x>>2]=p;c[y>>2]=q;c[v>>2]=c[x>>2];c[w>>2]=c[y>>2];c[f>>2]=Sb[t&15](e,v,w,h,j,k,r,n)|0;l=l+2|0}else{p=a[l>>0]|0;if(p<<24>>24>-1?(A=c[u>>2]|0,(b[A+(p<<24>>24<<1)>>1]&8192)!=0):0){do{l=l+1|0;if((l|0)==(m|0)){l=m;break}p=a[l>>0]|0;if(p<<24>>24<=-1)break}while((b[A+(p<<24>>24<<1)>>1]&8192)!=0);p=r;while(1){if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)?(Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1:0){c[f>>2]=0;n=0}}else n=0;q=(n|0)==0;do{if(r){if((c[r+12>>2]|0)!=(c[r+16>>2]|0))if(q){t=p;break}else break c;if((Eb[c[(c[r>>2]|0)+36>>2]&127](r)|0)!=-1)if(q^(p|0)==0){t=p;r=p;break}else break c;else{c[g>>2]=0;p=0;B=39;break}}else B=39}while(0);if((B|0)==39){B=0;if(q)break c;else{t=p;r=0}}q=n+12|0;p=c[q>>2]|0;s=n+16|0;if((p|0)==(c[s>>2]|0))p=Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else p=d[p>>0]|0;if((p&255)<<24>>24<=-1)break c;if(!(b[(c[u>>2]|0)+(p<<24>>24<<1)>>1]&8192))break c;p=c[q>>2]|0;if((p|0)==(c[s>>2]|0)){Eb[c[(c[n>>2]|0)+40>>2]&127](n)|0;p=t;continue}else{c[q>>2]=p+1;p=t;continue}}}q=n+12|0;p=c[q>>2]|0;r=n+16|0;if((p|0)==(c[r>>2]|0))p=Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else p=d[p>>0]|0;t=Lb[c[(c[z>>2]|0)+12>>2]&63](z,p&255)|0;if(t<<24>>24!=(Lb[c[(c[z>>2]|0)+12>>2]&63](z,a[l>>0]|0)|0)<<24>>24){B=57;break b}p=c[q>>2]|0;if((p|0)==(c[r>>2]|0))Eb[c[(c[n>>2]|0)+40>>2]&127](n)|0;else c[q>>2]=p+1;l=l+1|0}}while(0);n=c[f>>2]|0;if(!((l|0)!=(m|0)&(c[j>>2]|0)==0))break a}if((B|0)==13){c[j>>2]=4;break}else if((B|0)==17){c[j>>2]=4;break}else if((B|0)==20){c[j>>2]=4;break}else if((B|0)==57){c[j>>2]=4;n=c[f>>2]|0;break}}}while(0);if(n){if((c[n+12>>2]|0)==(c[n+16>>2]|0)?(Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1:0){c[f>>2]=0;n=0}}else n=0;l=(n|0)==0;p=c[g>>2]|0;do{if(p){if((c[p+12>>2]|0)==(c[p+16>>2]|0)?(Eb[c[(c[p>>2]|0)+36>>2]&127](p)|0)==-1:0){c[g>>2]=0;B=67;break}if(!l)B=68}else B=67}while(0);if((B|0)==67?l:0)B=68;if((B|0)==68)c[j>>2]=c[j>>2]|2;i=C;return n|0}function Sp(a){a=a|0;return}function Tp(a){a=a|0;cj(a);return}function Up(a){a=a|0;return 2}function Vp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=Rp(a,k,j,e,f,g,58907,58915)|0;i=h;return a|0}function Wp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+16|0;k=j+12|0;l=j+8|0;n=j+4|0;m=j;o=b+8|0;o=Eb[c[(c[o>>2]|0)+20>>2]&127](o)|0;c[n>>2]=c[d>>2];c[m>>2]=c[e>>2];e=a[o>>0]|0;p=(e&1)==0;d=p?o+1|0:c[o+8>>2]|0;e=d+(p?(e&255)>>>1:c[o+4>>2]|0)|0;c[l>>2]=c[n>>2];c[k>>2]=c[m>>2];b=Rp(b,l,k,f,g,h,d,e)|0;i=j;return b|0}function Xp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44220)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];Yp(a,g+24|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function Yp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[c[a>>2]>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(xu(d,j,a,a+168|0,g,f,0)|0)-a|0;if((d|0)<168)c[b>>2]=((d|0)/12|0|0)%7|0;i=h;return}function Zp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44220)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];_p(a,g+16|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function _p(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[(c[a>>2]|0)+4>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(xu(d,j,a,a+288|0,g,f,0)|0)-a|0;if((d|0)<288)c[b>>2]=((d|0)/12|0|0)%12|0;i=h;return}function $p(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44220)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];aq(a,g+20|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function aq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,4)|0;if(!(c[f>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a+-69|0)>>>0<31?a+1900|0:a;c[b>>2]=a+-1900}i=h;return}function bq(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=i;i=i+144|0;l=U+132|0;k=U+116|0;N=U+128|0;x=U+124|0;I=U+120|0;O=U+112|0;P=U+108|0;Q=U+104|0;R=U+100|0;S=U+96|0;T=U+92|0;m=U+88|0;n=U+84|0;p=U+80|0;q=U+76|0;r=U+72|0;s=U+68|0;t=U+64|0;u=U+60|0;v=U+56|0;w=U+52|0;y=U+48|0;z=U+44|0;A=U+40|0;B=U+36|0;C=U+32|0;D=U+28|0;E=U+24|0;F=U+20|0;G=U+16|0;H=U+12|0;J=U+8|0;K=U+4|0;L=U;c[g>>2]=0;M=jn(f)|0;c[N>>2]=M;o=0;N=ra(37,N|0,44220)|0;W=o;o=0;if(W&1){W=Na()|0;pm(M)|0;Ya(W|0)}pm(M)|0;do{switch(j<<24>>24|0){case 65:case 97:{c[x>>2]=c[e>>2];c[l>>2]=c[x>>2];Yp(b,h+24|0,d,l,g,N);V=28;break}case 104:case 66:case 98:{c[I>>2]=c[e>>2];c[l>>2]=c[I>>2];_p(b,h+16|0,d,l,g,N);V=28;break}case 99:{V=b+8|0;V=Eb[c[(c[V>>2]|0)+12>>2]&127](V)|0;c[O>>2]=c[d>>2];c[P>>2]=c[e>>2];j=a[V>>0]|0;e=(j&1)==0;W=e?V+1|0:c[V+8>>2]|0;V=W+(e?(j&255)>>>1:c[V+4>>2]|0)|0;c[k>>2]=c[O>>2];c[l>>2]=c[P>>2];c[d>>2]=Rp(b,k,l,f,g,h,W,V)|0;V=28;break}case 101:case 100:{c[Q>>2]=c[e>>2];c[l>>2]=c[Q>>2];cq(b,h+12|0,d,l,g,N);V=28;break}case 68:{c[R>>2]=c[d>>2];c[S>>2]=c[e>>2];c[k>>2]=c[R>>2];c[l>>2]=c[S>>2];c[d>>2]=Rp(b,k,l,f,g,h,58915,58923)|0;V=28;break}case 70:{c[T>>2]=c[d>>2];c[m>>2]=c[e>>2];c[k>>2]=c[T>>2];c[l>>2]=c[m>>2];c[d>>2]=Rp(b,k,l,f,g,h,58923,58931)|0;V=28;break}case 72:{c[n>>2]=c[e>>2];c[l>>2]=c[n>>2];dq(b,h+8|0,d,l,g,N);V=28;break}case 73:{c[p>>2]=c[e>>2];c[l>>2]=c[p>>2];eq(b,h+8|0,d,l,g,N);V=28;break}case 106:{c[q>>2]=c[e>>2];c[l>>2]=c[q>>2];fq(b,h+28|0,d,l,g,N);V=28;break}case 109:{c[r>>2]=c[e>>2];c[l>>2]=c[r>>2];gq(b,h+16|0,d,l,g,N);V=28;break}case 77:{c[s>>2]=c[e>>2];c[l>>2]=c[s>>2];hq(b,h+4|0,d,l,g,N);V=28;break}case 116:case 110:{c[t>>2]=c[e>>2];c[l>>2]=c[t>>2];iq(b,d,l,g,N);V=28;break}case 112:{c[u>>2]=c[e>>2];c[l>>2]=c[u>>2];jq(b,h+8|0,d,l,g,N);V=28;break}case 114:{c[v>>2]=c[d>>2];c[w>>2]=c[e>>2];c[k>>2]=c[v>>2];c[l>>2]=c[w>>2];c[d>>2]=Rp(b,k,l,f,g,h,58931,58942)|0;V=28;break}case 82:{c[y>>2]=c[d>>2];c[z>>2]=c[e>>2];c[k>>2]=c[y>>2];c[l>>2]=c[z>>2];c[d>>2]=Rp(b,k,l,f,g,h,58942,58947)|0;V=28;break}case 83:{c[A>>2]=c[e>>2];c[l>>2]=c[A>>2];kq(b,h,d,l,g,N);V=28;break}case 84:{c[B>>2]=c[d>>2];c[C>>2]=c[e>>2];c[k>>2]=c[B>>2];c[l>>2]=c[C>>2];c[d>>2]=Rp(b,k,l,f,g,h,58947,58955)|0;V=28;break}case 119:{c[D>>2]=c[e>>2];c[l>>2]=c[D>>2];lq(b,h+24|0,d,l,g,N);V=28;break}case 120:{W=c[(c[b>>2]|0)+20>>2]|0;c[E>>2]=c[d>>2];c[F>>2]=c[e>>2];c[k>>2]=c[E>>2];c[l>>2]=c[F>>2];k=Db[W&63](b,k,l,f,g,h)|0;break}case 88:{V=b+8|0;V=Eb[c[(c[V>>2]|0)+24>>2]&127](V)|0;c[G>>2]=c[d>>2];c[H>>2]=c[e>>2];j=a[V>>0]|0;e=(j&1)==0;W=e?V+1|0:c[V+8>>2]|0;V=W+(e?(j&255)>>>1:c[V+4>>2]|0)|0;c[k>>2]=c[G>>2];c[l>>2]=c[H>>2];c[d>>2]=Rp(b,k,l,f,g,h,W,V)|0;V=28;break}case 121:{c[J>>2]=c[e>>2];c[l>>2]=c[J>>2];aq(b,h+20|0,d,l,g,N);V=28;break}case 89:{c[K>>2]=c[e>>2];c[l>>2]=c[K>>2];mq(b,h+20|0,d,l,g,N);V=28;break}case 37:{c[L>>2]=c[e>>2];c[l>>2]=c[L>>2];nq(b,d,l,g,N);V=28;break}default:{c[g>>2]=c[g>>2]|4;V=28}}}while(0);if((V|0)==28)k=c[d>>2]|0;i=U;return k|0}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<31&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function dq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<24&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function eq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<12&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function fq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,3)|0;d=c[f>>2]|0;if((a|0)<366&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function gq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<13&(d&4|0)==0)c[b>>2]=a+-1;else c[f>>2]=d|4;i=h;return}function hq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<60&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function iq(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=h+8|0;a:while(1){h=c[e>>2]|0;do{if(h){if((c[h+12>>2]|0)==(c[h+16>>2]|0))if((Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[e>>2]=0;h=0;break}else{h=c[e>>2]|0;break}}else h=0}while(0);h=(h|0)==0;a=c[f>>2]|0;do{if(a){if((c[a+12>>2]|0)!=(c[a+16>>2]|0))if(h)break;else break a;if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)!=-1)if(h)break;else break a;else{c[f>>2]=0;k=12;break}}else k=12}while(0);if((k|0)==12){k=0;if(h){a=0;break}else a=0}h=c[e>>2]|0;i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0))h=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else h=d[i>>0]|0;if((h&255)<<24>>24<=-1)break;if(!(b[(c[j>>2]|0)+(h<<24>>24<<1)>>1]&8192))break;h=c[e>>2]|0;a=h+12|0;i=c[a>>2]|0;if((i|0)==(c[h+16>>2]|0)){Eb[c[(c[h>>2]|0)+40>>2]&127](h)|0;continue}else{c[a>>2]=i+1;continue}}h=c[e>>2]|0;do{if(h){if((c[h+12>>2]|0)==(c[h+16>>2]|0))if((Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[e>>2]=0;h=0;break}else{h=c[e>>2]|0;break}}else h=0}while(0);h=(h|0)==0;do{if(a){if((c[a+12>>2]|0)==(c[a+16>>2]|0)?(Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1:0){c[f>>2]=0;k=32;break}if(!h)k=33}else k=32}while(0);if((k|0)==32?h:0)k=33;if((k|0)==33)c[g>>2]=c[g>>2]|2;return}function jq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;k=n+4|0;l=n;m=b+8|0;m=Eb[c[(c[m>>2]|0)+8>>2]&127](m)|0;b=a[m>>0]|0;if(!(b&1))j=(b&255)>>>1;else j=c[m+4>>2]|0;b=a[m+12>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=c[m+16>>2]|0;do{if((j|0)!=(0-b|0)){c[l>>2]=c[f>>2];c[k>>2]=c[l>>2];b=xu(e,k,m,m+24|0,h,g,0)|0;j=c[d>>2]|0;if((b|0)==(m|0)&(j|0)==12){c[d>>2]=0;break}if((j|0)<12&(b-m|0)==12)c[d>>2]=j+12}else c[g>>2]=c[g>>2]|4}while(0);i=n;return}function kq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<61&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function lq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,1)|0;d=c[f>>2]|0;if((a|0)<7&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function mq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Vu(d,a,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=a+-1900;i=h;return}function nq(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;a=c[b>>2]|0;do{if(a){if((c[a+12>>2]|0)==(c[a+16>>2]|0))if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){c[b>>2]=0;a=0;break}else{a=c[b>>2]|0;break}}else a=0}while(0);h=(a|0)==0;a=c[e>>2]|0;do{if(a){if((c[a+12>>2]|0)==(c[a+16>>2]|0)?(Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1:0){c[e>>2]=0;j=11;break}if(h){i=a;j=13}else j=12}else j=11}while(0);if((j|0)==11)if(h)j=12;else{i=0;j=13}a:do{if((j|0)==12)c[f>>2]=c[f>>2]|6;else if((j|0)==13){a=c[b>>2]|0;h=c[a+12>>2]|0;if((h|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=d[h>>0]|0;if((Gb[c[(c[g>>2]|0)+36>>2]&63](g,a&255,0)|0)<<24>>24!=37){c[f>>2]=c[f>>2]|4;break}a=c[b>>2]|0;h=a+12|0;g=c[h>>2]|0;if((g|0)==(c[a+16>>2]|0)){Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;a=c[b>>2]|0;if(!a)a=0;else j=21}else{c[h>>2]=g+1;j=21}do{if((j|0)==21)if((c[a+12>>2]|0)==(c[a+16>>2]|0))if((Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){c[b>>2]=0;a=0;break}else{a=c[b>>2]|0;break}}while(0);a=(a|0)==0;do{if(i){if((c[i+12>>2]|0)==(c[i+16>>2]|0)?(Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0)==-1:0){c[e>>2]=0;j=30;break}if(a)break a}else j=30}while(0);if((j|0)==30?!a:0)break;c[f>>2]=c[f>>2]|2}}while(0);return}function oq(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=i;i=i+32|0;s=x+16|0;r=x+12|0;v=x+8|0;t=x+4|0;u=x;k=jn(e)|0;c[v>>2]=k;o=0;v=ra(37,v|0,44212)|0;q=o;o=0;if(q&1){x=Na()|0;pm(k)|0;Ya(x|0)}pm(k)|0;c[f>>2]=0;k=c[b>>2]|0;a:do{if((h|0)!=(j|0)){b:while(1){m=k;if(k){l=c[k+12>>2]|0;if((l|0)==(c[k+16>>2]|0))l=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else l=c[l>>2]|0;if((l|0)==-1){c[b>>2]=0;k=0;p=1;q=0}else{p=0;q=m}}else{k=0;p=1;q=m}n=c[d>>2]|0;l=n;do{if(n){m=c[n+12>>2]|0;if((m|0)==(c[n+16>>2]|0))m=Eb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else m=c[m>>2]|0;if((m|0)!=-1)if(p)break;else{w=17;break b}else{c[d>>2]=0;l=0;w=15;break}}else w=15}while(0);if((w|0)==15){w=0;if(p){w=17;break}else n=0}c:do{if((Gb[c[(c[v>>2]|0)+52>>2]&63](v,c[h>>2]|0,0)|0)<<24>>24==37){m=h+4|0;if((m|0)==(j|0)){w=21;break b}p=Gb[c[(c[v>>2]|0)+52>>2]&63](v,c[m>>2]|0,0)|0;switch(p<<24>>24){case 48:case 69:{n=h+8|0;if((n|0)==(j|0)){w=24;break b}h=m;m=Gb[c[(c[v>>2]|0)+52>>2]&63](v,c[n>>2]|0,0)|0;k=p;break}default:{m=p;k=0}}p=c[(c[a>>2]|0)+36>>2]|0;c[t>>2]=q;c[u>>2]=l;c[r>>2]=c[t>>2];c[s>>2]=c[u>>2];c[b>>2]=Sb[p&15](a,r,s,e,f,g,m,k)|0;h=h+8|0}else{if(!(Gb[c[(c[v>>2]|0)+12>>2]&63](v,8192,c[h>>2]|0)|0)){m=k+12|0;l=c[m>>2]|0;n=k+16|0;if((l|0)==(c[n>>2]|0))l=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else l=c[l>>2]|0;q=Lb[c[(c[v>>2]|0)+28>>2]&63](v,l)|0;if((q|0)!=(Lb[c[(c[v>>2]|0)+28>>2]&63](v,c[h>>2]|0)|0)){w=61;break b}l=c[m>>2]|0;if((l|0)==(c[n>>2]|0))Eb[c[(c[k>>2]|0)+40>>2]&127](k)|0;else c[m>>2]=l+4;h=h+4|0;break}do{h=h+4|0;if((h|0)==(j|0)){h=j;break}}while(Gb[c[(c[v>>2]|0)+12>>2]&63](v,8192,c[h>>2]|0)|0);l=n;p=n;while(1){if(k){m=c[k+12>>2]|0;if((m|0)==(c[k+16>>2]|0))m=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else m=c[m>>2]|0;if((m|0)==-1){c[b>>2]=0;n=1;k=0}else n=0}else{n=1;k=0}do{if(p){m=c[p+12>>2]|0;if((m|0)==(c[p+16>>2]|0))m=Eb[c[(c[p>>2]|0)+36>>2]&127](p)|0;else m=c[m>>2]|0;if((m|0)!=-1)if(n^(l|0)==0){q=l;p=l;break}else break c;else{c[d>>2]=0;l=0;w=44;break}}else w=44}while(0);if((w|0)==44){w=0;if(n)break c;else{q=l;p=0}}m=k+12|0;l=c[m>>2]|0;n=k+16|0;if((l|0)==(c[n>>2]|0))l=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else l=c[l>>2]|0;if(!(Gb[c[(c[v>>2]|0)+12>>2]&63](v,8192,l)|0))break c;l=c[m>>2]|0;if((l|0)==(c[n>>2]|0)){Eb[c[(c[k>>2]|0)+40>>2]&127](k)|0;l=q;continue}else{c[m>>2]=l+4;l=q;continue}}}}while(0);k=c[b>>2]|0;if(!((h|0)!=(j|0)&(c[f>>2]|0)==0))break a}if((w|0)==17){c[f>>2]=4;break}else if((w|0)==21){c[f>>2]=4;break}else if((w|0)==24){c[f>>2]=4;break}else if((w|0)==61){c[f>>2]=4;k=c[b>>2]|0;break}}}while(0);if(k){h=c[k+12>>2]|0;if((h|0)==(c[k+16>>2]|0))h=Eb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else h=c[h>>2]|0;if((h|0)==-1){c[b>>2]=0;k=0;m=1}else m=0}else{k=0;m=1}h=c[d>>2]|0;do{if(h){l=c[h+12>>2]|0;if((l|0)==(c[h+16>>2]|0))h=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else h=c[l>>2]|0;if((h|0)!=-1)if(m)break;else{w=76;break}else{c[d>>2]=0;w=74;break}}else w=74}while(0);if((w|0)==74?m:0)w=76;if((w|0)==76)c[f>>2]=c[f>>2]|2;i=x;return k|0}function pq(a){a=a|0;return}function qq(a){a=a|0;cj(a);return}function rq(a){a=a|0;return 2}function sq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+16|0;j=h+12|0;k=h+8|0;m=h+4|0;l=h;c[m>>2]=c[b>>2];c[l>>2]=c[d>>2];c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];a=oq(a,k,j,e,f,g,44788,44820)|0;i=h;return a|0}function tq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;i=i+16|0;k=j+12|0;l=j+8|0;n=j+4|0;m=j;q=b+8|0;q=Eb[c[(c[q>>2]|0)+20>>2]&127](q)|0;c[n>>2]=c[d>>2];c[m>>2]=c[e>>2];o=a[q>>0]|0;p=(o&1)==0;e=q+4|0;d=p?e:c[q+8>>2]|0;e=d+((p?(o&255)>>>1:c[e>>2]|0)<<2)|0;c[l>>2]=c[n>>2];c[k>>2]=c[m>>2];b=oq(b,l,k,f,g,h,d,e)|0;i=j;return b|0}function uq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44212)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];vq(a,g+24|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function vq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[c[a>>2]>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(Iu(d,j,a,a+168|0,g,f,0)|0)-a|0;if((d|0)<168)c[b>>2]=((d|0)/12|0|0)%7|0;i=h;return}function wq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44212)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];xq(a,g+16|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h+4|0;k=h;a=a+8|0;a=Eb[c[(c[a>>2]|0)+4>>2]&127](a)|0;c[k>>2]=c[e>>2];c[j>>2]=c[k>>2];d=(Iu(d,j,a,a+288|0,g,f,0)|0)-a|0;if((d|0)<288)c[b>>2]=((d|0)/12|0|0)%12|0;i=h;return}function yq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;j=l+8|0;h=l+4|0;k=l;e=jn(e)|0;c[h>>2]=e;o=0;h=ra(37,h|0,44212)|0;m=o;o=0;if(m&1){m=Na()|0;pm(e)|0;Ya(m|0)}else{pm(e)|0;c[k>>2]=c[d>>2];c[j>>2]=c[k>>2];zq(a,g+20|0,b,j,f,h);i=l;return c[b>>2]|0}return 0}function zq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,4)|0;if(!(c[f>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a+-69|0)>>>0<31?a+1900|0:a;c[b>>2]=a+-1900}i=h;return}function Aq(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=i;i=i+144|0;l=U+132|0;k=U+116|0;N=U+128|0;x=U+124|0;I=U+120|0;O=U+112|0;P=U+108|0;Q=U+104|0;R=U+100|0;S=U+96|0;T=U+92|0;m=U+88|0;n=U+84|0;p=U+80|0;q=U+76|0;r=U+72|0;s=U+68|0;t=U+64|0;u=U+60|0;v=U+56|0;w=U+52|0;y=U+48|0;z=U+44|0;A=U+40|0;B=U+36|0;C=U+32|0;D=U+28|0;E=U+24|0;F=U+20|0;G=U+16|0;H=U+12|0;J=U+8|0;K=U+4|0;L=U;c[g>>2]=0;M=jn(f)|0;c[N>>2]=M;o=0;N=ra(37,N|0,44212)|0;W=o;o=0;if(W&1){W=Na()|0;pm(M)|0;Ya(W|0)}pm(M)|0;do{switch(j<<24>>24|0){case 65:case 97:{c[x>>2]=c[e>>2];c[l>>2]=c[x>>2];vq(b,h+24|0,d,l,g,N);V=28;break}case 104:case 66:case 98:{c[I>>2]=c[e>>2];c[l>>2]=c[I>>2];xq(b,h+16|0,d,l,g,N);V=28;break}case 99:{W=b+8|0;W=Eb[c[(c[W>>2]|0)+12>>2]&127](W)|0;c[O>>2]=c[d>>2];c[P>>2]=c[e>>2];j=a[W>>0]|0;e=(j&1)==0;V=W+4|0;W=e?V:c[W+8>>2]|0;V=W+((e?(j&255)>>>1:c[V>>2]|0)<<2)|0;c[k>>2]=c[O>>2];c[l>>2]=c[P>>2];c[d>>2]=oq(b,k,l,f,g,h,W,V)|0;V=28;break}case 101:case 100:{c[Q>>2]=c[e>>2];c[l>>2]=c[Q>>2];Bq(b,h+12|0,d,l,g,N);V=28;break}case 68:{c[R>>2]=c[d>>2];c[S>>2]=c[e>>2];c[k>>2]=c[R>>2];c[l>>2]=c[S>>2];c[d>>2]=oq(b,k,l,f,g,h,44820,44852)|0;V=28;break}case 70:{c[T>>2]=c[d>>2];c[m>>2]=c[e>>2];c[k>>2]=c[T>>2];c[l>>2]=c[m>>2];c[d>>2]=oq(b,k,l,f,g,h,44852,44884)|0;V=28;break}case 72:{c[n>>2]=c[e>>2];c[l>>2]=c[n>>2];Cq(b,h+8|0,d,l,g,N);V=28;break}case 73:{c[p>>2]=c[e>>2];c[l>>2]=c[p>>2];Dq(b,h+8|0,d,l,g,N);V=28;break}case 106:{c[q>>2]=c[e>>2];c[l>>2]=c[q>>2];Eq(b,h+28|0,d,l,g,N);V=28;break}case 109:{c[r>>2]=c[e>>2];c[l>>2]=c[r>>2];Fq(b,h+16|0,d,l,g,N);V=28;break}case 77:{c[s>>2]=c[e>>2];c[l>>2]=c[s>>2];Gq(b,h+4|0,d,l,g,N);V=28;break}case 116:case 110:{c[t>>2]=c[e>>2];c[l>>2]=c[t>>2];Hq(b,d,l,g,N);V=28;break}case 112:{c[u>>2]=c[e>>2];c[l>>2]=c[u>>2];Iq(b,h+8|0,d,l,g,N);V=28;break}case 114:{c[v>>2]=c[d>>2];c[w>>2]=c[e>>2];c[k>>2]=c[v>>2];c[l>>2]=c[w>>2];c[d>>2]=oq(b,k,l,f,g,h,44884,44928)|0;V=28;break}case 82:{c[y>>2]=c[d>>2];c[z>>2]=c[e>>2];c[k>>2]=c[y>>2];c[l>>2]=c[z>>2];c[d>>2]=oq(b,k,l,f,g,h,44928,44948)|0;V=28;break}case 83:{c[A>>2]=c[e>>2];c[l>>2]=c[A>>2];Jq(b,h,d,l,g,N);V=28;break}case 84:{c[B>>2]=c[d>>2];c[C>>2]=c[e>>2];c[k>>2]=c[B>>2];c[l>>2]=c[C>>2];c[d>>2]=oq(b,k,l,f,g,h,44948,44980)|0;V=28;break}case 119:{c[D>>2]=c[e>>2];c[l>>2]=c[D>>2];Kq(b,h+24|0,d,l,g,N);V=28;break}case 120:{W=c[(c[b>>2]|0)+20>>2]|0;c[E>>2]=c[d>>2];c[F>>2]=c[e>>2];c[k>>2]=c[E>>2];c[l>>2]=c[F>>2];k=Db[W&63](b,k,l,f,g,h)|0;break}case 88:{W=b+8|0;W=Eb[c[(c[W>>2]|0)+24>>2]&127](W)|0;c[G>>2]=c[d>>2];c[H>>2]=c[e>>2];j=a[W>>0]|0;e=(j&1)==0;V=W+4|0;W=e?V:c[W+8>>2]|0;V=W+((e?(j&255)>>>1:c[V>>2]|0)<<2)|0;c[k>>2]=c[G>>2];c[l>>2]=c[H>>2];c[d>>2]=oq(b,k,l,f,g,h,W,V)|0;V=28;break}case 121:{c[J>>2]=c[e>>2];c[l>>2]=c[J>>2];zq(b,h+20|0,d,l,g,N);V=28;break}case 89:{c[K>>2]=c[e>>2];c[l>>2]=c[K>>2];Lq(b,h+20|0,d,l,g,N);V=28;break}case 37:{c[L>>2]=c[e>>2];c[l>>2]=c[L>>2];Mq(b,d,l,g,N);V=28;break}default:{c[g>>2]=c[g>>2]|4;V=28}}}while(0);if((V|0)==28)k=c[d>>2]|0;i=U;return k|0}function Bq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<31&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<24&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Dq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<12&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Eq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,3)|0;d=c[f>>2]|0;if((a|0)<366&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Fq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<13&(d&4|0)==0)c[b>>2]=a+-1;else c[f>>2]=d|4;i=h;return}function Gq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<60&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Hq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a:while(1){a=c[b>>2]|0;do{if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else h=1}while(0);g=c[d>>2]|0;do{if(g){a=c[g+12>>2]|0;if((a|0)==(c[g+16>>2]|0))a=Eb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(h){h=g;break}else{h=g;break a}else{c[d>>2]=0;i=15;break}}else i=15}while(0);if((i|0)==15){i=0;if(h){h=0;break}else h=0}a=c[b>>2]|0;g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if(!(Gb[c[(c[f>>2]|0)+12>>2]&63](f,8192,a)|0))break;a=c[b>>2]|0;g=a+12|0;h=c[g>>2]|0;if((h|0)==(c[a+16>>2]|0)){Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;continue}else{c[g>>2]=h+4;continue}}a=c[b>>2]|0;do{if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1}while(0);do{if(h){a=c[h+12>>2]|0;if((a|0)==(c[h+16>>2]|0))a=Eb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(g)break;else{i=39;break}else{c[d>>2]=0;i=37;break}}else i=37}while(0);if((i|0)==37?g:0)i=39;if((i|0)==39)c[e>>2]=c[e>>2]|2;return}function Iq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;k=n+4|0;l=n;m=b+8|0;m=Eb[c[(c[m>>2]|0)+8>>2]&127](m)|0;b=a[m>>0]|0;if(!(b&1))j=(b&255)>>>1;else j=c[m+4>>2]|0;b=a[m+12>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=c[m+16>>2]|0;do{if((j|0)!=(0-b|0)){c[l>>2]=c[f>>2];c[k>>2]=c[l>>2];b=Iu(e,k,m,m+24|0,h,g,0)|0;j=c[d>>2]|0;if((b|0)==(m|0)&(j|0)==12){c[d>>2]=0;break}if((j|0)<12&(b-m|0)==12)c[d>>2]=j+12}else c[g>>2]=c[g>>2]|4}while(0);i=n;return}function Jq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<61&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Kq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,1)|0;d=c[f>>2]|0;if((a|0)<7&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;i=h;return}function Lq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;a=h+4|0;j=h;c[j>>2]=c[e>>2];c[a>>2]=c[j>>2];a=Wu(d,a,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=a+-1900;i=h;return}function Mq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;a=c[b>>2]|0;do{if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else h=1}while(0);g=c[d>>2]|0;do{if(g){a=c[g+12>>2]|0;if((a|0)==(c[g+16>>2]|0))a=Eb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(h){i=g;j=17;break}else{j=16;break}else{c[d>>2]=0;j=14;break}}else j=14}while(0);if((j|0)==14)if(h)j=16;else{i=0;j=17}a:do{if((j|0)==16)c[e>>2]=c[e>>2]|6;else if((j|0)==17){a=c[b>>2]|0;g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((Gb[c[(c[f>>2]|0)+52>>2]&63](f,a,0)|0)<<24>>24!=37){c[e>>2]=c[e>>2]|4;break}a=c[b>>2]|0;g=a+12|0;h=c[g>>2]|0;if((h|0)==(c[a+16>>2]|0)){Eb[c[(c[a>>2]|0)+40>>2]&127](a)|0;a=c[b>>2]|0;if(!a)g=1;else j=25}else{c[g>>2]=h+4;j=25}do{if((j|0)==25){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=Eb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=c[g>>2]|0;if((a|0)==-1){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}}while(0);do{if(i){a=c[i+12>>2]|0;if((a|0)==(c[i+16>>2]|0))a=Eb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else a=c[a>>2]|0;if((a|0)!=-1)if(g)break a;else break;else{c[d>>2]=0;j=37;break}}else j=37}while(0);if((j|0)==37?!g:0)break;c[e>>2]=c[e>>2]|2}}while(0);return}function Nq(a){a=a|0;Oq(a+8|0);return}function Oq(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;o=0;d=ua(3)|0;e=o;o=0;do{if(!(e&1)){if((b|0)!=(d|0)?(o=0,ha(188,c[a>>2]|0),e=o,o=0,e&1):0)break;return}}while(0);e=Na(0)|0;ec(e)}function Pq(a){a=a|0;Oq(a+8|0);cj(a);return}function Qq(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;l=i;i=i+112|0;k=l+4|0;e=l;c[e>>2]=k+100;Rq(b+8|0,k,e,g,h,j);g=c[e>>2]|0;e=c[d>>2]|0;if((k|0)!=(g|0))do{j=a[k>>0]|0;do{if(e){f=e+24|0;h=c[f>>2]|0;if((h|0)==(c[e+28>>2]|0)){d=(Lb[c[(c[e>>2]|0)+52>>2]&63](e,j&255)|0)==-1;e=d?0:e;break}else{c[f>>2]=h+1;a[h>>0]=j;break}}else e=0}while(0);k=k+1|0}while((k|0)!=(g|0));i=l;return e|0}function Rq(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;m=i;i=i+16|0;l=m;a[l>>0]=37;j=l+1|0;a[j>>0]=g;k=l+2|0;a[k>>0]=h;a[l+3>>0]=0;if(h<<24>>24){a[j>>0]=h;a[k>>0]=g}c[e>>2]=d+(Ra(d|0,(c[e>>2]|0)-d|0,l|0,f|0,c[b>>2]|0)|0);i=m;return}function Sq(a){a=a|0;Oq(a+8|0);return}function Tq(a){a=a|0;Oq(a+8|0);cj(a);return}function Uq(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0;j=i;i=i+416|0;e=j+8|0;d=j;c[d>>2]=e+400;Vq(a+8|0,e,d,f,g,h);a=c[d>>2]|0;d=c[b>>2]|0;if((e|0)!=(a|0)){f=e;do{e=c[f>>2]|0;if(!d)d=0;else{g=d+24|0;h=c[g>>2]|0;if((h|0)==(c[d+28>>2]|0))e=Lb[c[(c[d>>2]|0)+52>>2]&63](d,e)|0;else{c[g>>2]=h+4;c[h>>2]=e}d=(e|0)==-1?0:d}f=f+4|0}while((f|0)!=(a|0))}i=j;return d|0}function Vq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;i=i+128|0;l=h+16|0;m=h+12|0;j=h;k=h+8|0;c[m>>2]=l+100;Rq(a,l,m,e,f,g);f=j;c[f>>2]=0;c[f+4>>2]=0;c[k>>2]=l;f=(c[d>>2]|0)-b>>2;g=qk(c[a>>2]|0)|0;o=0;f=va(18,b|0,k|0,f|0,j|0)|0;a=o;o=0;if(a&1){f=Na()|0;if((g|0)!=0?(o=0,ka(75,g|0)|0,m=o,o=0,m&1):0){m=Na(0)|0;ec(m)}Ya(f|0)}if((g|0)!=0?(o=0,ka(75,g|0)|0,m=o,o=0,m&1):0){m=Na(0)|0;ec(m)}if((f|0)==-1)Rr(58955);else{c[d>>2]=b+(f<<2);i=h;return}}function Wq(a){a=a|0;return}function Xq(a){a=a|0;cj(a);return}function Yq(a){a=a|0;return 127}function Zq(a){a=a|0;return 127}function _q(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function $q(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function ar(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function br(a,b){a=a|0;b=b|0;Hm(a,1,45);return}function cr(a){a=a|0;return 0}function dr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function er(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function fr(a){a=a|0;return}function gr(a){a=a|0;cj(a);return}function hr(a){a=a|0;return 127}function ir(a){a=a|0;return 127}function jr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function kr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function lr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function mr(a,b){a=a|0;b=b|0;Hm(a,1,45);return}function nr(a){a=a|0;return 0}function or(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function pr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function qr(a){a=a|0;return}function rr(a){a=a|0;cj(a);return}function sr(a){a=a|0;return 2147483647}function tr(a){a=a|0;return 2147483647}function ur(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function vr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function wr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function xr(a,b){a=a|0;b=b|0;Vm(a,1,45);return}function yr(a){a=a|0;return 0}function zr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Ar(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Br(a){a=a|0;return}function Cr(a){a=a|0;cj(a);return}function Dr(a){a=a|0;return 2147483647}function Er(a){a=a|0;return 2147483647}function Fr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Gr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Hr(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Ir(a,b){a=a|0;b=b|0;Vm(a,1,45);return}function Jr(a){a=a|0;return 0}function Kr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Lr(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Mr(a){a=a|0;return}function Nr(a){a=a|0;cj(a);return}function Or(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;B=i;i=i+240|0;z=B+24|0;A=B;b=B+136|0;D=B+16|0;y=B+12|0;C=B+8|0;p=B+134|0;l=B+4|0;x=B+124|0;c[D>>2]=b;E=D+4|0;c[E>>2]=189;m=b+100|0;o=0;k=ka(68,g|0)|0;w=o;o=0;if(!(w&1)){c[C>>2]=k;o=0;b=ra(37,C|0,44220)|0;w=o;o=0;a:do{if(!(w&1)?(a[p>>0]=0,c[l>>2]=c[e>>2],n=c[g+4>>2]|0,o=0,c[z>>2]=c[l>>2],n=la(1,d|0,z|0,f|0,C|0,n|0,h|0,p|0,b|0,D|0,y|0,m|0)|0,w=o,o=0,!(w&1)):0){b:do{if(n){o=0;va(c[(c[b>>2]|0)+32>>2]|0,b|0,58976,58986,x|0)|0;w=o;o=0;if(w&1){G=10;break a}l=c[y>>2]|0;m=c[D>>2]|0;b=l-m|0;if((b|0)>98){b=Fl(b+2|0)|0;k=b;if(!b){o=0;xa(6);w=o;o=0;if(!(w&1)){b=0;G=13}}else G=13}else{k=0;b=z;G=13}do{if((G|0)==13){if(a[p>>0]|0){a[b>>0]=45;b=b+1|0}v=x+10|0;w=x;if(m>>>0