diff --git a/README.md b/README.md index 9a7da53a6..5f5064932 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ The Original IBM PC in Your Browser --- Welcome to [pcjs.org](http://www.pcjs.org/) and [PCjs](/docs/about/pcjs/), the first IBM PC simulation to run in your -web browser without any plugins. It was added to the [JavaScript Machines](/docs/about/) project in Fall 2012. -The project now includes: +web browser without any plugins. It was added to the [JavaScript Machines](/docs/about/) project in Fall 2012, and is +now part of the [PCjs Project](https://github.com/jeffpar/pcjs) on [GitHub](https://github.com/). The project now includes: * [PCjs](/docs/about/pcjs/), a simulation of the original IBM PC (circa 1981) * [C1Pjs](/docs/c1pjs/), a simulation of the OSI Challenger 1P (circa 1978) @@ -60,14 +60,21 @@ copy of the [PCjs web server](http://www.pcjs.org/) and run PCjs simulations: + A simple Node-based web server ([server.js](server.js)) + Custom Node modules used by the web server ([HTMLOut](my_modules/htmlout/), [MarkOut](my_modules/markout/), [DiskDump](my_modules/diskdump/), [FileDump](my_modules/filedump/)) -+ An assortment of IBM PC and C1P machine XML files (in [/apps](apps/), [/devices](devices/) and elsewhere) ++ An assortment of IBM PC and C1P machine XML files (in [/apps](apps/), [/configs](configs/), [/disks](disks/) and elsewhere) + The [PCjs](my_modules/pcjs-client/lib/) and [C1Pjs](my_modules/c1pjs-client/lib/) client applications, both "compiled" and uncompiled + A smattering of [PCjs](docs/pcjs/) and [C1Pjs](docs/c1pjs/) documentation, along with [blog posts](blog/), related [publications](pubs/) and more +Aside from the [PCjs](my_modules/pcjs-client/lib/) and [C1Pjs](my_modules/c1pjs-client/lib/) applications, +[DiskDump](my_modules/diskdump/) is another important module. Originally created to dump existing disk images as JSON, +**DiskDump** has evolved into a full-featured disk image generator, capable of creating PC-compatible diskette *and* +hard disk images from either lists *or* directories of files (including all subdirectories), and supports both +command-line and web interfaces. + The PCjs web server is *not* required to run most PCjs simulations. Any web server (Node, Apache, Nginx, etc) that can serve the necessary JavaScript files to your browser will work. However, instructions for doing -that are beyond the scope of this "Quick Start" document. And while it is possible to create simulations that -require access to PCjs web server APIs, none of the simulations in the repository should require API access. +that are beyond the scope of this document (see future document). The PCjs web server does provide disk and file +APIs that simulations can take advantage of, but none of the simulations currently checked into the repository +should require API access. ### Installing PCjs @@ -242,23 +249,24 @@ A complete list of command-line options can be found in [server.js](server.js). ### Client Components -A special parameter ("gort") can be appended to the URL to request uncompiled client source files, making PCjs and -C1Pjs much easier to debug, albeit much slower: +A special command parameter ("gort") can be appended to the URL to request uncompiled client source files, making PCjs +and C1Pjs much easier to debug, albeit much slower: http://localhost:8088/?gort=debug The "gort=debug" command is unnecessary if the server is started with `--debug`; the server always serves uncompiled -files when running in "debug mode". +files when running in debug mode. -Conversely, if the server is running "debug mode" but you want to test a compiled version of PCjs, use: +Conversely, if the server is running debug mode but you want to test a compiled version of PCjs, use: http://localhost:8088/?gort=release -and the server will serve compiled JavaScript files, regardless whether the server is running in "debug mode" or -"release mode". +and the server will serve compiled JavaScript files, regardless whether the server is running in debug mode or +release mode. -Another useful gort command is "gort=nodebug", which is like "debug" but also sets the client-side **DEBUG** variable -to *false*, disabling all debug-only runtime checks in the client and allowing the simulation to run much faster: +Another useful gort command is "gort=nodebug", which is like "gort=debug" but also sets the client-side **DEBUG** +variable to *false*, disabling all debug-only runtime checks in the client and allowing the simulation to run much +faster: http://localhost:8088/?gort=nodebug @@ -285,7 +293,9 @@ To start developing features for a new version of PCjs, here are the recommended 3. Make changes 4. Run "grunt" to build new versions of the apps (eg, "/versions/pcjs/1.xx.yy/pc.js") -However, you may want to skip step #2 until you're ready to start testing the new version. Depending on the nature +You might also want to check out the blog post on [PCjs Coding Conventions](/blog/2014/09/30/). + +You may also want to skip step #2 until you're ready to start testing the new version. Depending on the nature of your changes, it may be better to manually edit the version number in only a few machine XML files for testing, leaving the rest of the XML files pointing to the previous version. Run "grunt promote" when the new version is much closer to being released. @@ -309,9 +319,22 @@ manually or with the Grunt "clean" task: +License +--- +The [PCjs Project](https://github.com/jeffpar/pcjs) is now an open source project on [GitHub](http://github.com/). +All published portions are free for redistribution and/or modification under the terms of the +[GNU General Public License](/LICENSE) as published by the Free Software Foundation, either version 3 of the License, +or (at your option) any later version. + +You are required to include the appropriate copyright notice (e.g., `PCjs v1.15.4 © 2012-2014 by @jeffpar`) +in every source code file of every copy or modified version of this work, and to display that copyright notice +on every screen that loads or runs any version of this software. + +See [LICENSE](/LICENSE) for details. + More Information --- -Learn more about the [JavaScript Machines](/docs/about/) project and [PCjs](/docs/about/pcjs/). To +Learn more about the [JavaScript Machines](/docs/about/) Project and [PCjs](/docs/about/pcjs/). To create your own PCjs machines, see the [Documentation](/docs/pcjs/) for details. If you have questions or run into any problems, you're welcome to [tweet](http://twitter.com/jeffpar) or diff --git a/blog/2014/09/30/README.md b/blog/2014/09/30/README.md index 09819a1ac..301ee595a 100644 --- a/blog/2014/09/30/README.md +++ b/blog/2014/09/30/README.md @@ -1,8 +1,7 @@ PCjs Coding Conventions --- -Some ramblings about the JavaScript coding conventions used for PCjs. This is not an attempt to convince anyone of -anything, just an explanation of why things are the way they are. +Here are a few highlights of the (evolving) JavaScript coding conventions used in PCjs. ### Tabs vs. Spaces @@ -79,6 +78,33 @@ uses the "long form." But again, since the Closure Compiler already does a good necessary to use the "long form", which is why you'll see newer code using more conventional Object notation to define class constants. +### DEBUG vs. RELEASE + +While we're talking about constants, it's important to be aware of constants that are not scoped to +any particular component. + +In [/my_modules/shared/lib/defines.js](/my_modules/shared/lib/defines.js), **DEBUG** is set to **TRUE**, +enabling all debug-only code by default. It is also declared as a *@define* so that the Closure Compiler can +override it, setting it to **FALSE** and disabling debug-only code. + +To ensure that debug-only code is not simply *disabled* but also *removed*, the code should be wrapped with: + + if (DEBUG) { + [code to be removed by the Closure Compiler] + } + +In many cases, the compiler is able to completely remove calls to debug-only class methods; eg: + + Component.assert(off >= 0 && off < this.cb); + +However, calls to debug-only instance methods seem to be more problematic, so all such calls are wrapped; eg: + + if (DEBUG) this.log('load("' + sFileURL + '")'); + +There are a number of other important shared constants in [/my_modules/shared/lib/defines.js](/my_modules/shared/lib/defines.js) +and PCjs-specific constants in [/my_modules/pcjs-client/lib/defines.js](/my_modules/pcjs-client/lib/defines.js); refer +to those files for more information. + ### Braces and Parentheses Most opening braces appear at the end of the line containing the associated "if", "while", "for", "switch", diff --git a/docs/about/README.md b/docs/about/README.md index 9acf19c1d..d9280cebf 100644 --- a/docs/about/README.md +++ b/docs/about/README.md @@ -1,9 +1,9 @@ About JavaScript Machines --- -The JavaScript Machines (**JSMachines**) project is a collection of computer simulations written in JavaScript, -maintained on [GitHub](http://github.com/), and hosted at [pcjs.org](http://www.pcjs.org/) (formerly -[jsmachines.net](http://jsmachines.net/)). +The JavaScript Machines Project (originally at [jsmachines.net](http://jsmachines.net/)) is a collection of computer +simulations written in JavaScript. It has now been released on [GitHub](https://github.com/) as the +[PCjs Project](https://github.com/jeffpar/pcjs), a copy of which is hosted here at [pcjs.org](http://www.pcjs.org/). The goals of the project are to create fast, full-featured simulations of classic computer hardware, help people understand how these early machines worked, make it easy to experiment with different machine @@ -18,7 +18,7 @@ capabilities can be found in the [Documentation](/docs/). ### Emulating the Challenger 1P -The first **JSMachines** application was [C1Pjs](/docs/c1pjs/), a simulation of the +The first **JSMachines** simulation was [C1Pjs](/docs/c1pjs/), a simulation of the Challenger 1P, which was a 6502-based microcomputer introduced by Ohio Scientific in 1978. C1Pjs v1.0 was released in July 2012, first on ecpsim.org and cpusim.org, then on [jsmachines.net](http://jsmachines.net/c1pjs), @@ -30,16 +30,17 @@ at [osiweb.org](http://osiweb.org/). ### Emulating the IBM PC -The next **JSMachines** application was [PCjs](/docs/about/pcjs/), which simulates the original IBM PC and IBM PC XT. +The next **JSMachines** simulation was [PCjs](/docs/about/pcjs/), which simulates the original IBM PC, IBM PC XT, +and IBM PC AT. -[PCjs](/docs/about/pcjs/) emulates the Intel 8088 CPU, as well as IBM Monochrome Display Adapter (MDA) and -Color Display Adapter (CGA) video cards, along with assorted motherboard and expansion bus components. It also -includes an optional debugger and a user-configurable control panel. +[PCjs](/docs/about/pcjs/) emulates the Intel 8088 and 80286 CPUs, as well as IBM Monochrome Display Adapter (MDA), +Color Graphics Adapter (CGA), and Enhanced Graphics Adapter (EGA) video cards, along with assorted motherboard and +expansion bus components. It also includes an optional Debugger and a user-configurable Control Panel. PCjs v1.0 was released on [jsmachines.net](http://jsmachines.net/) in late 2012, and the **JSMachines** project, with its second full-featured machine emulation, was launched. -See the PCjs [History](/docs/about/pcjs/) for information about more recent releases. +Read [About PCjs](/docs/about/pcjs/) to learn more about its history, features, and upcoming improvements. --- @@ -61,22 +62,20 @@ including extensions to the link syntax that make it easy to embed C1Pjs and PCj --- -### License - -The **JSMachines** project is maintained on [GitHub](http://github.com/) (public release date TBD). The portions -of the project that have been published here are free for redistribution and/or modification under the terms -of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, +License +--- +The [PCjs Project](https://github.com/jeffpar/pcjs) is now an open source project on [GitHub](http://github.com/). +All published portions are free for redistribution and/or modification under the terms of the +[GNU General Public License](/LICENSE) as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. -You are required to include the appropriate copyright notice (e.g., `PCjs v1.15.3 © 2012-2014 by @jeffpar`) +You are required to include the appropriate copyright notice (e.g., `PCjs v1.15.4 © 2012-2014 by @jeffpar`) in every source code file of every copy or modified version of this work, and to display that copyright notice on every screen that loads or runs any version of this software. See [LICENSE](/LICENSE) for details. +More Information --- - -### More Information - If you have questions or run into any problems, you're welcome to [tweet](http://twitter.com/jeffpar) or [email](mailto:Jeff@pcjs.org). \ No newline at end of file diff --git a/docs/about/pcjs/README.md b/docs/about/pcjs/README.md index 63b3bb808..a76cc092c 100644 --- a/docs/about/pcjs/README.md +++ b/docs/about/pcjs/README.md @@ -2,7 +2,8 @@ About PCjs --- PCjs is a IBM PC and PC XT simulator written entirely in JavaScript. It's designed to load and run extremely -fast, it works well in all modern web browsers (both desktop and mobile), and it's easy to customize. +fast, it works well in all modern web browsers (both desktop and mobile), and it's easy to customize. It is part of +the [PCjs Project](https://github.com/jeffpar/pcjs), an open source project on [GitHub](http://github.com/). Check out the [Demos](/#demos) on the home page, and all the other PCjs [Application](/apps/pc/), [Boot Disk](/disks/pc/) and [Machine](/configs/pc/machines/) demos, including an IBM PC XT "[Server Array](/configs/pc/machines/5160/cga/256kb/array/)" @@ -36,18 +37,19 @@ Chrome or Firefox for other platforms. ### Future -More hardware suport is targeted for version 1.20.0, including: +More hardware support is targeted for version 1.15, including: + Complete EGA emulation + 80286 CPU emulation + PC AT hardware emulation -Limited EGA emulation is currently available as of version 1.14.0. +Limited EGA emulation is currently available as of version 1.14. ### History -+ v1.14.0 introduced limited EGA emulation, as discussed on our [Blog](/blog/2014/07/30/). -+ v1.13.0 introduced manifest files that describe software packages that can be used with PCjs. ++ v1.15 introduced PC AT (Model 5170) emulation, as discussed on our [Blog](/blog/2014/09/13/). ++ v1.14 introduced limited EGA emulation, as discussed on our [Blog](/blog/2014/07/30/). ++ v1.13 introduced manifest files that describe software packages that can be used with PCjs. More information on software manifests is available [here](/apps/). + v1.12.1 coincided with the first release of the new PCjs web server running on [Node.js](http://nodejs.org). The new server includes ROM and disk image conversion APIs, as well as a [Markdown](http://daringfireball.net/projects/markdown/syntax) diff --git a/docs/pcjs/demos/pc-dbg.js b/docs/pcjs/demos/pc-dbg.js index 71190280f..e7880d6fa 100644 --- a/docs/pcjs/demos/pc-dbg.js +++ b/docs/pcjs/demos/pc-dbg.js @@ -1,130 +1,130 @@ (function(){var k;function aa(a,b){return b&&10!=b?16==b?null!==a.match(/^[0-9a-f]+$/i):!0:null!==a.match(/^[0-9]+$/)}function ba(a){var b,c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var d=a.charAt(a.length-1).toLowerCase();"h"==d?(b=16,d=null):"."==d&&(b=10,d=null);null===d&&(a=a.substr(0,a.length-1))}var e;aa(a,b)&&!isNaN(e=parseInt(a,b))&&(c=e)}return c} -function l(a,b){var c="";void 0===b?b=8:8=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function p(a){return l(a,2)}function q(a){return l(a,4)}function ca(a,b){return void 0!==b?q(b)+":"+q(a):l(a)}function da(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0":">",'"':""","'":"'"};function ga(a){return a.replace(/[&<>"']/g,function(a){return fa[a]})}function ha(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function ia(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[g]);0c&&a.splice(-(c+1),0,b)}function ma(){return Date.now()||+new Date}function na(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var oa=[31,28,31,30,31,30,31,31,30,31,30,31]; -function pa(a,b,c,d,e,f){b=!!b;var g=0,h=null,m=da(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(n.onreadystatechange=void 0,h=n.responseText,200!=n.status&&(g=n.status||-1),d&&e&&e.call(d,m,h,g,f))});if(c){var r="",u;for(u in c)c.hasOwnProperty(u)&&(r&&(r+="&"),r+=u+"="+encodeURIComponent(c[u]));r=r.replace(/%20/g,"+");n.open("POST",a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded"); -n.send(r)}else n.open("GET",a,b),n.send();a=[];b||(h=n.responseText,200!=n.status&&(g=n.status||-1),d&&e&&e.call(d,m,h,g,f),a=[g,h]);return a}function qa(){return"http://"+(window?window.location.host:"www.pcjs.org")}function ra(a){window?window.alert(a):console.log(a)}function sa(a){var b=!1;window&&(b=window.confirm(a));return b}function ta(a){window&&window.localStorage.setItem("user",a)} -function ua(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function va(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0=this.Wf?12:14;this.fc=1<>2;this.bb=this.fc-1;this.Pg=(this.re+this.fc)/this.fc|0;this.ve=this.Pg-1;this.qd=[];this.rd=[];this.Sf=this.Tf=!1;this.wi();this.Oa()}w(s,Ya); -Ya.prototype.wi=function(){this.za=Array(this.Pg);for(var a=0;a>a.mb;0>this.mb;0>a.mb;0>a.mb].lg(b&a.bb)}function eb(a,b){var c=b&a.bb,d=(b&a.Hb)>>a.mb;return c!=a.bb?a.za[d].yj(c):a.za[d++].lg(c)|a.za[d&a.ve].lg(0)<<8}function gb(a,b,c){a.za[(b&a.Hb)>>a.mb].ug(b&a.bb,c&255)}function hb(a,b,c){var d=b&a.bb;b=(b&a.Hb)>>a.mb;d!=a.bb?a.za[b].Hj(d,c&65535):(a.za[b++].ug(d,c&255),a.za[b&a.ve].ug(0,c>>8&255))} -function ib(a){for(var b=0,c=[],d=0;d>2),this.le(pb);else{this.pa=Array(b>>2);for(d=0;d>2]>>((a&3)<<3)&255},Wo:function(a){var b=a>>2;a=(a&3)<<3;var c=this.pa[b]>>a;return 24>a?c&65535:c&255|(this.pa[b+1]&255)<<8},ep:function(a,b){var c=a>>2,d=(a&3)<<3;this.pa[c]=this.pa[c]&~(255<>2,d=(a&3)<<3;24>d?this.pa[c]=this.pa[c]&~(65535<>8);this.Za=!0},Vo:function(a){rb(this.Z,this.Te+a);return this.lg(a)},Yo:function(a){rb(this.Z,this.Te+a)||rb(this.Z,this.Te+a+1);return this.yj(a)},gp:function(a,b){sb(this.Z,this.Te+a);this.ug(a,b)},jp:function(a,b){sb(this.Z,this.Te+a)||sb(this.Z,this.Te+a+1);this.Hj(a,b)},save:function(){var a,b;if(this.ha)a=null;else if(Va)for(a=Array(this.ek>>2),b=0;b=a.jf&&(a.jf+=a.hf,c=!0);0<=a.kf&&a.kf<=F(a)&&(a.hf=a.kf=-1,Cb(a),a.xb(),c=!0);c&&z(a,F(a)+" cycles: checksum="+l(a.Xf))}}function G(a,b,c,d){void 0!==a.sa[b]&&(void 0===d&&(d=4),void 0===c&&(Ua(a,"Register "+b+" is invalid"),a.xb()),c=l(c,d),a.sa[b].innerHTML!=c&&(a.sa[b].innerHTML=c))}k.Ug=function(){};k.ai=function(){}; -k.tb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.sa[c]=d;d.onclick=function(){e.Mb?e.xb(!0):e.Ke(!0)};a=!0;break;case "reset":this.sa[c]=d;d.onclick=function(){e.Ca&&Hb(e.Ca)};a=!0;break;case "speed":this.sa[c]=d;a=!0;break;case "setSpeed":this.sa[c]=d,d.onclick=function(){Jb(e,e.Ed<<1,!0)},d.innerHTML=this.ff.toFixed(2)+"Mhz",a=!0}return a};function Kb(a,b,c){a.He+=b;c&&(a.Wc=a.A=0)} -function Lb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1a.kh&&(c=Math.round(c/a.Ed));return c}function Bb(a){a.jd=0;a.nh=1;a.He=a.ge=a.Wc=a.A=0;Cb(a);Jb(a,1)} -function Jb(a,b,c){void 0!==b&&(0.8>a.jd/a.ff&&(b=1),a.Ed=b,a.ff=a.kh*a.Ed,b=a.ff.toFixed(2)+"Mhz",a.sa.setSpeed&&(a.sa.setSpeed.innerHTML=b),z(a,"target speed: "+b),c&&a.Kd());Kb(a,a.ge);a.ge=0;a.gf=ma();a.Ee=0;Lb(a)} -k.Ke=function(a){if(Ra(this,!0)){this.Mb||(Jb(this),this.Ca&&this.Ca.start(this.gf,F(this)),this.Mb=!0,this.ja&&Mb(this.ja),this.sa.run&&(this.sa.run.innerHTML="Halt"),a&&this.Kd());this.rj>=this.Fd&&Lb(this,!0);this.bg=0;this.lh=ma();this.Ee&&(a=this.lh-this.Ee,a>this.Bk&&(this.gf+=a,this.gf>this.lh&&(this.gf=this.lh)));try{do{this.sf(this.Ze?1:Math.round(this.Nn/this.nh));var b=this.Wc-this.A;this.ge+=b;this.bg+=b;Kb(this,0,!0);Gb(this,b);this.ag-=b;0>=this.ag&&(this.ag+=this.Fk,this.ai());this.$f-= -b;0>=this.$f&&(this.$f+=this.Ek,this.Ug());this.lf-=b;if(0>=this.lf){this.lf+=this.Di;break}}while(this.Mb)}catch(c){this.xb();Fb(this);this.Ca&&this.Ca.stop(ma(),F(this));Ra(this,!1);Ua(this,c.message);return}b=setTimeout;a=this.Vn;this.Ee=ma();var d=this.Bk;this.bg&&(d=Math.round(d*this.bg/this.Di));var d=d-(this.Ee-this.lh),e=this.Ee-this.gf;e&&(this.jd=Math.round(this.ge/(10*e))/100,864E5<=e&&(this.He=0,this.ja&&Nb(this.ja,!0),Jb(this)));if(0>d||this.jd>13;return this.Ja=e}if(b&&768>=b)return this.na=a,this.Lc=c,this.Ya=d,this.Kc=(d&24576)>>13,this.Ja=e}return-1}function Xb(a){return this.Ja+a} -function Yb(a){return this.Ja+a}function Tb(a,b,c){return a+b<=this.Lc?this.Ja+a:Vb.call(this,0,0,c)}function Vb(a,b,c){c||Zb.call(this.S,13,0);return-1}function Ub(a,b,c){return a+b<=this.Lc?this.Ja+a:Wb.call(this,0,0,c)}function Wb(a,b,c){c||Zb.call(this.S,13,0);return-1}Pb.prototype.save=function(){return[this.na,this.Ja,this.Lc,this.Ya,this.Kc,this.qg]};Pb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.na=a[0],this.Ja=a[1],this.Lc=a[2],this.Ya=a[3],this.Kc=a[4],this.qg=a[5])}; -function Qb(a,b){void 0===b&&(b=!!(a.S.Yc&1));b?(a.load=Sb,a.Sc=Tb,a.Yb=Ub):(a.load=Rb,a.Sc=Xb,a.Yb=Yb)} -function $b(a){this.Fa=a.model||8088;var b=0;switch(this.Fa){default:case 8088:b=4772727;break;case 80286:b=6E6}zb.call(this,a,b);this.Oj=61442;this.Ag=4;this.mf=255;this.sj=4;this.aa=5;this.ta=6;this.ea=7;this.fa=8;this.P=9;this.V=11;this.W=12;this.Fe=4;this.Hk=60;this.Ik=83;this.Tb=3;this.ob=9;this.gc=16;this.rh=1;this.Mk=19;this.Ok=28;this.Qk=16;this.Pk=21;this.Nk=37;this.Kk=2;this.Li=9;this.Lk=5;this.Jk=33;this.Ni=10;this.Mi=8;this.fg=3;this.eg=15;this.dl=51;this.el=1;this.fl=2;this.gl=4;this.cl= -32;this.il=this.Oi=15;this.Ub=16;this.Vb=4;this.kl=11;this.jl=18;this.hl=24;this.Ab=4;this.ll=2;this.Pi=16;this.ml=17;this.Ui=18;this.nl=19;this.Ti=5;this.Vi=6;this.sl=2;this.rl=8;this.pl=9;this.Xi=this.Wi=this.ol=this.ql=10;this.Sk=80;this.Uk=144;this.Rk=86;this.Tk=154;this.Wk=101;this.Yk=165;this.Vk=107;this.Xk=171;this.ul=70;this.wl=113;this.tl=76;this.vl=124;this.$k=80;this.bl=128;this.Zk=86;this.al=134;this.hg=3;this.gg=16;this.bj=10;this.aj=8;this.xl=51;this.hc=8;this.yl=17;this.zl=36;this.oc= -11;this.Al=16;this.ig=10;this.Nb=2;this.Ii=18;this.Ji=9-this.Nb;this.Ki=17-this.Nb;this.Qi=12;this.Ri=9-this.Nb;this.Si=13-this.Nb;this.Yi=18;this.Zi=9-this.Nb;this.$i=17-this.Nb;this.cj=15;this.dj=9-this.Nb;this.ej=15-this.Nb;this.ij=11;this.jj=9-this.Nb;this.kj=10-this.Nb;this.Bl=8;this.El=12;this.Cl=18;this.Dl=17;this.Fl=15;this.gj=8;this.fj=20;this.hj=2;this.nj=3;this.jg=9;this.mj=5;this.lj=11;this.pj=4;this.oj=17;this.Gl=11;this.Ma=ac.slice();80186<=this.Fa&&(this.mf=31,this.Ma[15]=bc,this.Ma[96]= -cc,this.Ma[97]=dc,this.Ma[98]=ec,this.Ma[99]=bc,this.Ma[100]=bc,this.Ma[101]=bc,this.Ma[102]=bc,this.Ma[103]=bc,this.Ma[104]=fc,this.Ma[105]=gc,this.Ma[106]=hc,this.Ma[107]=ic,this.Ma[108]=jc,this.Ma[109]=kc,this.Ma[110]=lc,this.Ma[111]=mc,this.Ma[192]=nc,this.Ma[193]=oc,this.Ma[200]=pc,this.Ma[200]=qc,this.Ma[241]=rc,sc[7]=tc,uc[7]=tc,80286<=this.Fa&&(this.Oj=2,this.Ag=0,this.Ma[15]=vc,this.Ma[99]=wc,this.Ma[84]=xc,this.P=this.fa=this.ea=this.ta=this.aa=this.sj=0,this.W=this.V=1,this.Fe=3,this.Hk= -14,this.Ik=16,this.Tb=2,this.gc=this.ob=7,this.rh=0,this.Mk=7,this.Ok=13,this.Qk=7,this.Pk=11,this.Nk=16,this.Kk=3,this.Li=6,this.Lk=2,this.Jk=13,this.Mi=this.Ni=5,this.fg=2,this.eg=7,this.dl=23,this.el=0,this.fl=1,this.gl=3,this.cl=17,this.Oi=7,this.il=11,this.Ub=7,this.Vb=3,this.kl=7,this.jl=11,this.hl=15,this.Ab=2,this.ll=3,this.Pi=7,this.nl=this.Ui=this.ml=8,this.Vi=this.Ti=4,this.sl=2,this.rl=3,this.pl=5,this.ql=2,this.ol=3,this.Wi=5,this.Xi=3,this.Sk=14,this.Uk=22,this.Rk=17,this.Tk=25,this.Wk= -17,this.Yk=25,this.Vk=20,this.Xk=28,this.ul=13,this.wl=21,this.tl=16,this.vl=24,this.$k=13,this.bl=21,this.Zk=16,this.al=24,this.hg=2,this.gg=7,this.aj=this.bj=5,this.xl=19,this.yl=this.hc=5,this.zl=17,this.oc=3,this.Al=5,this.ig=3,this.Nb=0,this.Ii=8,this.Ji=5,this.Ki=9,this.Ri=this.Qi=5,this.Si=4,this.Zi=this.Yi=5,this.$i=4,this.cj=7,this.dj=5,this.ej=8,this.ij=3,this.jj=4,this.kj=3,this.El=this.Bl=11,this.Dl=this.Cl=15,this.Fl=7,this.gj=5,this.fj=8,this.hj=0,this.nj=2,this.jg=6,this.mj=3,this.lj= -6,this.pj=3,this.Gl=this.oj=5));this.Cg=[];this.zf=[];this.Rg=0;this.za=[];this.re=this.Hb=this.mb=this.bb=this.ve=0;this.T=this.wm;this.U=this.xm;this.N=this.En;this.O=this.Fn;this.Q=this.cp;this.R=this.dp;yc(this)}w(zb,$b);k=$b.prototype;k.wi=function(a,b,c,d,e){this.za=a;this.re=this.Hb=b;this.mb=c;this.bb=d;this.ve=e};k.reset=function(){this.Mb&&this.xb();yc(this);Bb(this);this.gd=!1}; -function yc(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.Yc=65520;a.bd=0;a.qe=1023;a.Hc={tj:0,na:0,Ya:0,jh:-1};a.qa=new Pb(a,"CS");a.Ob=new Pb(a,"DS");a.Cb=new Pb(a,"SS");a.$a=new Pb(a,"ES");a.Xl=new Pb(a,"ZERO");zc(a,0,65535);80286<=a.Fa&&(a.Oc=a.Ue=0,a.Jd=new Pb(a,"LDT",!0),a.tg=new Pb(a,"TSS",!0),a.Pb=new Pb(a,"VER",!0),zc(a,65520,61440),a.qa.Ja=16711680);Ac(a,0);Bc(a);a.ib=0;a.Bb=a.ng=-1;a.Kg=0;a.ga=a.Ia=-1;a.C=a.Ob;a.M=a.Cb;a.$=a.va=0} -k.uk=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.ra+this.qa.na+this.Ob.na+this.Cb.na+this.$a.na+Cc(this)|0};function Dc(a,b,c,d){void 0!==d&&(void 0===a.Cg[b]&&(a.Cg[b]=[]),a.Cg[b].push([c,d]))}function Ec(a,b,c){void 0!==c&&(void 0===a.zf[b]&&(a.zf[b]=[]),a.zf[b].push(c),a.Rg++)}function Fc(a,b){var c=a.zf[b];if(void 0!==c){for(;0>1?128:0} -function Xc(a){return(a.ia^a.la^a.ia>>1)&a.ca>>1?2048:0}function Yc(a){a.Y&=~a.ca}function Zc(a){a.la=a.ia&16|a.la&-17}function $c(a){a.Y|=a.ca-1}function ad(a){Wc(a)&&(a.ia^=a.ca>>1|a.ca>>2,a.la^=32896)}function bd(a){a.ia&=~a.ca;a.la=a.ia&32896|a.la&-32897}function cd(a){a.Y|=a.ca}function dd(a){a.la=~(a.ia&16)&16|a.la&-17}function ed(a){a.Y&=~(a.ca-1)}function fd(a){Wc(a)||(a.ia^=a.ca>>1|a.ca>>2,a.la^=32896)}function gd(a){a.ia|=a.ca;a.la=a.ia&32896|a.la&-32897} -function Cc(a){return a.wa&-2262|Sc(a)|Tc(a)|Uc(a)|Vc(a)|Wc(a)|Xc(a)}function Ac(a,b){a.ca=256;a.Y=a.ia=a.la=0;b&1&&cd(a);b&4||(a.ia|=1);b&16&&(a.la|=16);b&64||$c(a);b&128&&fd(a);b&2048&&gd(a);a.wa=a.wa&-1793|b&1792|a.Oj;a.wa&256&&(a.ib|=2,a.$|=4)} -k.tb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.sa[c]=d;e=!0;break;default:e=zb.prototype.tb.call(this,a,b,c,d)}return e};k.rb=function(a){return this.za[(a&this.Hb)>>this.mb].qc(a&this.bb)}; -k.Ga=function(a){var b=a&this.bb;a=(a&this.Hb)>>this.mb;this.A-=this.sj;return b!=this.bb?this.za[a].Nl(b):this.za[a++].qc(b)|this.za[a&this.ve].qc(0)<<8};k.Zc=function(a,b){this.za[(a&this.Hb)>>this.mb].Ac(a&this.bb,b&255)};k.Ld=function(a,b){var c=a&this.bb,d=(a&this.Hb)>>this.mb;this.A-=this.sj;c!=this.bb?this.za[d].$l(c,b&65535):(this.za[d++].Ac(c,b&255),this.za[d&this.ve].Ac(0,b>>8&255))};k.wm=function(a,b){this.sg=a;this.ga=a.Sc(this.kg=b,0);return this.$&1?0:this.rb(this.ga)}; -k.xm=function(a,b){this.sg=a;this.ga=a.Sc(this.kg=b,1);return this.$&1?0:this.Ga(this.ga)};k.En=function(a,b){this.sg=a;this.Ia=this.ga=a.Sc(this.kg=b,0);return this.$&1?0:this.rb(this.ga)};k.Fn=function(a,b){this.sg=a;this.Ia=this.ga=a.Sc(this.kg=b,1);return this.$&1?0:this.Ga(this.ga)};k.cp=function(a){this.$&2||this.Zc(this.sg.Yb(this.kg,1),a)};k.dp=function(a){this.$&2||this.Ld(this.sg.Yb(this.kg,2),a)};k.da=function(){var a=this.rb(this.Ba);this.Ba=this.qa.Ja+(this.ra=this.ra+1&65535);return a}; -k.L=function(){var a=this.rb(this.Ba)<<24>>24;this.Ba=this.qa.Ja+(this.ra=this.ra+1&65535);return a&65535};k.K=function(){var a=this.Ga(this.Ba);this.Ba=this.qa.Ja+(this.ra=this.ra+2&65535);return a};k.Ha=function(){var a=this.X;this.X=this.X+2&65535;return this.Ga(this.Cb.Sc(a,1))};function K(a,b){var c=a.X=a.X-2&65535;a.Ld(a.Cb.Yb(c,1),b)} -k.Ug=function(){G(this,"AX",this.G);G(this,"BX",this.B);G(this,"CX",this.I);G(this,"DX",this.J);G(this,"SP",this.X);G(this,"BP",this.H);G(this,"SI",this.F);G(this,"DI",this.D);G(this,"CS",this.qa.na);G(this,"DS",this.Ob.na);G(this,"SS",this.Cb.na);G(this,"ES",this.$a.na);G(this,"IP",this.ra);var a=Cc(this);G(this,"PS",a);G(this,"C",a&1?1:0,1);G(this,"P",a&4?1:0,1);G(this,"A",a&16?1:0,1);G(this,"Z",a&64?1:0,1);G(this,"S",a&128?1:0,1);G(this,"T",a&256?1:0,1);G(this,"I",a&512?1:0,1);G(this,"D",a&1024? -1:0,1);G(this,"O",a&2048?1:0,1);this.sa.speed&&(this.sa.speed.innerHTML=this.Mb&&this.jd?this.jd.toFixed(2)+"Mhz":"Stopped")}; -k.sf=function(a){this.ji=!0;this.pm=a&&this.Z&&1this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=a+b)&255}function md(a,b){this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a|b)&255} -function nd(a,b){this.la=a^b;this.Y=this.ia=a+b+(this.Y&this.ca?1:0);this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return this.Y&255}function od(a,b){this.la=a^b;this.Y=this.ia=a-b-(this.Y&this.ca?1:0);this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return this.Y&255}function pd(a,b){this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a&b)&255} -function qd(a,b){this.la=a^b;this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=a-b)&255}function rd(a,b){this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a^b)&255}function sd(a,b){this.la=a^b;this.ca=256;this.Y=this.ia=a-b;this.A-=0>this.Ia?0>this.ga?this.Tb:this.Li:this.ob;this.$|=2;return a} -function td(a,b){this.la=a^b;this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=a+b)&65535}function ud(a,b){this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a|b)&65535}function vd(a,b){this.la=a^b;this.Y=this.ia=a+b+(this.Y&this.ca?1:0);this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return this.Y&65535} -function wd(a,b){this.la=a^b;this.Y=this.ia=a-b-(this.Y&this.ca?1:0);this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return this.Y&65535}function xd(a,b){this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a&b)&65535}function yd(a,b){this.la=a^b;this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=a-b)&65535} -function zd(a,b){this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a^b)&65535}function Ad(a,b){this.la=a^b;this.ca=65536;this.Y=this.ia=a-b;this.A-=0>this.Ia?0>this.ga?this.Tb:this.Li:this.ob;this.$|=2;return a}function Bd(a,b){this.Y=this.Y&this.ca-1|(a&b?this.ca:0);(a^a>>1)&b>>1?gd(this):bd(this)}function Cd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<>8-e)&255:d=a<<8;Bd.call(this,d,256)}return c} -function Dd(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<>16-e)&65535:d=a<<16;Bd.call(this,d,65536)}return c}function Ed(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);Bd.call(this,d,256)}return c}function Fd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);Bd.call(this,d,65536)}return c} -function Gd(a,b){var c=a;if(b){var d;(d=(b&this.mf)%9)?(d=a<>9-d,c=d&255):d=a|(this.Y&this.ca?1:0)<<8;Bd.call(this,d,256)}return c}function Hd(a,b){var c=a;if(b){var d;(d=(b&this.mf)%17)?(d=a<>17-d,c=d&65535):d=a|(this.Y&this.ca?1:0)<<16;Bd.call(this,d,65536)}return c}function Id(a,b){var c=a;b&&(c=(b&this.mf)%9,c=a>>c|(this.Y&this.ca?1:0)<<8-c|a<<9-c,Bd.call(this,c,256),c&=255);return c} -function Jd(a,b){var c=a;b&&(c=(b&this.mf)%17,c=a>>c|(this.Y&this.ca?1:0)<<16-c|a<<17-c,Bd.call(this,c,65536),c&=65535);return c}function Kd(a,b){var c=a;b&&(c=8>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.la=a^this.Y;this.ca=256;a=this.Y}return a&255}function Nd(a,b){if(b){var c=16>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.la=a^this.Y;this.ca=65536;a=this.Y}return a&65535}function Od(a,b){if(b){8>24>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.la=a^this.Y;this.ca=256;a=this.Y}return a&255} -function Pd(a,b){if(b){16>16>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.la=a^this.Y;this.ca=65536;a=this.Y}return a&65535}function Qd(){this.A-=0>this.ga?2:this.Fl;return 1}function Rd(){var a=this.I&this.mf;this.A-=(0>this.ga?this.gj:this.fj)+(a<this.ga?this.gj:this.fj)+(a<this.Ia?this.hc:this.yl;return b},Xd,Xd,Xd,Xd,Xd,Xd,Xd],ae=[function(a,b){this.A-=0>this.Ia?this.ql:this.ol;return b},M,M,M,M,M,M,M],be=[Cd,Ed,Gd,Id,Kd,Md,M,Od],ce=[Dd,Fd,Hd,Jd,Ld,Nd,M,Pd],ee=[function(a,b){b=this.da();this.Y=this.ia=this.la=a&b;this.ca=256;this.A-=0>this.ga?this.mj:this.lj;this.$|=2;return a},M,function(a){this.A-=0>this.ga?this.hg:this.gg;return a^255},function(a,b){b=0;this.la=a^b;this.ca= -256;this.A-=0>this.ga?this.hg:this.gg;return(this.Y=this.ia=b-a)&255},function(a){this.G=this.Bb=(this.Y=(this.G&255)*a)&65535;this.la=this.ia=this.Y;this.ca=256;this.G&65280?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?this.ul:this.tl;this.$|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.Bb=b&65535;this.Y=this.la=this.ia=b;this.ca=256;127b?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?this.$k:this.Zk;this.$|=2;return a},function(a){if(!a)return de.call(this), -a;var b=this.G/a;if(255this.ga?this.Sk:this.Rk;this.$|=2;return a},function(a){if(!a)return de.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return de.call(this),a;this.Bb=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.ia=this.la=this.Y=b|256;this.ca=256;this.A-=0>this.ga?this.Wk:this.Vk;this.$|=2;return a}],fe=[function(a,b){b=this.K();this.Y=this.ia= -this.la=a&b;this.ca=65536;this.A-=0>this.ga?this.mj:this.lj;this.$|=2;return a},M,function(a){this.A-=0>this.ga?this.hg:this.gg;return a^65535},function(a,b){b=0;this.la=a^b;this.ca=65536;this.A-=0>this.ga?this.hg:this.gg;return(this.Y=this.ia=b-a)&65535},function(a){this.Bb=this.G=(this.Y=this.G*a)&65535;this.ng=this.J=this.Y>>16&65535;this.la=this.ia=this.Y;this.ca=65536;this.J?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?this.wl:this.vl;this.$|=2;return a},function(a){var b=(this.G<< -16>>16)*(a<<16>>16);this.G=this.Bb=b&65535;this.J=this.ng=b>>16&65535;this.Y=this.la=this.ia=b;this.ca=65536;32767b?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?this.bl:this.al;this.$|=2;return a},function(a,b){if(!a)return de.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return de.call(this),a;this.Bb=this.G=c&65535;this.ng=this.J=b%a&65535;this.ia=this.la=this.Y=c|65536;this.ca=65536;this.A-=0>this.ga?this.Uk:this.Tk;this.$|=2;return a},function(a, -b){if(!a)return de.call(this),a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return de.call(this),a;this.Bb=this.G=d&65535;this.ng=this.J=b%c&65535;this.ia=this.la=this.Y=d|65536;this.ca=65536;this.A-=0>this.ga?this.Yk:this.Xk;this.$|=2;return a}],sc=[function(a){this.la=a;a=(this.ia=a+1)&255;this.Y=a|(this.Y&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ga?this.fg:this.eg;return a},function(a){this.la=a;a=(this.ia=a-1)&255;this.Y=a|(this.Y&this.ca?1:0)<<8;this.ca= -256;this.A-=0>this.ga?this.fg:this.eg;return a},M,M,M,M,M,M],uc=[function(a){this.la=a;a=(this.ia=a+1)&65535;this.Y=a|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ga?this.fg:this.eg;return a},function(a){this.la=a;a=(this.ia=a-1)&65535;this.Y=a|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ga?this.fg:this.eg;return a},function(a){K(this,this.ra);I(this,a);this.A-=0>this.ga?this.Qk:this.Pk;this.$|=2;return a},function(a){if(0>this.ga)return M.call(this,a);K(this,this.qa.na);K(this, -this.ra);zc(this,a,this.Ga(this.ga+2));this.A-=this.Nk;this.$|=2;return a},function(a){I(this,a);this.A-=0>this.ga?this.kl:this.jl;this.$|=2;return a},function(a){if(0>this.ga)return M.call(this,a);zc(this,a,this.Ga(this.ga+2));this.A-=this.hl;this.$|=2;return a},function(a){var b=a;this.$&512&&(a=a-2&65535,80286>this.Fa&&(b=a));K(this,b);this.A-=0>this.ga?this.oc:this.Al;this.$|=2;return a},Xd],ge=[Cd,Ed,Gd,Id,Kd,Md,M,Od],he=[Dd,Fd,Hd,Jd,Ld,Nd,M,Pd]; -function ie(a,b){this.A-=0>this.Ia?0>this.ga?this.sl:this.rl:this.pl;return b}function je(){return ie.call(this,0,this.Bb)}function ke(a,b){this.Y=this.ia=this.la=a&b;this.ca=256;this.A-=0>this.Ia?0>this.ga?this.nj:this.jg:this.jg;this.$|=2;return a}function le(a,b){this.Y=this.ia=this.la=a&b;this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.nj:this.jg:this.jg;this.$|=2;return a} -function me(a,b){var c=(b<<16>>16)*(this.da()<<24>>24);this.Y=this.la=this.ia=c;this.ca=256;32767c?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?21:24;return c&65535}function ne(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.Y=this.la=this.ia=c;this.ca=65536;32767c?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?21:24;return c&65535}function oe(a){return a}function pe(a){if(0>this.ga)return N.call(this),a;this.A-=this.ll;return this.ga} -function qe(a,b){if(0>this.ga)return N.call(this),a;Pc(this,this.Ga(this.ga+2));this.A-=this.Pi;return b}function re(a,b){if(0>this.ga)return N.call(this),a;Rc(this,this.Ga(this.ga+2));this.A-=this.Pi;return b}function se(a){if(0>this.ga)return bc.call(this),a;var b=a<<16>>16,c=this.Ga(this.ga)<<16>>16,d=this.Ga(this.ga+2)<<16>>16;this.A-=this.Jk;if(bd)I(this,this.uh-this.qa.Ja),id.call(this,5,null,0);this.$|=2;return a} -function te(a,b){this.A-=10+(0>this.ga?0:1);if((a&3)<(b&3))return a=a&-4|b&3,ed(this),a;$c(this);return a}function ue(a,b){this.A-=14+(0>this.ga?0:2);if(0<=this.Pb.load(b,!0)&&this.Pb.Kc>=(this.qa.na&3)&&this.Pb.Kc>=(b&3))return ed(this),this.Pb.Ya&65280;$c(this);return a}function ve(a,b){this.A-=14+(0>this.ga?0:2);if(b&65528&&0<=this.Pb.load(b,!0)&&(3072==(this.Pb.Ya&3072)||this.Pb.Kc>=(this.qa.na&3))&&this.Pb.Kc>=(b&3))return ed(this),this.Pb.Lc;$c(this);return a} -function we(a,b){if(0>this.ga){switch(this.Kg&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.pj}else this.Ia=this.ga,this.Q(a),this.A-=this.oj;return b} -function xe(a,b){if(0>this.ga){switch(this.Kg&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.X=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.pj}else this.Ia=this.ga,this.R(a),this.A-=this.oj;return b}function id(a,b,c){Kc(this,a)&&(K(this,Cc(this)),this.wa&=this.Hc.jh,K(this,this.qa.na),K(this,this.ra),null!=b&&K(this,b),zc(this,this.Hc.tj,this.Hc.na),this.A-=this.dl+c)} -function de(){I(this,this.uh-this.qa.Ja);id.call(this,0,null,2)}function Zb(a,b){this.Z&&this.Z.message("Fault 0x"+p(a)+(null!=b?" (0x"+q(b)+")":"")+" on opcode 0x"+p(db(this.ma,this.Ba))+" at "+ca(this.ra,this.qa.na));80186<=this.Fa&&(I(this,this.uh-this.qa.Ja),id.call(this,a,b,0))}function bc(){Zb.call(this,6);this.xb()}function N(){I(this,this.uh-this.qa.Ja);Ua(this,"Undefined opcode 0x"+p(db(this.ma,this.Ba))+" at "+ca(this.ra,this.qa.na));this.xb()} -function ye(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}function ze(a){a=a.call(this,this.G&255,this.I&255);this.G=this.G&-256|a}function Ae(a){a=a.call(this,this.G&255,this.J&255);this.G=this.G&-256|a}function Be(a){a=a.call(this,this.G&255,this.B&255);this.G=this.G&-256|a}function Ce(a){a=a.call(this,this.G&255,this.G>>8);this.G=this.G&-256|a}function De(a){a=a.call(this,this.G&255,this.I>>8);this.G=this.G&-256|a} -function Ee(a){a=a.call(this,this.G&255,this.J>>8);this.G=this.G&-256|a}function Fe(a){a=a.call(this,this.G&255,this.B>>8);this.G=this.G&-256|a}function Ge(a){a=a.call(this,this.I&255,this.G&255);this.I=this.I&-256|a}function He(a){a=a.call(this,this.I&255,this.I&255);this.I=this.I&-256|a}function Ie(a){a=a.call(this,this.I&255,this.J&255);this.I=this.I&-256|a}function Je(a){a=a.call(this,this.I&255,this.B&255);this.I=this.I&-256|a} -function Ke(a){a=a.call(this,this.I&255,this.G>>8);this.I=this.I&-256|a}function Le(a){a=a.call(this,this.I&255,this.I>>8);this.I=this.I&-256|a}function Me(a){a=a.call(this,this.I&255,this.J>>8);this.I=this.I&-256|a}function Ne(a){a=a.call(this,this.I&255,this.B>>8);this.I=this.I&-256|a}function Oe(a){a=a.call(this,this.J&255,this.G&255);this.J=this.J&-256|a}function Pe(a){a=a.call(this,this.J&255,this.I&255);this.J=this.J&-256|a} -function Qe(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function Re(a){a=a.call(this,this.J&255,this.B&255);this.J=this.J&-256|a}function Se(a){a=a.call(this,this.J&255,this.G>>8);this.J=this.J&-256|a}function Te(a){a=a.call(this,this.J&255,this.I>>8);this.J=this.J&-256|a}function Ue(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function Ve(a){a=a.call(this,this.J&255,this.B>>8);this.J=this.J&-256|a} -function We(a){a=a.call(this,this.B&255,this.G&255);this.B=this.B&-256|a}function Xe(a){a=a.call(this,this.B&255,this.I&255);this.B=this.B&-256|a}function Ye(a){a=a.call(this,this.B&255,this.J&255);this.B=this.B&-256|a}function Ze(a){a=a.call(this,this.B&255,this.B&255);this.B=this.B&-256|a}function $e(a){a=a.call(this,this.B&255,this.G>>8);this.B=this.B&-256|a}function af(a){a=a.call(this,this.B&255,this.I>>8);this.B=this.B&-256|a} -function bf(a){a=a.call(this,this.B&255,this.J>>8);this.B=this.B&-256|a}function cf(a){a=a.call(this,this.B&255,this.B>>8);this.B=this.B&-256|a}function df(a){a=a.call(this,this.G>>8,this.G&255);this.G=this.G&255|a<<8}function ef(a){a=a.call(this,this.G>>8,this.I&255);this.G=this.G&255|a<<8}function ff(a){a=a.call(this,this.G>>8,this.J&255);this.G=this.G&255|a<<8}function gf(a){a=a.call(this,this.G>>8,this.B&255);this.G=this.G&255|a<<8} -function hf(a){a=a.call(this,this.G>>8,this.G>>8);this.G=this.G&255|a<<8}function jf(a){a=a.call(this,this.G>>8,this.I>>8);this.G=this.G&255|a<<8}function kf(a){a=a.call(this,this.G>>8,this.J>>8);this.G=this.G&255|a<<8}function lf(a){a=a.call(this,this.G>>8,this.B>>8);this.G=this.G&255|a<<8}function mf(a){a=a.call(this,this.I>>8,this.G&255);this.I=this.I&255|a<<8}function nf(a){a=a.call(this,this.I>>8,this.I&255);this.I=this.I&255|a<<8} -function of(a){a=a.call(this,this.I>>8,this.J&255);this.I=this.I&255|a<<8}function pf(a){a=a.call(this,this.I>>8,this.B&255);this.I=this.I&255|a<<8}function qf(a){a=a.call(this,this.I>>8,this.G>>8);this.I=this.I&255|a<<8}function rf(a){a=a.call(this,this.I>>8,this.I>>8);this.I=this.I&255|a<<8}function sf(a){a=a.call(this,this.I>>8,this.J>>8);this.I=this.I&255|a<<8}function tf(a){a=a.call(this,this.I>>8,this.B>>8);this.I=this.I&255|a<<8} -function uf(a){a=a.call(this,this.J>>8,this.G&255);this.J=this.J&255|a<<8}function vf(a){a=a.call(this,this.J>>8,this.I&255);this.J=this.J&255|a<<8}function wf(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function xf(a){a=a.call(this,this.J>>8,this.B&255);this.J=this.J&255|a<<8}function yf(a){a=a.call(this,this.J>>8,this.G>>8);this.J=this.J&255|a<<8}function zf(a){a=a.call(this,this.J>>8,this.I>>8);this.J=this.J&255|a<<8} -function Af(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function Bf(a){a=a.call(this,this.J>>8,this.B>>8);this.J=this.J&255|a<<8}function Cf(a){a=a.call(this,this.B>>8,this.G&255);this.B=this.B&255|a<<8}function Df(a){a=a.call(this,this.B>>8,this.I&255);this.B=this.B&255|a<<8}function Ef(a){a=a.call(this,this.B>>8,this.J&255);this.B=this.B&255|a<<8}function Ff(a){a=a.call(this,this.B>>8,this.B&255);this.B=this.B&255|a<<8} -function Gf(a){a=a.call(this,this.B>>8,this.G>>8);this.B=this.B&255|a<<8}function Hf(a){a=a.call(this,this.B>>8,this.I>>8);this.B=this.B&255|a<<8}function If(a){a=a.call(this,this.B>>8,this.J>>8);this.B=this.B&255|a<<8}function Jf(a){a=a.call(this,this.B>>8,this.B>>8);this.B=this.B&255|a<<8}function Kf(a){this.G=a.call(this,this.G,this.G)}function Lf(a){this.G=a.call(this,this.G,this.I)}function Mf(a){this.G=a.call(this,this.G,this.J)}function Nf(a){this.G=a.call(this,this.G,this.B)} -function Of(a){this.G=a.call(this,this.G,this.X)}function Pf(a){this.G=a.call(this,this.G,this.H)}function Qf(a){this.G=a.call(this,this.G,this.F)}function Rf(a){this.G=a.call(this,this.G,this.D)}function Sf(a){this.I=a.call(this,this.I,this.G)}function Tf(a){this.I=a.call(this,this.I,this.I)}function Uf(a){this.I=a.call(this,this.I,this.J)}function Vf(a){this.I=a.call(this,this.I,this.B)}function Wf(a){this.I=a.call(this,this.I,this.X)}function Xf(a){this.I=a.call(this,this.I,this.H)} -function Yf(a){this.I=a.call(this,this.I,this.F)}function Zf(a){this.I=a.call(this,this.I,this.D)}function $f(a){this.J=a.call(this,this.J,this.G)}function ag(a){this.J=a.call(this,this.J,this.I)}function bg(a){this.J=a.call(this,this.J,this.J)}function cg(a){this.J=a.call(this,this.J,this.B)}function dg(a){this.J=a.call(this,this.J,this.X)}function eg(a){this.J=a.call(this,this.J,this.H)}function fg(a){this.J=a.call(this,this.J,this.F)}function gg(a){this.J=a.call(this,this.J,this.D)} -function hg(a){this.B=a.call(this,this.B,this.G)}function ig(a){this.B=a.call(this,this.B,this.I)}function jg(a){this.B=a.call(this,this.B,this.J)}function kg(a){this.B=a.call(this,this.B,this.B)}function lg(a){this.B=a.call(this,this.B,this.X)}function mg(a){this.B=a.call(this,this.B,this.H)}function ng(a){this.B=a.call(this,this.B,this.F)}function og(a){this.B=a.call(this,this.B,this.D)}function pg(a){this.X=a.call(this,this.X,this.G)}function qg(a){this.X=a.call(this,this.X,this.I)} -function rg(a){this.X=a.call(this,this.X,this.J)}function sg(a){this.X=a.call(this,this.X,this.B)}function tg(a){this.X=a.call(this,this.X,this.X)}function ug(a){this.X=a.call(this,this.X,this.H)}function vg(a){this.X=a.call(this,this.X,this.F)}function wg(a){this.X=a.call(this,this.X,this.D)}function xg(a){this.H=a.call(this,this.H,this.G)}function yg(a){this.H=a.call(this,this.H,this.I)}function zg(a){this.H=a.call(this,this.H,this.J)}function Ag(a){this.H=a.call(this,this.H,this.B)} -function Bg(a){this.H=a.call(this,this.H,this.X)}function Cg(a){this.H=a.call(this,this.H,this.H)}function Dg(a){this.H=a.call(this,this.H,this.F)}function Eg(a){this.H=a.call(this,this.H,this.D)}function Fg(a){this.F=a.call(this,this.F,this.G)}function Gg(a){this.F=a.call(this,this.F,this.I)}function Hg(a){this.F=a.call(this,this.F,this.J)}function Ig(a){this.F=a.call(this,this.F,this.B)}function Jg(a){this.F=a.call(this,this.F,this.X)}function Kg(a){this.F=a.call(this,this.F,this.H)} -function Lg(a){this.F=a.call(this,this.F,this.F)}function Mg(a){this.F=a.call(this,this.F,this.D)}function Ng(a){this.D=a.call(this,this.D,this.G)}function Og(a){this.D=a.call(this,this.D,this.I)}function Pg(a){this.D=a.call(this,this.D,this.J)}function Qg(a){this.D=a.call(this,this.D,this.B)}function Rg(a){this.D=a.call(this,this.D,this.X)}function Sg(a){this.D=a.call(this,this.D,this.H)}function Tg(a){this.D=a.call(this,this.D,this.F)}function Ug(a){this.D=a.call(this,this.D,this.D)} -var Vg=[function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.G&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.G&255);this.Q(a);this.A-=this.aa},function(a){a= -a.call(this,this.N(this.C,this.D),this.G&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.G&255);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.G&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.I&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.I&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F& -65535),this.I&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.I&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.I&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.I&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.I&255);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.I&255);this.Q(a);this.A-=this.aa},function(a){a= -a.call(this,this.N(this.C,this.B+this.F&65535),this.J&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.J&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.J&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.J&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C, -this.D),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.J&255);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.B&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.B&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.B&255);this.Q(a); -this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.B&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.B&255);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C, -this.B+this.F&65535),this.G>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.G>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.G>>8); -this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.G>>8);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.G>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.I>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.I>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.I>>8);this.Q(a);this.A-=this.fa},function(a){a= -a.call(this,this.N(this.M,this.H+this.D&65535),this.I>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.I>>8);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.J>>8); -this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.J>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.J>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.J>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a= -a.call(this,this.N(this.C,this.K()),this.J>>8);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.B>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.B>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.B>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+ -this.D&65535),this.B>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.B>>8);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F+this.L()&65535),this.G&255);this.Q(a);this.A-=this.V}, +function l(a,b){var c="";void 0===b?b=8:8=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function p(a){return l(a,2)}function r(a){return l(a,4)}function ca(a,b){return void 0!==b?r(b)+":"+r(a):l(a)}function da(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0":">",'"':""","'":"'"};function ga(a){return a.replace(/[&<>"']/g,function(a){return fa[a]})}function ha(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function ka(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[g]);0c&&a.splice(-(c+1),0,b)}function ma(){return Date.now()||+new Date}function na(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var oa=[31,28,31,30,31,30,31,31,30,31,30,31]; +function pa(a,b,c,d,e,f){b=!!b;var g=0,h=null,m=da(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(n.onreadystatechange=void 0,h=n.responseText,200!=n.status&&(g=n.status||-1),d&&e&&e.call(d,m,h,g,f))});if(c){var q="",t;for(t in c)c.hasOwnProperty(t)&&(q&&(q+="&"),q+=t+"="+encodeURIComponent(c[t]));q=q.replace(/%20/g,"+");n.open("POST",a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded"); +n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(h=n.responseText,200!=n.status&&(g=n.status||-1),d&&e&&e.call(d,m,h,g,f),a=[g,h]);return a}function qa(){return"http://"+(window?window.location.host:"www.pcjs.org")}function v(a){window?window.alert(a):console.log(a)}function ra(a){var b=!1;window&&(b=window.confirm(a));return b}function sa(a){window&&window.localStorage.setItem("user",a)} +function ta(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function ua(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0=this.Zf?12:14;this.hc=1<>2;this.fb=this.hc-1;this.Ug=(this.te+this.hc)/this.hc|0;this.xe=this.Ug-1;this.sd=[];this.td=[];this.Vf=this.Wf=!1;this.Bi();this.Sa()}x(w,Ua); +Ua.prototype.Bi=function(){this.Aa=Array(this.Ug);for(var a=0;a>a.ob;0>this.ob;0>a.ob;0>a.ob].pg(b&a.fb)} +function ab(a,b){var c=b&a.fb,d=(b&a.Jb)>>a.ob;return c!=a.fb?a.Aa[d].Dj(c):a.Aa[d++].pg(c)|a.Aa[d&a.xe].pg(0)<<8}function bb(a,b,c){a.Aa[(b&a.Jb)>>a.ob].yg(b&a.fb,c&255)}function cb(a,b,c){var d=b&a.fb;b=(b&a.Jb)>>a.ob;d!=a.fb?a.Aa[b].Mj(d,c&65535):(a.Aa[b++].yg(d,c&255),a.Aa[b&a.xe].yg(0,c>>8&255))} +function eb(a){for(var b=0,c=[],d=0;d>2),this.ne(nb);else{this.qa=Array(b>>2);for(d=0;d>2]>>((a&3)<<3)&255},$o:function(a){var b=a>>2;a=(a&3)<<3;var c=this.qa[b]>>a;return 24>a?c&65535:c&255|(this.qa[b+1]&255)<<8},ip:function(a,b){var c=a>>2,d=(a&3)<<3;this.qa[c]=this.qa[c]&~(255<>2,d=(a&3)<<3;24>d?this.qa[c]=this.qa[c]&~(65535<>8);this.bb=!0},Zo:function(a){pb(this.Z,this.Ve+a);return this.pg(a)},bp:function(a){pb(this.Z,this.Ve+a)||pb(this.Z,this.Ve+a+1);return this.Dj(a)},kp:function(a,b){qb(this.Z,this.Ve+a);this.yg(a,b)},np:function(a,b){qb(this.Z,this.Ve+a)||qb(this.Z,this.Ve+a+1);this.Mj(a,b)},save:function(){var a,b;if(this.ia)a=null;else if(Ra)for(a=Array(this.ik>>2),b=0;b=a.lf&&(a.lf+=a.kf,c=!0);0<=a.mf&&a.mf<=E(a)&&(a.kf=a.mf=-1,Ab(a),a.zb(),c=!0);c&&a.ca(E(a)+" cycles: checksum="+l(a.$f))}}function F(a,b,c,d){void 0!==a.ta[b]&&(void 0===d&&(d=4),void 0===c&&(Qa(a,"Register "+b+" is invalid"),a.zb()),c=l(c,d),a.ta[b].innerHTML!=c&&(a.ta[b].innerHTML=c))}k.Zg=function(){};k.fi=function(){}; +k.wb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.ta[c]=d;d.onclick=function(){e.Ob?e.zb(!0):e.Me(!0)};a=!0;break;case "reset":this.ta[c]=d;d.onclick=function(){e.Da&&Fb(e.Da)};a=!0;break;case "speed":this.ta[c]=d;a=!0;break;case "setSpeed":this.ta[c]=d,d.onclick=function(){Gb(e,e.Gd<<1,!0)},d.innerHTML=this.hf.toFixed(2)+"Mhz",a=!0}return a};function Ib(a,b,c){a.Je+=b;c&&(a.Yc=a.A=0)} +function Jb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1a.ph&&(c=Math.round(c/a.Gd));return c}function zb(a){a.md=0;a.sh=1;a.Je=a.ie=a.Yc=a.A=0;Ab(a);Gb(a,1)} +function Gb(a,b,c){void 0!==b&&(0.8>a.md/a.hf&&(b=1),a.Gd=b,a.hf=a.ph*a.Gd,b=a.hf.toFixed(2)+"Mhz",a.ta.setSpeed&&(a.ta.setSpeed.innerHTML=b),a.ca("target speed: "+b),c&&a.Md());Ib(a,a.ie);a.ie=0;a.jf=ma();a.Ge=0;Jb(a)} +k.Me=function(a){if(Na(this,!0)){this.Ob||(Gb(this),this.Da&&this.Da.start(this.jf,E(this)),this.Ob=!0,this.ka&&Kb(this.ka),this.ta.run&&(this.ta.run.innerHTML="Halt"),a&&this.Md());this.wj>=this.Hd&&Jb(this,!0);this.eg=0;this.qh=ma();this.Ge&&(a=this.qh-this.Ge,a>this.Fk&&(this.jf+=a,this.jf>this.qh&&(this.jf=this.qh)));try{do{this.uf(this.af?1:Math.round(this.Rn/this.sh));var b=this.Yc-this.A;this.ie+=b;this.eg+=b;Ib(this,0,!0);Eb(this,b);this.dg-=b;0>=this.dg&&(this.dg+=this.Jk,this.fi());this.cg-= +b;0>=this.cg&&(this.cg+=this.Ik,this.Zg());this.nf-=b;if(0>=this.nf){this.nf+=this.Ii;break}}while(this.Ob)}catch(c){this.zb();Db(this);this.Da&&this.Da.stop(ma(),E(this));Na(this,!1);Qa(this,c.message);return}b=setTimeout;a=this.Zn;this.Ge=ma();var d=this.Fk;this.eg&&(d=Math.round(d*this.eg/this.Ii));var d=d-(this.Ge-this.qh),e=this.Ge-this.jf;e&&(this.md=Math.round(this.ie/(10*e))/100,864E5<=e&&(this.Je=0,this.ka&&Lb(this.ka,!0),Gb(this)));if(0>d||this.md>13;return this.La=e}if(b&&768>=b)return this.oa=a,this.Nc=c,this.ab=d,this.Mc=(d&24576)>>13,this.La=e}return-1}function Vb(a){return this.La+a} +function Wb(a){return this.La+a}function Rb(a,b,c){return a+b<=this.Nc?this.La+a:Tb.call(this,0,0,c)}function Tb(a,b,c){c||Xb.call(this.S,13,0);return-1}function Sb(a,b,c){return a+b<=this.Nc?this.La+a:Ub.call(this,0,0,c)}function Ub(a,b,c){c||Xb.call(this.S,13,0);return-1}Nb.prototype.save=function(){return[this.oa,this.La,this.Nc,this.ab,this.Mc,this.ug]};Nb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.oa=a[0],this.La=a[1],this.Nc=a[2],this.ab=a[3],this.Mc=a[4],this.ug=a[5])}; +function Ob(a,b){void 0===b&&(b=!!(a.S.ad&1));b?(a.load=Qb,a.Uc=Rb,a.$b=Sb):(a.load=Pb,a.Uc=Vb,a.$b=Wb)} +function Yb(a){this.Ga=a.model||8088;var b=0;switch(this.Ga){default:case 8088:b=4772727;break;case 80286:b=6E6}xb.call(this,a,b);this.Tj=61442;this.Eg=4;this.of=255;this.xj=4;this.aa=5;this.ua=6;this.fa=7;this.ga=8;this.P=9;this.V=11;this.W=12;this.He=4;this.Lk=60;this.Mk=83;this.Vb=3;this.qb=9;this.ic=16;this.wh=1;this.Qk=19;this.Sk=28;this.Uk=16;this.Tk=21;this.Rk=37;this.Ok=2;this.Qi=9;this.Pk=5;this.Nk=33;this.Si=10;this.Ri=8;this.ig=3;this.hg=15;this.hl=51;this.il=1;this.jl=2;this.kl=4;this.gl= +32;this.ml=this.Ti=15;this.Wb=16;this.Xb=4;this.ol=11;this.nl=18;this.ll=24;this.Cb=4;this.pl=2;this.Ui=16;this.ql=17;this.Zi=18;this.rl=19;this.Yi=5;this.$i=6;this.wl=2;this.vl=8;this.tl=9;this.bj=this.aj=this.sl=this.ul=10;this.Wk=80;this.Yk=144;this.Vk=86;this.Xk=154;this.$k=101;this.bl=165;this.Zk=107;this.al=171;this.yl=70;this.Al=113;this.xl=76;this.zl=124;this.dl=80;this.fl=128;this.cl=86;this.el=134;this.kg=3;this.jg=16;this.gj=10;this.fj=8;this.Bl=51;this.jc=8;this.Cl=17;this.Dl=36;this.rc= +11;this.El=16;this.lg=10;this.Pb=2;this.Ni=18;this.Oi=9-this.Pb;this.Pi=17-this.Pb;this.Vi=12;this.Wi=9-this.Pb;this.Xi=13-this.Pb;this.cj=18;this.dj=9-this.Pb;this.ej=17-this.Pb;this.hj=15;this.ij=9-this.Pb;this.jj=15-this.Pb;this.nj=11;this.oj=9-this.Pb;this.pj=10-this.Pb;this.Fl=8;this.Il=12;this.Gl=18;this.Hl=17;this.Jl=15;this.lj=8;this.kj=20;this.mj=2;this.sj=3;this.mg=9;this.rj=5;this.qj=11;this.uj=4;this.tj=17;this.Kl=11;this.Pa=Zb.slice();80186<=this.Ga&&(this.of=31,this.Pa[15]=G,this.Pa[96]= +$b,this.Pa[97]=ac,this.Pa[98]=bc,this.Pa[99]=G,this.Pa[100]=G,this.Pa[101]=G,this.Pa[102]=G,this.Pa[103]=G,this.Pa[104]=cc,this.Pa[105]=dc,this.Pa[106]=ec,this.Pa[107]=fc,this.Pa[108]=gc,this.Pa[109]=hc,this.Pa[110]=ic,this.Pa[111]=jc,this.Pa[192]=kc,this.Pa[193]=lc,this.Pa[200]=mc,this.Pa[200]=nc,this.Pa[241]=oc,pc[7]=qc,rc[7]=qc,80286<=this.Ga&&(this.Tj=2,this.Eg=0,this.Pa[15]=sc,this.Pa[99]=tc,this.Pa[84]=uc,this.P=this.ga=this.fa=this.ua=this.aa=this.xj=0,this.W=this.V=1,this.He=3,this.Lk=14, +this.Mk=16,this.Vb=2,this.ic=this.qb=7,this.wh=0,this.Qk=7,this.Sk=13,this.Uk=7,this.Tk=11,this.Rk=16,this.Ok=3,this.Qi=6,this.Pk=2,this.Nk=13,this.Ri=this.Si=5,this.ig=2,this.hg=7,this.hl=23,this.il=0,this.jl=1,this.kl=3,this.gl=17,this.Ti=7,this.ml=11,this.Wb=7,this.Xb=3,this.ol=7,this.nl=11,this.ll=15,this.Cb=2,this.pl=3,this.Ui=7,this.rl=this.Zi=this.ql=8,this.$i=this.Yi=4,this.wl=2,this.vl=3,this.tl=5,this.ul=2,this.sl=3,this.aj=5,this.bj=3,this.Wk=14,this.Yk=22,this.Vk=17,this.Xk=25,this.$k= +17,this.bl=25,this.Zk=20,this.al=28,this.yl=13,this.Al=21,this.xl=16,this.zl=24,this.dl=13,this.fl=21,this.cl=16,this.el=24,this.kg=2,this.jg=7,this.fj=this.gj=5,this.Bl=19,this.Cl=this.jc=5,this.Dl=17,this.rc=3,this.El=5,this.lg=3,this.Pb=0,this.Ni=8,this.Oi=5,this.Pi=9,this.Wi=this.Vi=5,this.Xi=4,this.dj=this.cj=5,this.ej=4,this.hj=7,this.ij=5,this.jj=8,this.nj=3,this.oj=4,this.pj=3,this.Il=this.Fl=11,this.Hl=this.Gl=15,this.Jl=7,this.lj=5,this.kj=8,this.mj=0,this.sj=2,this.mg=6,this.rj=3,this.qj= +6,this.uj=3,this.Kl=this.tj=5));this.Gg=[];this.Hg=[];this.Wg=0;this.Aa=[];this.te=this.Jb=this.ob=this.fb=this.xe=0;this.T=this.Am;this.U=this.Bm;this.N=this.In;this.O=this.Jn;this.Q=this.gp;this.R=this.hp;vc(this)}x(xb,Yb);k=Yb.prototype;k.Bi=function(a,b,c,d,e){this.Aa=a;this.te=this.Jb=b;this.ob=c;this.fb=d;this.xe=e};k.reset=function(){this.Ob&&this.zb();vc(this);zb(this);this.kd=!1}; +function vc(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.ad=65520;a.ed=0;a.se=1023;a.Jc={yj:0,oa:0,ab:0,oh:-1};a.ra=new Nb(a,"CS");a.Qb=new Nb(a,"DS");a.Eb=new Nb(a,"SS");a.cb=new Nb(a,"ES");a.am=new Nb(a,"ZERO");wc(a,0,65535);80286<=a.Ga&&(a.Qc=a.We=0,a.Ld=new Nb(a,"LDT",!0),a.xg=new Nb(a,"TSS",!0),a.Rb=new Nb(a,"VER",!0),wc(a,65520,61440),a.ra.La=16711680);xc(a,0);yc(a);a.kb=0;a.Db=a.rg=-1;a.Pg=0;a.ha=a.Ka=-1;a.C=a.Qb;a.M=a.Eb;a.$=a.wa=0} +k.yk=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.sa+this.ra.oa+this.Qb.oa+this.Eb.oa+this.cb.oa+zc(this)|0};function Ac(a,b,c,d){void 0!==d&&(void 0===a.Gg[b]&&(a.Gg[b]=[]),a.Gg[b].push([c,d]))}function Bc(a,b,c){void 0!==c&&(null==a.Hg[b]&&a.Wg++,a.Hg[b]=c)}function Cc(a,b){var c=a.Hg[b];null!=c&&(c(--a.Wg),delete a.Hg[b])}function yc(a,b){void 0===b&&(b=!!(a.ad&1));Dc=b?Ec:Fc;Ob(a.ra,b);Ob(a.Qb,b);Ob(a.Eb,b);Ob(a.cb,b)} +k.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.X,this.H,this.F,this.D]);a.set(1,[this.sa,this.ra.save(),this.Qb.save(),this.Eb.save(),this.cb.save(),zc(this),null!=this.Qc?[this.ad,this.Qc,this.We,this.ed,this.se,this.Ld.save(),this.xg.save()]:null]);a.set(2,[this.C.ug,this.M.ug,this.$,this.wa,this.kb,this.ha,this.Ka]);a.set(3,[this.sh,this.Je,this.Gd]);a.set(4,eb(this.na));return a.data()}; +k.restore=function(a){var b;b=a[0];this.G=b[0];this.B=b[1];this.I=b[2];this.J=b[3];this.X=b[4];this.H=b[5];this.F=b[6];this.D=b[7];b=a[1];this.ra.restore(b[1]);this.Qb.restore(b[2]);this.Eb.restore(b[3]);this.cb.restore(b[4]);xc(this,b[5]);var c=b[6];c&&c.length&&(this.ad=c[0],this.Qc=c[1],this.We=c[2],this.ed=c[3],this.se=c[4],this.Ld.restore(c[5]),this.xg.restore(c[6]),yc(this));I(this,b[0]);b=a[2];this.C=Gc(this,b[0]);this.M=Gc(this,b[1]);this.$=b[2];this.wa=b[3];this.kb=b[4];this.ha=b[5];this.Ka= +b[6];b=a[3];this.sh=b[0];this.Je=b[1];Gb(this,b[2]);a:{b=this.na;a=a[4];for(c=0;c>1?128:0} +function Uc(a){return(a.ja^a.ma^a.ja>>1)&a.da>>1?2048:0}function Vc(a){a.Y&=~a.da}function Wc(a){a.ma=a.ja&16|a.ma&-17}function Xc(a){a.Y|=a.da-1}function Yc(a){Tc(a)&&(a.ja^=a.da>>1|a.da>>2,a.ma^=32896)}function Zc(a){a.ja&=~a.da;a.ma=a.ja&32896|a.ma&-32897}function $c(a){a.Y|=a.da}function ad(a){a.ma=~(a.ja&16)&16|a.ma&-17}function bd(a){a.Y&=~(a.da-1)}function cd(a){Tc(a)||(a.ja^=a.da>>1|a.da>>2,a.ma^=32896)}function dd(a){a.ja|=a.da;a.ma=a.ja&32896|a.ma&-32897} +function zc(a){return a.xa&-2262|Pc(a)|Qc(a)|Rc(a)|Sc(a)|Tc(a)|Uc(a)}function xc(a,b){a.da=256;a.Y=a.ja=a.ma=0;b&1&&$c(a);b&4||(a.ja|=1);b&16&&(a.ma|=16);b&64||Xc(a);b&128&&cd(a);b&2048&&dd(a);a.xa=a.xa&-1793|b&1792|a.Tj;a.xa&256&&(a.kb|=2,a.$|=4)} +k.wb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.ta[c]=d;e=!0;break;default:e=xb.prototype.wb.call(this,a,b,c,d)}return e};k.ub=function(a){return this.Aa[(a&this.Jb)>>this.ob].tc(a&this.fb)}; +k.Ia=function(a){var b=a&this.fb;a=(a&this.Jb)>>this.ob;this.A-=this.xj;return b!=this.fb?this.Aa[a].Rl(b):this.Aa[a++].tc(b)|this.Aa[a&this.xe].tc(0)<<8};k.bd=function(a,b){this.Aa[(a&this.Jb)>>this.ob].Cc(a&this.fb,b&255)};k.Nd=function(a,b){var c=a&this.fb,d=(a&this.Jb)>>this.ob;this.A-=this.xj;c!=this.fb?this.Aa[d].dm(c,b&65535):(this.Aa[d++].Cc(c,b&255),this.Aa[d&this.xe].Cc(0,b>>8&255))};k.Am=function(a,b){this.wg=a;this.ha=a.Uc(this.ng=b,0);return this.$&1?0:this.ub(this.ha)}; +k.Bm=function(a,b){this.wg=a;this.ha=a.Uc(this.ng=b,1);return this.$&1?0:this.Ia(this.ha)};k.In=function(a,b){this.wg=a;this.Ka=this.ha=a.Uc(this.ng=b,0);return this.$&1?0:this.ub(this.ha)};k.Jn=function(a,b){this.wg=a;this.Ka=this.ha=a.Uc(this.ng=b,1);return this.$&1?0:this.Ia(this.ha)};k.gp=function(a){this.$&2||this.bd(this.wg.$b(this.ng,1),a)};k.hp=function(a){this.$&2||this.Nd(this.wg.$b(this.ng,2),a)};k.ea=function(){var a=this.ub(this.Ca);this.Ca=this.ra.La+(this.sa=this.sa+1&65535);return a}; +k.L=function(){var a=this.ub(this.Ca)<<24>>24;this.Ca=this.ra.La+(this.sa=this.sa+1&65535);return a&65535};k.K=function(){var a=this.Ia(this.Ca);this.Ca=this.ra.La+(this.sa=this.sa+2&65535);return a};k.Ja=function(){var a=this.X;this.X=this.X+2&65535;return this.Ia(this.Eb.Uc(a,1))};function K(a,b){var c=a.X=a.X-2&65535;a.Nd(a.Eb.$b(c,1),b)} +k.Zg=function(){F(this,"AX",this.G);F(this,"BX",this.B);F(this,"CX",this.I);F(this,"DX",this.J);F(this,"SP",this.X);F(this,"BP",this.H);F(this,"SI",this.F);F(this,"DI",this.D);F(this,"CS",this.ra.oa);F(this,"DS",this.Qb.oa);F(this,"SS",this.Eb.oa);F(this,"ES",this.cb.oa);F(this,"IP",this.sa);var a=zc(this);F(this,"PS",a);F(this,"C",a&1?1:0,1);F(this,"P",a&4?1:0,1);F(this,"A",a&16?1:0,1);F(this,"Z",a&64?1:0,1);F(this,"S",a&128?1:0,1);F(this,"T",a&256?1:0,1);F(this,"I",a&512?1:0,1);F(this,"D",a&1024? +1:0,1);F(this,"O",a&2048?1:0,1);this.ta.speed&&(this.ta.speed.innerHTML=this.Ob&&this.md?this.md.toFixed(2)+"Mhz":"Stopped")}; +k.uf=function(a){this.oi=!0;this.tm=a&&this.Z&&1this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=a+b)&255}function jd(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a|b)&255} +function kd(a,b){this.ma=a^b;this.Y=this.ja=a+b+(this.Y&this.da?1:0);this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return this.Y&255}function ld(a,b){this.ma=a^b;this.Y=this.ja=a-b-(this.Y&this.da?1:0);this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return this.Y&255}function md(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a&b)&255} +function nd(a,b){this.ma=a^b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=a-b)&255}function od(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a^b)&255}function pd(a,b){this.ma=a^b;this.da=256;this.Y=this.ja=a-b;this.A-=0>this.Ka?0>this.ha?this.Vb:this.Qi:this.qb;this.$|=2;return a} +function qd(a,b){this.ma=a^b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=a+b)&65535}function rd(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a|b)&65535}function sd(a,b){this.ma=a^b;this.Y=this.ja=a+b+(this.Y&this.da?1:0);this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return this.Y&65535} +function td(a,b){this.ma=a^b;this.Y=this.ja=a-b-(this.Y&this.da?1:0);this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return this.Y&65535}function ud(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a&b)&65535}function vd(a,b){this.ma=a^b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=a-b)&65535} +function wd(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a^b)&65535}function xd(a,b){this.ma=a^b;this.da=65536;this.Y=this.ja=a-b;this.A-=0>this.Ka?0>this.ha?this.Vb:this.Qi:this.qb;this.$|=2;return a}function yd(a,b){this.Y=this.Y&this.da-1|(a&b?this.da:0);(a^a>>1)&b>>1?dd(this):Zc(this)}function zd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<>8-e)&255:d=a<<8;yd.call(this,d,256)}return c} +function Ad(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<>16-e)&65535:d=a<<16;yd.call(this,d,65536)}return c}function Bd(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);yd.call(this,d,256)}return c}function Cd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);yd.call(this,d,65536)}return c} +function Dd(a,b){var c=a;if(b){var d;(d=(b&this.of)%9)?(d=a<>9-d,c=d&255):d=a|(this.Y&this.da?1:0)<<8;yd.call(this,d,256)}return c}function Ed(a,b){var c=a;if(b){var d;(d=(b&this.of)%17)?(d=a<>17-d,c=d&65535):d=a|(this.Y&this.da?1:0)<<16;yd.call(this,d,65536)}return c}function Fd(a,b){var c=a;b&&(c=(b&this.of)%9,c=a>>c|(this.Y&this.da?1:0)<<8-c|a<<9-c,yd.call(this,c,256),c&=255);return c} +function Gd(a,b){var c=a;b&&(c=(b&this.of)%17,c=a>>c|(this.Y&this.da?1:0)<<16-c|a<<17-c,yd.call(this,c,65536),c&=65535);return c}function Hd(a,b){var c=a;b&&(c=8>b-1;this.Y=this.ja=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.ma=a^this.Y;this.da=256;a=this.Y}return a&255}function Kd(a,b){if(b){var c=16>b-1;this.Y=this.ja=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.ma=a^this.Y;this.da=65536;a=this.Y}return a&65535}function Ld(a,b){if(b){8>24>>b-1;this.Y=this.ja=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.ma=a^this.Y;this.da=256;a=this.Y}return a&255} +function Md(a,b){if(b){16>16>>b-1;this.Y=this.ja=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.ma=a^this.Y;this.da=65536;a=this.Y}return a&65535}function Nd(){this.A-=0>this.ha?2:this.Jl;return 1}function Od(){var a=this.I&this.of;this.A-=(0>this.ha?this.lj:this.kj)+(a<this.ha?this.lj:this.kj)+(a<this.Ka?this.jc:this.Cl;return b},Ud,Ud,Ud,Ud,Ud,Ud,Ud],Yd=[function(a,b){this.A-=0>this.Ka?this.ul:this.sl;return b},M,M,M,M,M,M,M],Zd=[zd,Bd,Dd,Fd,Hd,Jd,M,Ld],$d=[Ad,Cd,Ed,Gd,Id,Kd,M,Md],be=[function(a,b){b=this.ea();this.Y=this.ja=this.ma=a&b;this.da=256;this.A-=0>this.ha?this.rj:this.qj;this.$|=2;return a},M,function(a){this.A-=0>this.ha?this.kg:this.jg;return a^255},function(a,b){b=0;this.ma=a^b;this.da= +256;this.A-=0>this.ha?this.kg:this.jg;return(this.Y=this.ja=b-a)&255},function(a){this.G=this.Db=(this.Y=(this.G&255)*a)&65535;this.ma=this.ja=this.Y;this.da=256;this.G&65280?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?this.yl:this.xl;this.$|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.Db=b&65535;this.Y=this.ma=this.ja=b;this.da=256;127b?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?this.dl:this.cl;this.$|=2;return a},function(a){if(!a)return ae.call(this), +a;var b=this.G/a;if(255this.ha?this.Wk:this.Vk;this.$|=2;return a},function(a){if(!a)return ae.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return ae.call(this),a;this.Db=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.ja=this.ma=this.Y=b|256;this.da=256;this.A-=0>this.ha?this.$k:this.Zk;this.$|=2;return a}],ce=[function(a,b){b=this.K();this.Y=this.ja= +this.ma=a&b;this.da=65536;this.A-=0>this.ha?this.rj:this.qj;this.$|=2;return a},M,function(a){this.A-=0>this.ha?this.kg:this.jg;return a^65535},function(a,b){b=0;this.ma=a^b;this.da=65536;this.A-=0>this.ha?this.kg:this.jg;return(this.Y=this.ja=b-a)&65535},function(a){this.Db=this.G=(this.Y=this.G*a)&65535;this.rg=this.J=this.Y>>16&65535;this.ma=this.ja=this.Y;this.da=65536;this.J?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?this.Al:this.zl;this.$|=2;return a},function(a){var b=(this.G<< +16>>16)*(a<<16>>16);this.G=this.Db=b&65535;this.J=this.rg=b>>16&65535;this.Y=this.ma=this.ja=b;this.da=65536;32767b?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?this.fl:this.el;this.$|=2;return a},function(a,b){if(!a)return ae.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return ae.call(this),a;this.Db=this.G=c&65535;this.rg=this.J=b%a&65535;this.ja=this.ma=this.Y=c|65536;this.da=65536;this.A-=0>this.ha?this.Yk:this.Xk;this.$|=2;return a},function(a, +b){if(!a)return ae.call(this),a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return ae.call(this),a;this.Db=this.G=d&65535;this.rg=this.J=b%c&65535;this.ja=this.ma=this.Y=d|65536;this.da=65536;this.A-=0>this.ha?this.bl:this.al;this.$|=2;return a}],pc=[function(a){this.ma=a;a=(this.ja=a+1)&255;this.Y=a|(this.Y&this.da?1:0)<<8;this.da=256;this.A-=0>this.ha?this.ig:this.hg;return a},function(a){this.ma=a;a=(this.ja=a-1)&255;this.Y=a|(this.Y&this.da?1:0)<<8;this.da= +256;this.A-=0>this.ha?this.ig:this.hg;return a},M,M,M,M,M,M],rc=[function(a){this.ma=a;a=(this.ja=a+1)&65535;this.Y=a|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=0>this.ha?this.ig:this.hg;return a},function(a){this.ma=a;a=(this.ja=a-1)&65535;this.Y=a|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=0>this.ha?this.ig:this.hg;return a},function(a){K(this,this.sa);I(this,a);this.A-=0>this.ha?this.Uk:this.Tk;this.$|=2;return a},function(a){if(0>this.ha)return M.call(this,a);K(this,this.ra.oa);K(this, +this.sa);wc(this,a,this.Ia(this.ha+2));this.A-=this.Rk;this.$|=2;return a},function(a){I(this,a);this.A-=0>this.ha?this.ol:this.nl;this.$|=2;return a},function(a){if(0>this.ha)return M.call(this,a);wc(this,a,this.Ia(this.ha+2));this.A-=this.ll;this.$|=2;return a},function(a){var b=a;this.$&512&&(a=a-2&65535,80286>this.Ga&&(b=a));K(this,b);this.A-=0>this.ha?this.rc:this.El;this.$|=2;return a},Ud],de=[zd,Bd,Dd,Fd,Hd,Jd,M,Ld],ee=[Ad,Cd,Ed,Gd,Id,Kd,M,Md]; +function fe(a,b){this.A-=0>this.Ka?0>this.ha?this.wl:this.vl:this.tl;return b}function ge(){return fe.call(this,0,this.Db)}function he(a,b){this.Y=this.ja=this.ma=a&b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.sj:this.mg:this.mg;this.$|=2;return a}function ie(a,b){this.Y=this.ja=this.ma=a&b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.sj:this.mg:this.mg;this.$|=2;return a} +function je(a,b){var c=(b<<16>>16)*(this.ea()<<24>>24);this.Y=this.ma=this.ja=c;this.da=256;32767c?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?21:24;return c&65535}function ke(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.Y=this.ma=this.ja=c;this.da=65536;32767c?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?21:24;return c&65535}function le(a){return a}function me(a){if(0>this.ha)return N.call(this),a;this.A-=this.pl;return this.ha} +function ne(a,b){if(0>this.ha)return N.call(this),a;Mc(this,this.Ia(this.ha+2));this.A-=this.Ui;return b}function oe(a,b){if(0>this.ha)return N.call(this),a;Oc(this,this.Ia(this.ha+2));this.A-=this.Ui;return b}function pe(a){if(0>this.ha)return G.call(this),a;var b=a<<16>>16,c=this.Ia(this.ha)<<16>>16,d=this.Ia(this.ha+2)<<16>>16;this.A-=this.Nk;if(bd)I(this,this.zh-this.ra.La),fd.call(this,5,null,0);this.$|=2;return a} +function qe(a,b){this.A-=10+(0>this.ha?0:1);if((a&3)<(b&3))return a=a&-4|b&3,bd(this),a;Xc(this);return a}function re(a,b){this.A-=14+(0>this.ha?0:2);if(0<=this.Rb.load(b,!0)&&this.Rb.Mc>=(this.ra.oa&3)&&this.Rb.Mc>=(b&3))return bd(this),this.Rb.ab&65280;Xc(this);return a}function se(a,b){this.A-=14+(0>this.ha?0:2);if(b&65528&&0<=this.Rb.load(b,!0)&&(3072==(this.Rb.ab&3072)||this.Rb.Mc>=(this.ra.oa&3))&&this.Rb.Mc>=(b&3))return bd(this),this.Rb.Nc;Xc(this);return a} +function te(a,b){if(0>this.ha){switch(this.Pg&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.uj}else this.Ka=this.ha,this.Q(a),this.A-=this.tj;return b} +function ue(a,b){if(0>this.ha){switch(this.Pg&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.X=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.uj}else this.Ka=this.ha,this.R(a),this.A-=this.tj;return b}function fd(a,b,c){Hc(this,a)&&(K(this,zc(this)),this.xa&=this.Jc.oh,K(this,this.ra.oa),K(this,this.sa),null!=b&&K(this,b),wc(this,this.Jc.yj,this.Jc.oa),this.A-=this.hl+c)} +function ae(){I(this,this.zh-this.ra.La);fd.call(this,0,null,2)}function Xb(a,b){this.Z&&this.Z.message("Fault 0x"+p(a)+(null!=b?" (0x"+r(b)+")":"")+" on opcode 0x"+p($a(this.na,this.Ca))+" at "+ca(this.sa,this.ra.oa));80186<=this.Ga&&(I(this,this.zh-this.ra.La),fd.call(this,a,b,0))}function G(){Xb.call(this,6);this.zb()}function N(){I(this,this.zh-this.ra.La);Qa(this,"Undefined opcode 0x"+p($a(this.na,this.Ca))+" at "+ca(this.sa,this.ra.oa));this.zb()} +function ve(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}function we(a){a=a.call(this,this.G&255,this.I&255);this.G=this.G&-256|a}function xe(a){a=a.call(this,this.G&255,this.J&255);this.G=this.G&-256|a}function ye(a){a=a.call(this,this.G&255,this.B&255);this.G=this.G&-256|a}function ze(a){a=a.call(this,this.G&255,this.G>>8);this.G=this.G&-256|a}function Ae(a){a=a.call(this,this.G&255,this.I>>8);this.G=this.G&-256|a} +function Be(a){a=a.call(this,this.G&255,this.J>>8);this.G=this.G&-256|a}function Ce(a){a=a.call(this,this.G&255,this.B>>8);this.G=this.G&-256|a}function De(a){a=a.call(this,this.I&255,this.G&255);this.I=this.I&-256|a}function Ee(a){a=a.call(this,this.I&255,this.I&255);this.I=this.I&-256|a}function Fe(a){a=a.call(this,this.I&255,this.J&255);this.I=this.I&-256|a}function Ge(a){a=a.call(this,this.I&255,this.B&255);this.I=this.I&-256|a} +function He(a){a=a.call(this,this.I&255,this.G>>8);this.I=this.I&-256|a}function Ie(a){a=a.call(this,this.I&255,this.I>>8);this.I=this.I&-256|a}function Je(a){a=a.call(this,this.I&255,this.J>>8);this.I=this.I&-256|a}function Ke(a){a=a.call(this,this.I&255,this.B>>8);this.I=this.I&-256|a}function Le(a){a=a.call(this,this.J&255,this.G&255);this.J=this.J&-256|a}function Me(a){a=a.call(this,this.J&255,this.I&255);this.J=this.J&-256|a} +function Ne(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function Oe(a){a=a.call(this,this.J&255,this.B&255);this.J=this.J&-256|a}function Pe(a){a=a.call(this,this.J&255,this.G>>8);this.J=this.J&-256|a}function Qe(a){a=a.call(this,this.J&255,this.I>>8);this.J=this.J&-256|a}function Re(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function Se(a){a=a.call(this,this.J&255,this.B>>8);this.J=this.J&-256|a} +function Te(a){a=a.call(this,this.B&255,this.G&255);this.B=this.B&-256|a}function Ue(a){a=a.call(this,this.B&255,this.I&255);this.B=this.B&-256|a}function Ve(a){a=a.call(this,this.B&255,this.J&255);this.B=this.B&-256|a}function We(a){a=a.call(this,this.B&255,this.B&255);this.B=this.B&-256|a}function Xe(a){a=a.call(this,this.B&255,this.G>>8);this.B=this.B&-256|a}function Ye(a){a=a.call(this,this.B&255,this.I>>8);this.B=this.B&-256|a} +function Ze(a){a=a.call(this,this.B&255,this.J>>8);this.B=this.B&-256|a}function $e(a){a=a.call(this,this.B&255,this.B>>8);this.B=this.B&-256|a}function af(a){a=a.call(this,this.G>>8,this.G&255);this.G=this.G&255|a<<8}function bf(a){a=a.call(this,this.G>>8,this.I&255);this.G=this.G&255|a<<8}function cf(a){a=a.call(this,this.G>>8,this.J&255);this.G=this.G&255|a<<8}function df(a){a=a.call(this,this.G>>8,this.B&255);this.G=this.G&255|a<<8} +function ef(a){a=a.call(this,this.G>>8,this.G>>8);this.G=this.G&255|a<<8}function ff(a){a=a.call(this,this.G>>8,this.I>>8);this.G=this.G&255|a<<8}function gf(a){a=a.call(this,this.G>>8,this.J>>8);this.G=this.G&255|a<<8}function hf(a){a=a.call(this,this.G>>8,this.B>>8);this.G=this.G&255|a<<8}function jf(a){a=a.call(this,this.I>>8,this.G&255);this.I=this.I&255|a<<8}function kf(a){a=a.call(this,this.I>>8,this.I&255);this.I=this.I&255|a<<8} +function lf(a){a=a.call(this,this.I>>8,this.J&255);this.I=this.I&255|a<<8}function mf(a){a=a.call(this,this.I>>8,this.B&255);this.I=this.I&255|a<<8}function nf(a){a=a.call(this,this.I>>8,this.G>>8);this.I=this.I&255|a<<8}function of(a){a=a.call(this,this.I>>8,this.I>>8);this.I=this.I&255|a<<8}function pf(a){a=a.call(this,this.I>>8,this.J>>8);this.I=this.I&255|a<<8}function qf(a){a=a.call(this,this.I>>8,this.B>>8);this.I=this.I&255|a<<8} +function rf(a){a=a.call(this,this.J>>8,this.G&255);this.J=this.J&255|a<<8}function sf(a){a=a.call(this,this.J>>8,this.I&255);this.J=this.J&255|a<<8}function tf(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function uf(a){a=a.call(this,this.J>>8,this.B&255);this.J=this.J&255|a<<8}function vf(a){a=a.call(this,this.J>>8,this.G>>8);this.J=this.J&255|a<<8}function wf(a){a=a.call(this,this.J>>8,this.I>>8);this.J=this.J&255|a<<8} +function xf(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function yf(a){a=a.call(this,this.J>>8,this.B>>8);this.J=this.J&255|a<<8}function zf(a){a=a.call(this,this.B>>8,this.G&255);this.B=this.B&255|a<<8}function Af(a){a=a.call(this,this.B>>8,this.I&255);this.B=this.B&255|a<<8}function Bf(a){a=a.call(this,this.B>>8,this.J&255);this.B=this.B&255|a<<8}function Cf(a){a=a.call(this,this.B>>8,this.B&255);this.B=this.B&255|a<<8} +function Df(a){a=a.call(this,this.B>>8,this.G>>8);this.B=this.B&255|a<<8}function Ef(a){a=a.call(this,this.B>>8,this.I>>8);this.B=this.B&255|a<<8}function Ff(a){a=a.call(this,this.B>>8,this.J>>8);this.B=this.B&255|a<<8}function Gf(a){a=a.call(this,this.B>>8,this.B>>8);this.B=this.B&255|a<<8}function Hf(a){this.G=a.call(this,this.G,this.G)}function If(a){this.G=a.call(this,this.G,this.I)}function Jf(a){this.G=a.call(this,this.G,this.J)}function Kf(a){this.G=a.call(this,this.G,this.B)} +function Lf(a){this.G=a.call(this,this.G,this.X)}function Mf(a){this.G=a.call(this,this.G,this.H)}function Nf(a){this.G=a.call(this,this.G,this.F)}function Of(a){this.G=a.call(this,this.G,this.D)}function Pf(a){this.I=a.call(this,this.I,this.G)}function Qf(a){this.I=a.call(this,this.I,this.I)}function Rf(a){this.I=a.call(this,this.I,this.J)}function Sf(a){this.I=a.call(this,this.I,this.B)}function Tf(a){this.I=a.call(this,this.I,this.X)}function Uf(a){this.I=a.call(this,this.I,this.H)} +function Vf(a){this.I=a.call(this,this.I,this.F)}function Wf(a){this.I=a.call(this,this.I,this.D)}function Xf(a){this.J=a.call(this,this.J,this.G)}function Yf(a){this.J=a.call(this,this.J,this.I)}function Zf(a){this.J=a.call(this,this.J,this.J)}function $f(a){this.J=a.call(this,this.J,this.B)}function ag(a){this.J=a.call(this,this.J,this.X)}function bg(a){this.J=a.call(this,this.J,this.H)}function cg(a){this.J=a.call(this,this.J,this.F)}function dg(a){this.J=a.call(this,this.J,this.D)} +function eg(a){this.B=a.call(this,this.B,this.G)}function fg(a){this.B=a.call(this,this.B,this.I)}function gg(a){this.B=a.call(this,this.B,this.J)}function hg(a){this.B=a.call(this,this.B,this.B)}function ig(a){this.B=a.call(this,this.B,this.X)}function jg(a){this.B=a.call(this,this.B,this.H)}function kg(a){this.B=a.call(this,this.B,this.F)}function lg(a){this.B=a.call(this,this.B,this.D)}function mg(a){this.X=a.call(this,this.X,this.G)}function ng(a){this.X=a.call(this,this.X,this.I)} +function og(a){this.X=a.call(this,this.X,this.J)}function pg(a){this.X=a.call(this,this.X,this.B)}function qg(a){this.X=a.call(this,this.X,this.X)}function rg(a){this.X=a.call(this,this.X,this.H)}function sg(a){this.X=a.call(this,this.X,this.F)}function tg(a){this.X=a.call(this,this.X,this.D)}function ug(a){this.H=a.call(this,this.H,this.G)}function vg(a){this.H=a.call(this,this.H,this.I)}function wg(a){this.H=a.call(this,this.H,this.J)}function xg(a){this.H=a.call(this,this.H,this.B)} +function yg(a){this.H=a.call(this,this.H,this.X)}function zg(a){this.H=a.call(this,this.H,this.H)}function Ag(a){this.H=a.call(this,this.H,this.F)}function Bg(a){this.H=a.call(this,this.H,this.D)}function Cg(a){this.F=a.call(this,this.F,this.G)}function Dg(a){this.F=a.call(this,this.F,this.I)}function Eg(a){this.F=a.call(this,this.F,this.J)}function Fg(a){this.F=a.call(this,this.F,this.B)}function Gg(a){this.F=a.call(this,this.F,this.X)}function Hg(a){this.F=a.call(this,this.F,this.H)} +function Ig(a){this.F=a.call(this,this.F,this.F)}function Jg(a){this.F=a.call(this,this.F,this.D)}function Kg(a){this.D=a.call(this,this.D,this.G)}function Lg(a){this.D=a.call(this,this.D,this.I)}function Mg(a){this.D=a.call(this,this.D,this.J)}function Ng(a){this.D=a.call(this,this.D,this.B)}function Og(a){this.D=a.call(this,this.D,this.X)}function Pg(a){this.D=a.call(this,this.D,this.H)}function Qg(a){this.D=a.call(this,this.D,this.F)}function Rg(a){this.D=a.call(this,this.D,this.D)} +var Sg=[function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.G&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.G&255);this.Q(a);this.A-=this.aa},function(a){a= +a.call(this,this.N(this.C,this.D),this.G&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.G&255);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.G&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.I&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.I&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F& +65535),this.I&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.I&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.I&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.I&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.I&255);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.I&255);this.Q(a);this.A-=this.aa},function(a){a= +a.call(this,this.N(this.C,this.B+this.F&65535),this.J&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.J&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.J&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.J&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C, +this.D),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.J&255);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.B&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.B&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.B&255);this.Q(a); +this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.B&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.B&255);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C, +this.B+this.F&65535),this.G>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.G>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.G>>8); +this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.G>>8);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.G>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.I>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.I>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.I>>8);this.Q(a);this.A-=this.ga},function(a){a= +a.call(this,this.N(this.M,this.H+this.D&65535),this.I>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.I>>8);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.J>>8); +this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.J>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.J>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.J>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a= +a.call(this,this.N(this.C,this.K()),this.J>>8);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.B>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.B>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.B>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+ +this.D&65535),this.B>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.B>>8);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F+this.L()&65535),this.G&255);this.Q(a);this.A-=this.V}, function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.L()&65535),this.G&255);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.L()&65535),this.G&255);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.L()&65535),this.G&255);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.F+this.L()&65535),this.G&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.L()&65535),this.G&255);this.Q(a); this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.L()&65535),this.G&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.L()&65535),this.G&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.F+this.L()&65535),this.I&255);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.L()&65535),this.I&255);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.L()&65535), this.I&255);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.L()&65535),this.I&255);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.F+this.L()&65535),this.I&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.L()&65535),this.I&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.L()&65535),this.I&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.L()& @@ -151,18 +151,18 @@ this.V},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.I>>8 this.V},function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.K()&65535),this.J>>8); this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.F+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.K()& 65535),this.B>>8);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.K()& -65535),this.B>>8);this.Q(a);this.A-=this.P},ye,Ge,Oe,We,df,mf,uf,Cf,ze,He,Pe,Xe,ef,nf,vf,Df,Ae,Ie,Qe,Ye,ff,of,wf,Ef,Be,Je,Re,Ze,gf,pf,xf,Ff,Ce,Ke,Se,$e,hf,qf,yf,Gf,De,Le,Te,af,jf,rf,zf,Hf,Ee,Me,Ue,bf,kf,sf,Af,If,Fe,Ne,Ve,cf,lf,tf,Bf,Jf],Wg=[function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.G);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.G);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.G); -this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.G);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.G);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+ -this.F&65535),this.I);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.I);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.I);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.I);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.I);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.I);this.R(a);this.A-=this.aa}, -function(a){a=a.call(this,this.O(this.C,this.K()),this.I);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.I);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.J);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.J);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.J);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+ -this.D&65535),this.J);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.J);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.B);this.R(a);this.A-=this.ea},function(a){a=a.call(this, -this.O(this.C,this.B+this.D&65535),this.B);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.B);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.B);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.B);this.R(a);this.A-= -this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.X);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.X);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.X);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.X);this.R(a);this.A-=this.ea},function(a){a=a.call(this, -this.O(this.C,this.F),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.X);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.H);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.H);this.R(a);this.A-=this.fa},function(a){a= -a.call(this,this.O(this.M,this.H+this.F&65535),this.H);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.H);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.H);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.H);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.H);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.H);this.R(a);this.A-= -this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.F);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.F);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.F);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.F);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this, -this.O(this.C,this.D),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.F);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.D);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.D);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.D);this.R(a);this.A-= -this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.D);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.D);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.L()& +65535),this.B>>8);this.Q(a);this.A-=this.P},ve,De,Le,Te,af,jf,rf,zf,we,Ee,Me,Ue,bf,kf,sf,Af,xe,Fe,Ne,Ve,cf,lf,tf,Bf,ye,Ge,Oe,We,df,mf,uf,Cf,ze,He,Pe,Xe,ef,nf,vf,Df,Ae,Ie,Qe,Ye,ff,of,wf,Ef,Be,Je,Re,Ze,gf,pf,xf,Ff,Ce,Ke,Se,$e,hf,qf,yf,Gf],Tg=[function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.G);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.G);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.G); +this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.G);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.G);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+ +this.F&65535),this.I);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.I);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.I);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.I);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.I);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.I);this.R(a);this.A-=this.aa}, +function(a){a=a.call(this,this.O(this.C,this.K()),this.I);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.I);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.J);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.J);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.J);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+ +this.D&65535),this.J);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.J);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.B);this.R(a);this.A-=this.fa},function(a){a=a.call(this, +this.O(this.C,this.B+this.D&65535),this.B);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.B);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.B);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.B);this.R(a);this.A-= +this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.X);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.X);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.X);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.X);this.R(a);this.A-=this.fa},function(a){a=a.call(this, +this.O(this.C,this.F),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.X);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.H);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.H);this.R(a);this.A-=this.ga},function(a){a= +a.call(this,this.O(this.M,this.H+this.F&65535),this.H);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.H);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.H);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.H);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.H);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.H);this.R(a);this.A-= +this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.F);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.F);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.F);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.F);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this, +this.O(this.C,this.D),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.F);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.D);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.D);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.D);this.R(a);this.A-= +this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.D);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.D);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.L()& 65535),this.G);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.L()&65535),this.G);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.L()&65535),this.G);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.L()&65535),this.G);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.F+this.L()&65535),this.G);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.L()& 65535),this.G);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.L()&65535),this.G);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.L()&65535),this.G);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.L()&65535),this.I);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.L()&65535),this.I);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.L()& 65535),this.I);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.L()&65535),this.I);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.F+this.L()&65535),this.I);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.L()&65535),this.I);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.L()&65535),this.I);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.L()&65535),this.I); @@ -188,20 +188,20 @@ this.F+this.K()&65535),this.H);this.R(a);this.A-=this.W},function(a){a=a.call(th 65535),this.H);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.K()&65535),this.F);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.K()&65535),this.F);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.K()&65535),this.F);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.K()&65535),this.F);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.F+ this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.K()&65535),this.D);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.K()& 65535),this.D);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.K()&65535),this.D);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.K()&65535),this.D);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.F+this.K()&65535),this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.K()&65535),this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.K()&65535), -this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.D);this.R(a);this.A-=this.P},Kf,Sf,$f,hg,pg,xg,Fg,Ng,Lf,Tf,ag,ig,qg,yg,Gg,Og,Mf,Uf,bg,jg,rg,zg,Hg,Pg,Nf,Vf,cg,kg,sg,Ag,Ig,Qg,Of,Wf,dg,lg,tg,Bg,Jg,Rg,Pf,Xf,eg,mg,ug,Cg,Kg,Sg,Qf,Yf,fg,ng,vg,Dg,Lg,Tg,Rf,Zf,gg,og,wg,Eg,Mg,Ug],Xg=[function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.F&65535));this.G=this.G&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.D& -65535));this.G=this.G&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.F&65535));this.G=this.G&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.D&65535));this.G=this.G&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.G&255,this.T(this.C,this.F));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G&255,this.T(this.C,this.D));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G&255, -this.T(this.C,this.K()));this.G=this.G&-256|a;this.A-=this.ta},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.F&65535));this.I=this.I&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.D&65535));this.I=this.I&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.I&255,this.T(this.M,this.H+this.F&65535));this.I=this.I&-256|a;this.A-=this.fa},function(a){a= -a.call(this,this.I&255,this.T(this.M,this.H+this.D&65535));this.I=this.I&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.I&255,this.T(this.C,this.F));this.I=this.I&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.D));this.I=this.I&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.K()));this.I=this.I&-256|a;this.A-=this.ta},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B));this.I=this.I&-256|a;this.A-=this.aa},function(a){a= -a.call(this,this.J&255,this.T(this.C,this.B+this.F&65535));this.J=this.J&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.J&255,this.T(this.C,this.B+this.D&65535));this.J=this.J&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.J&255,this.T(this.M,this.H+this.F&65535));this.J=this.J&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.J&255,this.T(this.M,this.H+this.D&65535));this.J=this.J&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.J&255,this.T(this.C,this.F));this.J=this.J& --256|a;this.A-=this.aa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.D));this.J=this.J&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.K()));this.J=this.J&-256|a;this.A-=this.ta},function(a){a=a.call(this,this.J&255,this.T(this.C,this.B));this.J=this.J&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B+this.F&65535));this.B=this.B&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B+this.D&65535)); -this.B=this.B&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.B&255,this.T(this.M,this.H+this.F&65535));this.B=this.B&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.B&255,this.T(this.M,this.H+this.D&65535));this.B=this.B&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.B&255,this.T(this.C,this.F));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.D));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C, -this.K()));this.B=this.B&-256|a;this.A-=this.ta},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B+this.F&65535));this.G=this.G&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B+this.D&65535));this.G=this.G&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.G>>8,this.T(this.M,this.H+this.F&65535));this.G=this.G&255|a<<8;this.A-=this.fa},function(a){a=a.call(this, -this.G>>8,this.T(this.M,this.H+this.D&65535));this.G=this.G&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.F));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.D));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.K()));this.G=this.G&255|a<<8;this.A-=this.ta},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this, -this.I>>8,this.T(this.C,this.B+this.F&65535));this.I=this.I&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.B+this.D&65535));this.I=this.I&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.I>>8,this.T(this.M,this.H+this.F&65535));this.I=this.I&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.I>>8,this.T(this.M,this.H+this.D&65535));this.I=this.I&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.F));this.I=this.I&255|a<< -8;this.A-=this.aa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.D));this.I=this.I&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.K()));this.I=this.I&255|a<<8;this.A-=this.ta},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.B));this.I=this.I&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B+this.F&65535));this.J=this.J&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B+this.D&65535)); -this.J=this.J&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.F&65535));this.J=this.J&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.D&65535));this.J=this.J&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.F));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.D));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C, -this.K()));this.J=this.J&255|a<<8;this.A-=this.ta},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.F&65535));this.B=this.B&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.D&65535));this.B=this.B&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.B>>8,this.T(this.M,this.H+this.F&65535));this.B=this.B&255|a<<8;this.A-=this.fa},function(a){a=a.call(this, -this.B>>8,this.T(this.M,this.H+this.D&65535));this.B=this.B&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.F));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.D));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.K()));this.B=this.B&255|a<<8;this.A-=this.ta},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this, +this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.D);this.R(a);this.A-=this.P},Hf,Pf,Xf,eg,mg,ug,Cg,Kg,If,Qf,Yf,fg,ng,vg,Dg,Lg,Jf,Rf,Zf,gg,og,wg,Eg,Mg,Kf,Sf,$f,hg,pg,xg,Fg,Ng,Lf,Tf,ag,ig,qg,yg,Gg,Og,Mf,Uf,bg,jg,rg,zg,Hg,Pg,Nf,Vf,cg,kg,sg,Ag,Ig,Qg,Of,Wf,dg,lg,tg,Bg,Jg,Rg],Ug=[function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.F&65535));this.G=this.G&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.D& +65535));this.G=this.G&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.F&65535));this.G=this.G&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.D&65535));this.G=this.G&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.G&255,this.T(this.C,this.F));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G&255,this.T(this.C,this.D));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G&255, +this.T(this.C,this.K()));this.G=this.G&-256|a;this.A-=this.ua},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.F&65535));this.I=this.I&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.D&65535));this.I=this.I&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.I&255,this.T(this.M,this.H+this.F&65535));this.I=this.I&-256|a;this.A-=this.ga},function(a){a= +a.call(this,this.I&255,this.T(this.M,this.H+this.D&65535));this.I=this.I&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.F));this.I=this.I&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.D));this.I=this.I&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.K()));this.I=this.I&-256|a;this.A-=this.ua},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B));this.I=this.I&-256|a;this.A-=this.aa},function(a){a= +a.call(this,this.J&255,this.T(this.C,this.B+this.F&65535));this.J=this.J&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.B+this.D&65535));this.J=this.J&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.J&255,this.T(this.M,this.H+this.F&65535));this.J=this.J&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.J&255,this.T(this.M,this.H+this.D&65535));this.J=this.J&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.F));this.J=this.J& +-256|a;this.A-=this.aa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.D));this.J=this.J&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.K()));this.J=this.J&-256|a;this.A-=this.ua},function(a){a=a.call(this,this.J&255,this.T(this.C,this.B));this.J=this.J&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B+this.F&65535));this.B=this.B&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B+this.D&65535)); +this.B=this.B&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.B&255,this.T(this.M,this.H+this.F&65535));this.B=this.B&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.B&255,this.T(this.M,this.H+this.D&65535));this.B=this.B&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.F));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.D));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C, +this.K()));this.B=this.B&-256|a;this.A-=this.ua},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B+this.F&65535));this.G=this.G&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B+this.D&65535));this.G=this.G&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.G>>8,this.T(this.M,this.H+this.F&65535));this.G=this.G&255|a<<8;this.A-=this.ga},function(a){a=a.call(this, +this.G>>8,this.T(this.M,this.H+this.D&65535));this.G=this.G&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.F));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.D));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.K()));this.G=this.G&255|a<<8;this.A-=this.ua},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this, +this.I>>8,this.T(this.C,this.B+this.F&65535));this.I=this.I&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.B+this.D&65535));this.I=this.I&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.I>>8,this.T(this.M,this.H+this.F&65535));this.I=this.I&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.I>>8,this.T(this.M,this.H+this.D&65535));this.I=this.I&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.F));this.I=this.I&255|a<< +8;this.A-=this.aa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.D));this.I=this.I&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.K()));this.I=this.I&255|a<<8;this.A-=this.ua},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.B));this.I=this.I&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B+this.F&65535));this.J=this.J&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B+this.D&65535)); +this.J=this.J&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.F&65535));this.J=this.J&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.D&65535));this.J=this.J&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.F));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.D));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C, +this.K()));this.J=this.J&255|a<<8;this.A-=this.ua},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.F&65535));this.B=this.B&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.D&65535));this.B=this.B&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.B>>8,this.T(this.M,this.H+this.F&65535));this.B=this.B&255|a<<8;this.A-=this.ga},function(a){a=a.call(this, +this.B>>8,this.T(this.M,this.H+this.D&65535));this.B=this.B&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.F));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.D));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.K()));this.B=this.B&255|a<<8;this.A-=this.ua},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this, this.G&255,this.T(this.C,this.B+this.F+this.L()&65535));this.G=this.G&-256|a;this.A-=this.V},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.D+this.L()&65535));this.G=this.G&-256|a;this.A-=this.W},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.F+this.L()&65535));this.G=this.G&-256|a;this.A-=this.W},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.D+this.L()&65535));this.G=this.G&-256|a;this.A-=this.V},function(a){a=a.call(this,this.G&255,this.T(this.C, this.F+this.L()&65535));this.G=this.G&-256|a;this.A-=this.P},function(a){a=a.call(this,this.G&255,this.T(this.C,this.D+this.L()&65535));this.G=this.G&-256|a;this.A-=this.P},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.L()&65535));this.G=this.G&-256|a;this.A-=this.P},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.L()&65535));this.G=this.G&-256|a;this.A-=this.P},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.F+this.L()&65535));this.I=this.I&-256|a;this.A-= this.V},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.D+this.L()&65535));this.I=this.I&-256|a;this.A-=this.W},function(a){a=a.call(this,this.I&255,this.T(this.M,this.H+this.F+this.L()&65535));this.I=this.I&-256|a;this.A-=this.W},function(a){a=a.call(this,this.I&255,this.T(this.M,this.H+this.D+this.L()&65535));this.I=this.I&-256|a;this.A-=this.V},function(a){a=a.call(this,this.I&255,this.T(this.C,this.F+this.L()&65535));this.I=this.I&-256|a;this.A-=this.P},function(a){a=a.call(this, @@ -231,18 +231,18 @@ a.call(this,this.I>>8,this.T(this.C,this.D+this.K()&65535));this.I=this.I&255|a< this.D+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.W},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.F+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.W},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.D+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.F+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.D+this.K()&65535));this.J=this.J& 255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.F+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.W},function(a){a= a.call(this,this.B>>8,this.T(this.M,this.H+this.F+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.W},function(a){a=a.call(this,this.B>>8,this.T(this.M,this.H+this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.F+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.T(this.M, -this.H+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf,of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf,Hf,If,Jf],O=[function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.G=a.call(this,this.G, -this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.G=a.call(this,this.G,this.U(this.C,this.F));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.D));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.G=a.call(this, -this.G,this.U(this.C,this.B));this.A-=this.aa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.I=a.call(this,this.I,this.U(this.C,this.F));this.A-=this.aa},function(a){this.I= -a.call(this,this.I,this.U(this.C,this.D));this.A-=this.aa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.J=a.call(this,this.J,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.J= -a.call(this,this.J,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.J=a.call(this,this.J,this.U(this.C,this.F));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.D));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.B=a.call(this, -this.B,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.B=a.call(this,this.B,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.B=a.call(this,this.B,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.B=a.call(this,this.B,this.U(this.C,this.F));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.D));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.B=a.call(this, -this.B,this.U(this.C,this.B));this.A-=this.aa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.X=a.call(this,this.X,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.X=a.call(this,this.X,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.X=a.call(this,this.X,this.U(this.C,this.F));this.A-=this.aa},function(a){this.X= -a.call(this,this.X,this.U(this.C,this.D));this.A-=this.aa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.H=a.call(this,this.H,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.H= -a.call(this,this.H,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.H=a.call(this,this.H,this.U(this.C,this.F));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.D));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.F=a.call(this, -this.F,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.F=a.call(this,this.F,this.U(this.C,this.F));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.D));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.F=a.call(this, -this.F,this.U(this.C,this.B));this.A-=this.aa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.D=a.call(this,this.D,this.U(this.C,this.F));this.A-=this.aa},function(a){this.D= -a.call(this,this.D,this.U(this.C,this.D));this.A-=this.aa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.F+this.L()&65535));this.A-=this.V},function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.D+this.L()&65535));this.A-=this.W},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.F+this.L()&65535));this.A-= +this.H+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf,of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf],O=[function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.G=a.call(this,this.G, +this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.F));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.D));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.G=a.call(this, +this.G,this.U(this.C,this.B));this.A-=this.aa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.F));this.A-=this.aa},function(a){this.I= +a.call(this,this.I,this.U(this.C,this.D));this.A-=this.aa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.J=a.call(this,this.J,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.J= +a.call(this,this.J,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.F));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.D));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.B=a.call(this, +this.B,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.B=a.call(this,this.B,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.B=a.call(this,this.B,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.F));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.D));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.B=a.call(this, +this.B,this.U(this.C,this.B));this.A-=this.aa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.X=a.call(this,this.X,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.X=a.call(this,this.X,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.F));this.A-=this.aa},function(a){this.X= +a.call(this,this.X,this.U(this.C,this.D));this.A-=this.aa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.H=a.call(this,this.H,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.H= +a.call(this,this.H,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.F));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.D));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.F=a.call(this, +this.F,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.F));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.D));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.F=a.call(this, +this.F,this.U(this.C,this.B));this.A-=this.aa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.F));this.A-=this.aa},function(a){this.D= +a.call(this,this.D,this.U(this.C,this.D));this.A-=this.aa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.F+this.L()&65535));this.A-=this.V},function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.D+this.L()&65535));this.A-=this.W},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.F+this.L()&65535));this.A-= this.W},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.D+this.L()&65535));this.A-=this.V},function(a){this.G=a.call(this,this.G,this.U(this.C,this.F+this.L()&65535));this.A-=this.P},function(a){this.G=a.call(this,this.G,this.U(this.C,this.D+this.L()&65535));this.A-=this.P},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.L()&65535));this.A-=this.P},function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.L()&65535));this.A-=this.P},function(a){this.I=a.call(this, this.I,this.U(this.C,this.B+this.F+this.L()&65535));this.A-=this.V},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.D+this.L()&65535));this.A-=this.W},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.F+this.L()&65535));this.A-=this.W},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.D+this.L()&65535));this.A-=this.V},function(a){this.I=a.call(this,this.I,this.U(this.C,this.F+this.L()&65535));this.A-=this.P},function(a){this.I=a.call(this,this.I,this.U(this.C, this.D+this.L()&65535));this.A-=this.P},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.L()&65535));this.A-=this.P},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.L()&65535));this.A-=this.P},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.F+this.L()&65535));this.A-=this.V},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.D+this.L()&65535));this.A-=this.W},function(a){this.J=a.call(this,this.J,this.U(this.M,this.H+this.F+this.L()&65535)); @@ -266,20 +266,20 @@ a.call(this,this.H,this.U(this.C,this.B+this.F+this.K()&65535));this.A-=this.V}, this.U(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.H=a.call(this,this.H,this.U(this.M,this.H+this.K()&65535));this.A-=this.P},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.U(this.C,this.B+this.F+this.K()&65535));this.A-=this.V},function(a){this.F=a.call(this,this.F,this.U(this.C,this.B+this.D+this.K()&65535));this.A-=this.W},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.F+ this.K()&65535));this.A-=this.W},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.D+this.K()&65535));this.A-=this.V},function(a){this.F=a.call(this,this.F,this.U(this.C,this.F+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.U(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.U(this.C,this.B+this.K()&65535));this.A-=this.P},function(a){this.D= a.call(this,this.D,this.U(this.C,this.B+this.F+this.K()&65535));this.A-=this.V},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.D+this.K()&65535));this.A-=this.W},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.F+this.K()&65535));this.A-=this.W},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.D+this.K()&65535));this.A-=this.V},function(a){this.D=a.call(this,this.D,this.U(this.C,this.F+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D, -this.U(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.K()&65535));this.A-=this.P},Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug],Yg=[function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.F&65535), -b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[0].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[0].call(this, -this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[0].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[0].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c= -a[1].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[1].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a, -b){var c=a[1].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[2].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.N(this.M,this.H+this.D&65535),b.call(this)); -this.Q(c);this.A-=this.ea},function(a,b){var c=a[2].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[2].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C,this.B+this.F&65535),b.call(this)); -this.Q(c);this.A-=this.ea},function(a,b){var c=a[3].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[3].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C, -this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[3].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[4].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[4].call(this, -this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[4].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c= -a[4].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[5].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c); -this.A-=this.ea},function(a,b){var c=a[5].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[5].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c); -this.A-=this.ea},function(a,b){var c=a[6].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[6].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.D), -b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[6].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[7].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.N(this.M, -this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[7].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[7].call(this, +this.U(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.K()&65535));this.A-=this.P},Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg],Vg=[function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.F&65535), +b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[0].call(this, +this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[0].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[0].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c= +a[1].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[1].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a, +b){var c=a[1].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[2].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[2].call(this,this.N(this.M,this.H+this.D&65535),b.call(this)); +this.Q(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[2].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C,this.B+this.F&65535),b.call(this)); +this.Q(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[3].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[3].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C, +this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[3].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[4].call(this, +this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[4].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c= +a[4].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[5].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[5].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c); +this.A-=this.fa},function(a,b){var c=a[5].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[5].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c); +this.A-=this.fa},function(a,b){var c=a[6].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[6].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[6].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.D), +b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[6].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[7].call(this,this.N(this.M, +this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[7].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[7].call(this, this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.F+this.L()&65535),b.call(this));this.Q(c);this.A-=this.V},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.D+this.L()&65535),b.call(this));this.Q(c);this.A-=this.W},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.F+this.L()&65535),b.call(this));this.Q(c);this.A-=this.W},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.D+this.L()&65535),b.call(this)); this.Q(c);this.A-=this.V},function(a,b){var c=a[0].call(this,this.N(this.C,this.F+this.L()&65535),b.call(this));this.Q(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.N(this.C,this.D+this.L()&65535),b.call(this));this.Q(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.L()&65535),b.call(this));this.Q(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.L()&65535),b.call(this));this.Q(c);this.A-=this.P},function(a,b){var c=a[1].call(this, this.N(this.C,this.B+this.F+this.L()&65535),b.call(this));this.Q(c);this.A-=this.V},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.D+this.L()&65535),b.call(this));this.Q(c);this.A-=this.W},function(a,b){var c=a[1].call(this,this.N(this.M,this.H+this.F+this.L()&65535),b.call(this));this.Q(c);this.A-=this.W},function(a,b){var c=a[1].call(this,this.N(this.M,this.H+this.D+this.L()&65535),b.call(this));this.Q(c);this.A-=this.V},function(a,b){var c=a[1].call(this,this.N(this.C,this.F+this.L()& @@ -319,20 +319,20 @@ this.G&255|c<<8},function(a,b){var c=a[3].call(this,this.I>>8,b.call(this));this c},function(a,b){var c=a[5].call(this,this.I&255,b.call(this));this.I=this.I&-256|c},function(a,b){var c=a[5].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[5].call(this,this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[5].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[5].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[5].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a, b){var c=a[5].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8},function(a,b){var c=a[6].call(this,this.G&255,b.call(this));this.G=this.G&-256|c},function(a,b){var c=a[6].call(this,this.I&255,b.call(this));this.I=this.I&-256|c},function(a,b){var c=a[6].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[6].call(this,this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[6].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c= a[6].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[6].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[6].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8},function(a,b){var c=a[7].call(this,this.G&255,b.call(this));this.G=this.G&-256|c},function(a,b){var c=a[7].call(this,this.I&255,b.call(this));this.I=this.I&-256|c},function(a,b){var c=a[7].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[7].call(this, -this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[7].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[7].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8}],Zg=[function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a, -b){var c=a[0].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[0].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[0].call(this,this.O(this.C,this.D),b.call(this));this.R(c); -this.A-=this.aa},function(a,b){var c=a[0].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[0].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.F&65535), -b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[1].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[1].call(this,this.O(this.C,this.B), -b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[2].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c= -a[2].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[2].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c= -a[3].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[3].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa}, -function(a,b){var c=a[3].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[3].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[4].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.O(this.M,this.H+this.F&65535),b.call(this)); -this.R(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[4].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[4].call(this,this.O(this.C,this.B),b.call(this)); -this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[5].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[5].call(this, -this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[5].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[6].call(this, -this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[6].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a, -b){var c=a[6].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[6].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[7].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c); -this.A-=this.fa},function(a,b){var c=a[7].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[7].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[7].call(this,this.O(this.C,this.B),b.call(this));this.R(c); +this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[7].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[7].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8}],Wg=[function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a, +b){var c=a[0].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[0].call(this,this.O(this.C,this.D),b.call(this));this.R(c); +this.A-=this.aa},function(a,b){var c=a[0].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[0].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.F&65535), +b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[1].call(this,this.O(this.C,this.B), +b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[2].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[2].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c= +a[2].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[2].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c= +a[3].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[3].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[3].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa}, +function(a,b){var c=a[3].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[3].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[4].call(this,this.O(this.M,this.H+this.F&65535),b.call(this)); +this.R(c);this.A-=this.ga},function(a,b){var c=a[4].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[4].call(this,this.O(this.C,this.B),b.call(this)); +this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[5].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[5].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[5].call(this, +this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[5].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[6].call(this, +this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[6].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[6].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a, +b){var c=a[6].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[6].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[7].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c); +this.A-=this.ga},function(a,b){var c=a[7].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[7].call(this,this.O(this.C,this.B),b.call(this));this.R(c); this.A-=this.aa},function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.F+this.L()&65535),b.call(this));this.R(c);this.A-=this.V},function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.D+this.L()&65535),b.call(this));this.R(c);this.A-=this.W},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.F+this.L()&65535),b.call(this));this.R(c);this.A-=this.W},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.D+this.L()&65535),b.call(this));this.R(c);this.A-=this.V},function(a, b){var c=a[0].call(this,this.O(this.C,this.F+this.L()&65535),b.call(this));this.R(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.O(this.C,this.D+this.L()&65535),b.call(this));this.R(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.L()&65535),b.call(this));this.R(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.L()&65535),b.call(this));this.R(c);this.A-=this.P},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.F+this.L()& 65535),b.call(this));this.R(c);this.A-=this.V},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.D+this.L()&65535),b.call(this));this.R(c);this.A-=this.W},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.F+this.L()&65535),b.call(this));this.R(c);this.A-=this.W},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.D+this.L()&65535),b.call(this));this.R(c);this.A-=this.V},function(a,b){var c=a[1].call(this,this.O(this.C,this.F+this.L()&65535),b.call(this));this.R(c);this.A-= @@ -369,371 +369,372 @@ this.G,b.call(this))},function(a,b){this.I=a[3].call(this,this.I,b.call(this))}, a[4].call(this,this.I,b.call(this))},function(a,b){this.J=a[4].call(this,this.J,b.call(this))},function(a,b){this.B=a[4].call(this,this.B,b.call(this))},function(a,b){this.X=a[4].call(this,this.X,b.call(this))},function(a,b){this.H=a[4].call(this,this.H,b.call(this))},function(a,b){this.F=a[4].call(this,this.F,b.call(this))},function(a,b){this.D=a[4].call(this,this.D,b.call(this))},function(a,b){this.G=a[5].call(this,this.G,b.call(this))},function(a,b){this.I=a[5].call(this,this.I,b.call(this))}, function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.B=a[5].call(this,this.B,b.call(this))},function(a,b){this.X=a[5].call(this,this.X,b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.D=a[5].call(this,this.D,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.J=a[6].call(this,this.J, b.call(this))},function(a,b){this.B=a[6].call(this,this.B,b.call(this))},function(a,b){this.$|=512;this.X=a[6].call(this,this.X,b.call(this))},function(a,b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.D=a[6].call(this,this.D,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a, -b){this.B=a[7].call(this,this.B,b.call(this))},function(a,b){this.X=a[7].call(this,this.X,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))},function(a,b){this.D=a[7].call(this,this.D,b.call(this))}],ah=[function(){var a=this.da();16>(a&56)&&(this.$|=1);Zg[a].call(this,Gc,Wd)},function(){var a=this.da();a&16||(this.$|=1);Zg[a].call(this,$g,Wd)},function(){O[this.da()].call(this,ue)},function(){O[this.da()].call(this,ve)}, -N,N,N,N,N,N,N,bc,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N, -N,N],Hc=[function(){this.A-=2+(0>this.ga?0:1);return this.Jd.na},function(){this.A-=2+(0>this.ga?0:1);return this.tg.na},function(a){this.$|=2;this.Jd.load(a);this.A-=17+(0>this.ga?0:2);return a},function(a){this.$|=2;this.tg.load(a);this.A-=17+(0>this.ga?0:2);return a},function(a){this.$|=2;this.A-=14+(0>this.ga?0:2);if(0<=this.Pb.load(a,!0)&&2048!=(this.Pb.Ya&2560)&&(3072==(this.Pb.Ya&3072)||this.Pb.Kc>=(this.qa.na&3)&&this.Pb.Kc>=(a&3)))return ed(this),a;$c(this);return a},function(a){this.$|= -2;this.A-=14+(0>this.ga?0:2);if(0<=this.Pb.load(a,!0)&&512==(this.Pb.Ya&2560)&&this.Pb.Kc>=(this.qa.na&3)&&this.Pb.Kc>=(a&3))return ed(this),a;$c(this);return a},M,M],Ic=[tc,tc,tc,tc,tc,tc,M,M],Gc=Ic,$g=[function(a){0>this.ga?bc.call(this):(this.Ld(this.ga+2,this.Oc),this.Zc(this.ga+4,this.Oc>>16),a=this.Ue-this.Oc,this.A-=11);return a},function(a){0>this.ga?bc.call(this):(this.Ld(this.ga+2,this.bd),this.Zc(this.ga+4,this.bd>>16),a=this.qe-this.bd,this.A-=12);return a},function(a){0>this.ga?bc.call(this): -(this.Oc=this.Ga(this.ga+2)|this.rb(this.ga+4)<<16,this.Ue=this.Oc+a,this.$|=2,this.A-=11);return a},function(a){0>this.ga?bc.call(this):(this.bd=this.Ga(this.ga+2)|this.rb(this.ga+4)<<16,this.qe=this.bd+a,this.$|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ga?0:1);return this.Yc},M,function(a){this.Yc=this.Yc&65520|a&-65521;this.A-=3+(0>this.ga?0:3);this.Yc&1&&Bc(this,!0);this.$|=2;return a},M];function vc(){ah[this.da()].call(this)}function xc(){K(this,this.X);this.A-=this.oc} -function cc(){var a=this.X;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.zl}function dc(){this.D=this.Ha();this.F=this.Ha();this.H=this.Ha();this.X+=2;this.B=this.Ha();this.J=this.Ha();this.I=this.Ha();this.G=this.Ha();this.A-=this.xl}function ec(){O[this.da()].call(this,se)}function wc(){Wg[this.da()].call(this,te)}function fc(){K(this,this.K());this.A-=this.oc}function gc(){O[this.da()].call(this,ne)} -function hc(){K(this,this.da());this.A-=this.oc}function ic(){O[this.da()].call(this,me)}function jc(){var a=1,b=0,c=5;this.va&192&&(a=this.I,b=1,this.va&256&&(c=4));if(a--){var d=kb(this.ma,this.J,this.Ba-b-1);this.Zc(this.$a.Yb(this.D,0),d);this.D=this.D+(this.wa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}} -function kc(){var a=1,b=0,c=5;this.va&192&&(a=this.I,b=1,this.va&256&&(c=4));if(a--){var d=this.Ba-b-1,d=kb(this.ma,this.J,d)|kb(this.ma,this.J,d)<<8;this.Ld(this.$a.Yb(this.D,1),d);this.D=this.D+(this.wa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}} -function lc(){var a=1,b=0,c=5;this.va&192&&(a=this.I,b=1,this.va&256&&(c=4));if(a--){var d=this.rb(this.Ob.Sc(this.F,0));this.F=this.F+(this.wa&1024?-1:1)&65535;this.A-=c;this.I-=b;nb(this.ma,this.J,d,this.Ba-b-1);a&&(J(this,-2),this.$|=256)}} -function mc(){var a=1,b=0,c=5;this.va&192&&(a=this.I,b=1,this.va&256&&(c=4));if(a--){var d=this.Ga(this.Ob.Sc(this.F,1));this.F=this.F+(this.wa&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Ba-b-1;nb(this.ma,this.J,d&255,b);nb(this.ma,this.J,d>>8,b);a&&(J(this,-2),this.$|=256)}}function bh(){var a=this.L();Xc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function ch(){var a=this.L();Xc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)} -function dh(){var a=this.L();Sc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function eh(){var a=this.L();Sc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)}function fh(){var a=this.L();Vc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function gh(){var a=this.L();Vc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)}function hh(){var a=this.L();Sc(this)||Vc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb} -function ih(){var a=this.L();Sc(this)||Vc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)}function jh(){var a=this.L();Wc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function kh(){var a=this.L();Wc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)}function lh(){var a=this.L();Tc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function mh(){var a=this.L();Tc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)} -function nh(){var a=this.L();!Wc(this)!=!Xc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function oh(){var a=this.L();!Wc(this)==!Xc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function ph(){var a=this.L();Vc(this)||!Wc(this)!=!Xc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function qh(){var a=this.L();Vc(this)||!Wc(this)!=!Xc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)} -function rh(){Yg[this.da()].call(this,Yd,this.da);this.A-=0>this.Ia?1:this.rh}function nc(){Yg[this.da()].call(this,ge,Sd)}function oc(){Zg[this.da()].call(this,he,Sd)}function sh(){var a=this.K();I(this,this.Ha());this.X=this.X+a&65535;this.A-=this.El}function th(){I(this,this.Ha());this.A-=this.Bl} -function pc(){var a=this.K(),b=this.da()&31;this.A-=11;K(this,this.H);var c=this.X;if(0>8,c,d=Uc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Y=a);this.ca=65536;c&&(this.Y|=this.ca);d?dd(this):Zc(this);this.A-=this.Fe},function(){Vg[this.da()].call(this,sd)},function(){Wg[this.da()].call(this,Ad)},function(){Xg[this.da()].call(this,sd)},function(){O[this.da()].call(this,Ad)},function(){this.G=this.G&-256|sd.call(this,this.G&255,this.da());this.A--},function(){this.G=Ad.call(this,this.G,this.K());this.A--},function(){this.$|= -20;this.C=this.M=this.Ob;this.A-=this.Nb},function(){var a=this.G&255,b=this.G>>8,c,d=Uc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Y=a);this.ca=65536;c&&(this.Y|=this.ca);d?dd(this):Zc(this);this.A-=this.Fe},function(){this.la=this.G;this.G=(this.ia=this.G+1)&65535;this.Y=this.G|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.I;this.I=(this.ia=this.I+1)&65535;this.Y=this.I|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.J; -this.J=(this.ia=this.J+1)&65535;this.Y=this.J|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.B;this.B=(this.ia=this.B+1)&65535;this.Y=this.B|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.X;this.X=(this.ia=this.X+1)&65535;this.Y=this.X|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.H;this.H=(this.ia=this.H+1)&65535;this.Y=this.H|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.F;this.F=(this.ia= -this.F+1)&65535;this.Y=this.F|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.D;this.D=(this.ia=this.D+1)&65535;this.Y=this.D|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.G;this.G=(this.ia=this.G-1)&65535;this.Y=this.G|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.I;this.I=(this.ia=this.I-1)&65535;this.Y=this.I|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.J;this.J=(this.ia=this.J-1)&65535; -this.Y=this.J|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.B;this.B=(this.ia=this.B-1)&65535;this.Y=this.B|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.X;this.X=(this.ia=this.X-1)&65535;this.Y=this.X|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.H;this.H=(this.ia=this.H-1)&65535;this.Y=this.H|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.F;this.F=(this.ia=this.F-1)&65535;this.Y=this.F| -(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.D;this.D=(this.ia=this.D-1)&65535;this.Y=this.D|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){K(this,this.G);this.A-=this.oc},function(){K(this,this.I);this.A-=this.oc},function(){K(this,this.J);this.A-=this.oc},function(){K(this,this.B);this.A-=this.oc},function(){K(this,this.X-2&65535);this.A-=this.oc},function(){K(this,this.H);this.A-=this.oc},function(){K(this,this.F);this.A-=this.oc},function(){K(this,this.D); -this.A-=this.oc},function(){this.G=this.Ha();this.A-=this.hc},function(){this.I=this.Ha();this.A-=this.hc},function(){this.J=this.Ha();this.A-=this.hc},function(){this.B=this.Ha();this.A-=this.hc},function(){this.X=this.Ha();this.A-=this.hc},function(){this.H=this.Ha();this.A-=this.hc},function(){this.F=this.Ha();this.A-=this.hc},function(){this.D=this.Ha();this.A-=this.hc},bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,rh,function(){Zg[this.da()].call(this, -Zd,this.K);this.A-=0>this.Ia?1:this.rh},rh,function(){Zg[this.da()].call(this,Zd,this.L);this.A-=0>this.Ia?1:this.rh},function(){Vg[this.da()].call(this,ke)},function(){Wg[this.da()].call(this,le)},function(){Xg[this.Kg=this.da()].call(this,we)},function(){O[this.Kg=this.da()].call(this,xe)},function(){this.$|=1;Vg[this.da()].call(this,ie)},function(){this.$|=1;Wg[this.da()].call(this,ie)},function(){Xg[this.da()].call(this,ie)},function(){O[this.da()].call(this,ie)},function(){var a=this.da();switch((a& -56)>>3){case 0:this.Bb=this.$a.na;break;case 1:this.Bb=this.qa.na;break;case 2:this.Bb=this.Cb.na;break;case 3:this.Bb=this.Ob.na;break;default:N.call(this);return}this.$|=1;Wg[a].call(this,je)},function(){this.$|=1;this.C=this.M=this.Xl;O[this.da()].call(this,pe)},function(){var a,b=this.da(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Fa){bc.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.X;break;case 5:a=this.H; -break;case 6:a=this.F;break;case 7:a=this.D}}O[b].call(this,ie);switch(c){case 0:Rc(this,this.G);this.G=a;break;case 1:Lc(this,this.I);this.I=a;break;case 2:Qc(this,this.J);this.J=a;break;case 3:Pc(this,this.B);this.B=a;break;case 4:Rc(this,this.X);this.X=a;break;case 5:Lc(this,this.H);this.H=a;break;case 6:Qc(this,this.F);this.F=a;break;case 7:Pc(this,this.D),this.D=a}},function(){this.$|=1;Zg[this.da()].call(this,$d,this.Ha)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a; -this.A-=3},function(){var a=this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.X;this.X=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Lk},function(){var a=this.K(),b=this.K(); -K(this,this.qa.na);K(this,this.ra);zc(this,a,b);this.A-=this.Ok},function(){N.call(this)},function(){K(this,Cc(this));this.A-=this.oc},function(){Ac(this,this.Ha());this.A-=this.hc},function(){var a=this.G>>8;a&1?cd(this):Yc(this);a&4?Tc(this)||(this.ia^=1):Tc(this)&&(this.ia^=1);a&16?dd(this):Zc(this);a&64?ed(this):$c(this);a&128?fd(this):ad(this);this.A-=this.Ab},function(){this.G=this.G&255|(Cc(this)&213)<<8;this.A-=this.Ab},function(){this.G=this.G&-256|this.T(this.C,this.K());this.A-=this.Wi}, -function(){this.G=this.U(this.C,this.K());this.A-=this.Wi},function(){var a=this.K(),b=this.G;this.Zc(this.C.Yb(a,0),b);this.A-=this.Xi},function(){var a=this.K(),b=this.G;this.Ld(this.C.Yb(a,1),b);this.A-=this.Xi},function(){var a=1,b=0,c=this.Yi;this.va&192&&(a=this.I,b=1,c=this.$i,this.va&256||(this.A-=this.Zi));if(a--){var d=this.wa&1024?-1:1,e=this.T(this.C,this.F);this.Zc(this.$a.Yb(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.va&16?-3:-2),this.$|= -256)}},function(){var a=1,b=0,c=this.Yi;this.va&192&&(a=this.I,b=1,c=this.$i,this.va&256||(this.A-=this.Zi));if(a--){var d=this.wa&1024?-2:2,e=this.U(this.C,this.F);this.Ld(this.$a.Yb(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.va&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.Ii;this.va&192&&(a=this.I,b=1,c=this.Ki,this.va&256||(this.A-=this.Ji));if(a--){var d=this.wa&1024?-1:1,e=this.T(this.C,this.F),f=this.N(this.$a,this.D);sd.call(this, -e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.ob;this.I-=b;a&&Vc(this)==(this.va&64)&&(J(this,this.va&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.Ii;this.va&192&&(a=this.I,b=1,c=this.Ki,this.va&256||(this.A-=this.Ji));if(a--){var d=this.wa&1024?-2:2,e=this.U(this.C,this.F),f=this.O(this.$a,this.D);Ad.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.ob;this.I-=b;a&&Vc(this)==(this.va&64)&&(J(this,this.va&16?-3:-2),this.$|=256)}},function(){this.Y= -this.ia=this.la=this.G&255&this.da();this.ca=256;this.A-=this.Fe},function(){this.Y=this.ia=this.la=this.G&this.K();this.ca=65536;this.A-=this.Fe},function(){var a=1,b=0,c=this.ij;this.va&192&&(a=this.I,b=1,c=this.kj,this.va&256||(this.A-=this.jj));if(a--){var d=this.G;this.Zc(this.$a.Yb(this.D,0),d);this.D=this.D+(this.wa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.ij;this.va&192&&(a=this.I,b=1,c=this.kj,this.va&256||(this.A-=this.jj));if(a--){var d= -this.G;this.Ld(this.$a.Yb(this.D,1),d);this.D=this.D+(this.wa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.Qi;this.va&192&&(a=this.I,b=1,c=this.Si,this.va&256||(this.A-=this.Ri));a--&&(this.G=this.G&-256|this.T(this.C,this.F),this.F=this.F+(this.wa&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.va&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.Qi;this.va&192&&(a=this.I,b=1,c=this.Si,this.va&256||(this.A-=this.Ri));a--&&(this.G=this.U(this.C, -this.F),this.F=this.F+(this.wa&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.va&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.cj;this.va&192&&(a=this.I,b=1,c=this.ej,this.va&256||(this.A-=this.dj));a--&&(sd.call(this,this.G&255,this.N(this.$a,this.D)),this.D=this.D+(this.wa&1024?-1:1)&65535,this.A-=c-this.ob,this.I-=b,a&&Vc(this)==(this.va&64)&&(J(this,-2),this.$|=256))},function(){var a=1,b=0,c=this.cj;this.va&192&&(a=this.I,b=1,c=this.ej,this.va&256||(this.A-=this.dj));a--&&(Ad.call(this, -this.G,this.O(this.$a,this.D)),this.D=this.D+(this.wa&1024?-2:2)&65535,this.A-=c-this.ob,this.I-=b,a&&Vc(this)==(this.va&64)&&(J(this,-2),this.$|=256))},function(){this.G=this.G&-256|this.da();this.A-=this.Ab},function(){this.I=this.I&-256|this.da();this.A-=this.Ab},function(){this.J=this.J&-256|this.da();this.A-=this.Ab},function(){this.B=this.B&-256|this.da();this.A-=this.Ab},function(){this.G=this.G&255|this.da()<<8;this.A-=this.Ab},function(){this.I=this.I&255|this.da()<<8;this.A-=this.Ab},function(){this.J= -this.J&255|this.da()<<8;this.A-=this.Ab},function(){this.B=this.B&255|this.da()<<8;this.A-=this.Ab},function(){this.G=this.K();this.A-=this.Ab},function(){this.I=this.K();this.A-=this.Ab},function(){this.J=this.K();this.A-=this.Ab},function(){this.B=this.K();this.A-=this.Ab},function(){this.X=this.K();this.A-=this.Ab},function(){this.H=this.K();this.A-=this.Ab},function(){this.F=this.K();this.A-=this.Ab},function(){this.D=this.K();this.A-=this.Ab},sh,th,sh,th,function(){O[this.da()].call(this,re)}, -function(){O[this.da()].call(this,qe)},function(){this.$|=1;Yg[this.da()].call(this,ae,this.da)},function(){this.$|=1;Zg[this.da()].call(this,ae,this.K)},uh,vh,uh,vh,function(){id.call(this,3,null,this.el)},function(){var a=this.da(),b;a:{b=this.Cg[a];if(void 0!==b)for(var c=0;c>8)*a+this.G&255;this.ca=256;this.A-=this.Hk},function(){this.G=this.G&-256|(Sc(this)?255:0);this.A-=2},function(){this.G= -this.G&-256|this.T(this.C,this.B+(this.G&255)&65535);this.A-=this.Gl},wh,wh,wh,wh,wh,wh,wh,wh,function(){var a=this.L();(this.I=this.I-1&65535)&&this.Y&this.ca-1?(I(this,this.ra+a),this.A-=this.nl):this.A-=this.Ti},function(){var a=this.L();!(this.I=this.I-1&65535)||this.Y&this.ca-1?this.A-=this.Vi:(I(this,this.ra+a),this.A-=this.Ui)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.ra+a),this.A-=this.ml):this.A-=this.Ti},function(){var a=this.L();this.I?this.A-=this.Vi:(I(this,this.ra+ -a),this.A-=this.Ui)},function(){var a=this.da();this.G=this.G&-256|kb(this.ma,a,this.Ba-2);this.A-=this.Ni},function(){var a=this.da();this.G=kb(this.ma,a,this.Ba-1)|kb(this.ma,a+1&65535,this.Ba-2)<<8;this.A-=this.Ni},function(){var a=this.da();nb(this.ma,a,this.G&255,this.Ba-2);this.A-=this.bj},function(){var a=this.da();nb(this.ma,a,this.G&255,this.Ba-2);nb(this.ma,a+1&65535,this.G>>8,this.Ba-2);this.A-=this.bj},function(){var a=this.K();K(this,this.ra);I(this,this.ra+a);this.A-=this.Mk},function(){var a= -this.K();I(this,this.ra+a);this.A-=this.Oi},function(){zc(this,this.K(),this.K());this.A-=this.il},function(){var a=this.L();I(this,this.ra+a);this.A-=this.Oi},function(){this.G=this.G&-256|kb(this.ma,this.J,this.Ba-1);this.A-=this.Mi},function(){this.G=kb(this.ma,this.J,this.Ba-1)|kb(this.ma,this.J+1&65535,this.Ba-1)<<8;this.A-=this.Mi},function(){nb(this.ma,this.J,this.G&255,this.Ba-1);this.A-=this.aj},function(){nb(this.ma,this.J,this.G&255,this.Ba-1);nb(this.ma,this.J+1&65535,this.G>>8,this.Ba- -1);this.A-=this.aj},xh,xh,function(){this.$|=132;this.A-=this.Nb},function(){this.$|=68;this.A-=this.Nb},function(){this.ib|=4;this.A-=2;this.Z&&1=Dh&&(this.Jf=this.Kf=2);this.bh=a.scaleTimers||!1;this.bp=a.rtcDate;this.qk=!1;a.sound&&window&&"webkitAudioContext"in window&& -(this.Yh=new webkitAudioContext);this.reset();this.Oa()}w(s,P);var yh=5150,Dh=5170,Eh={none:0,tv:1,color:2,mono:3,ega:0},Ch={Hh:1},Ah=12,Bh={qp:16,kp:32,jm:48,wf:48,xf:4};Ch.ONE=0;Ch.rp=64;Ch.pp=128;Ch.mp=192;Ch.wf=192;Ch.xf=6;k=P.prototype; -k.tb=function(a,b,c,d){switch(c){case "sw1":return this.sa[c]=d,Fh(this,c,d,this.Xb,{0:this.Fa==yh?"Bootable Floppy Drive":"Loop on POST",1:this.Fa==yh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Fa==yh)return this.sa[c]=d,Fh(this,c,d,this.me,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.sa[c]=d,!0}return!1}; -k.nc=function(a,b,c,d){this.ma=b;this.S=c;this.Z=d;this.Ca=a;this.nb=C(a,"Keyboard");this.Hl=Math.round(c.Fd/1193181);jb(b,this,Gh);mb(b,this,Hh);this.Fab;b++){var c=13>=b?Ph(e,b):e.oa[b];a&&(a+="\n");a+="CMOS[0x"+p(b)+"]: 0x"+p(c)}e.Z.message(a)})}Dc(c,26,this,this.An)};k.$b=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0}; -k.reset=function(){var a;this.$c=this.Xb;this.Me=this.me;Qh(this);this.Xa=Array(this.Jf);for(a=0;a=Dh){this.gb=16;this.td=0;this.Cc=16;this.Hg=0;this.se=160;512<=Uh(this)&&(this.se|=16);3==Vh(this)&&(this.se|=64);this.Rh=3;this.Gf=0;this.Dg=Array(7);this.te=0;this.oa||(this.oa=Array(64), -Wh(this,this.bp));for(a=14;46>a;a++)void 0===this.oa[a]&&(this.oa[a]=0);this.oa[20]=this.$c&(Bh.wf|2|Ch.Hh|Ch.wf);this.oa[16]=Xh(this,0)<<4|Xh(this,1);Yh(this)}}; -function Wh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,z(a,"CMOS date invalid ("+b+"), using "+c)):b&&z(a,"CMOS date: "+c);a.oa[0]=c.getSeconds();a.oa[1]=0;a.oa[2]=c.getMinutes();a.oa[3]=0;a.oa[4]=c.getHours();a.oa[5]=0;a.oa[6]=c.getDay()+1;a.oa[7]=c.getDate();a.oa[8]=c.getMonth()+1;c=c.getFullYear();a.oa[9]=c%100;c/=100;a.oa[50]=c%10|c/10<<4;a.Yf=-1;a.oa[10]=38;a.oa[11]=2;a.oa[12]=0;a.oa[13]=128} -function Ph(a,b){var c=a.oa[b];if(10>b){var d=!1;4!=b&&5!=b||a.oa[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.oa[11]&4||(d&&128c;c++)b+=a.oa[c];a.oa[47]=b&255;a.oa[46]=b>>8} -k.save=function(){var a=new H(this);a.set(0,[this.Xb,this.me,this.$c,this.Me]);for(var b=[],c=0;c=Dh&&(a.set(5,[this.gb,this.td,this.Cc,this.Hg,this.se,this.Rh]),a.set(6,[this.Gf,this.Dg,this.te,this.oa,this.Yf]));return a.data()}; -k.restore=function(a){var b,c;b=a[0];this.Xb=b[0];this.me=b[1];this.$c=b[2];this.Me=b[3];b=a[1];this.Xa=Array(this.Jf);for(c=0;c>2)+1)*a.Dn+32*((b?a.me:a.Me)&15)}function ai(a,b){var c=b?a.Xb:a.$c;return a.Fa!=yh||c&Ch.Hh?((c&Ch.wf)>>Ch.xf)+1:0}function Xh(a,b){return b>Bh.xf} -function Fh(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='
'+g+"
\n"}c.innerHTML=f;b=y(c,"pcjs-bitCell");c=null;for(g=0;g>2].Fb[b&3],c,d,e)}function ji(a,b,c){b=a.Xa[b>>2].Fb[b&3];b.Tg&&b.ri&&b.th?(c&&(b.Vg=c),b.Dd||jd(a,b,!0)):c&&c(!0)} -function jd(a,b,c){c&&(b.count=b.Zb[1]<<8|b.Zb[0],b.am=b.mode&12,b.rk=b.gd=!1);for(var d=!1;0<=b.count&&(c=b.Ng<<16|b.Qb[1]<<8|b.Qb[0],4==b.am?(d=!0,function(c){b.ri.call(b.Tg,b.th,-1,function(f,g){0>f&&(b.rk||(b.rk=!0),f=255);b.Dd||gb(a.ma,c,f);(d=g)&&setTimeout(function(){qi(b)||jd(a,b)},0)})}(c)):8==b.am?(c=db(a.ma,c),0>b.ri.call(b.Tg,b.th,c)&&(b.gd=!0)):b.gd=!0),!d&&!qi(b););} -function qi(a){if(!a.gd&&0<=--a.count&&(a.mode&32?(a.Qb[0]--,0>a.Qb[0]&&(a.Qb[0]=255,a.Qb[1]--,0>a.Qb[1]&&(a.Qb[1]=255))):(a.Qb[0]++,255>3,e=a.qb[d];e.Ib|=1<<(b&7);e.cg=c||0;1==d&&(a.qb[0].Ib|=4);ti(a,d)} -function wi(a,b){var c=b>>3,d=a.qb[c],e=1<<(b&7);d.Ib&e&&(d.Ib&=~e,1!=c||d.Ib||(a.qb[0].Ib&=-5),ti(a,c))}function hd(a,b){void 0===b&&(b=0);var c=-1,d=a.qb[b];if(d.cg)c=-2,d.cg--;else for(var e=d.Ib&((d.Dc|d.ud)^255),f=d.ue+1;;){var f=f&7,g=1<>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Gb[a];e.og=b;e.mode=d;e.ak=c;e.Gc=[0,0];e.Zb=[0,0];e.Of=[0,0];e.hd=!1;e.Rf=!1;e.$e=!1;yi(this,a);0==a&&wi(this,0);2==a&&255==this.qb[0].ud&&77==this.dc&&(a=this.Gb[0],a.Uc[0]=a.Gc[0],a.Uc[1]=a.Gc[1],a.ie=F(this.S,this.bh))}else Oh(this,a),b=this.Gb[a],b.Of[0]=b.Zb[0],b.Of[1]=b.Zb[1],b.Rf=!0,yi(this,a)}}; -function Ai(a,b){var c=a.Gb[b],d=c.Gc[1]<<8|c.Gc[0];d||(d=1==c.ed?256:65536);return d}function yi(a,b){var c=a.Gb[b];c.$d=32==c.og?1:0;c.ed=48==c.og?2:1} -function Oh(a,b,c){var d=a.Gb[b];if(d.$e&&(2!=b||a.dc&1)){var e=F(a.S,a.bh),f=(e-d.ie)/a.Hl|0;0>f&&(d.ie=e,f=0);var g=Ai(a,b),h=a.Gb[b],m=h.Uc[1]<<8|h.Uc[0];m||(m=1==h.ed?256:65536);h=m-f;0==d.mode?(0>=h&&(h=0),h||(d.hd=!0,d.$e=!1,b||Q(a,0))):4==d.mode?(d.hd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Uc[0]=h&255,d.Uc[1]=h>>8,d.ie=e,!b&&d.hd&&Q(a,0))):6==d.mode&&(h-=f,0>=h&&(d.hd=!d.hd,h=g+h,0>=h&&(h=g),d.Uc[0]=h&255,d.Uc[1]=h>>8,d.ie=e,!b&&d.hd&&Q(a,0)));d.Zb[0]=h&255;d.Zb[1]=h>>8;c&&(a.ie=0)}return d} -function Nb(a,b){for(var c=0;c=Dh){var c=0,d=a.S.Fd,e=F(a.S,a.bh);if(0<=a.Yf&&(c=e-a.Yf,Math.floor(c/d)&&60<=++a.oa[0]&&(a.oa[0]=0,60<=++a.oa[2]&&(a.oa[2]=0,24<=++a.oa[4])))){a.oa[4]=0;a.oa[6]=a.oa[6]%7+1;var f=a.oa[9],g=oa[a.oa[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.oa[7]>g&&(a.oa[7]=1,12<++a.oa[8]&&(a.oa[8]=1,a.oa[9]=(a.oa[9]+1)%100))}a.Yf=e-c%d}} -k.mn=function(a,b){var c=this.Mg;this.If&16&&(this.dc&128?c=this.$c:this.nb&&(c=Bi(this.nb)));this.ba(a,null,b,"PPI_A",P.Pa,c);return c};k.Fo=function(a,b,c){this.ba(a,b,c,"PPI_A",P.Pa);this.Mg=b};k.nn=function(a,b){var c=this.dc;this.ba(a,null,b,"PPI_B",P.Pa,c);return c};k.Go=function(a,b,c){this.ba(a,b,c,"PPI_B",P.Pa);Ci(this,b);this.nb&&(a=this.nb,c=b&128?!1:!0,b=b&64?!0:!1,a.ii!==b&&(a.ii=a.ok=b),a.ki!==c&&(a.ki=c))&&(a.ok?(Di(a),a.ok=!1):Ei(a))}; -function Ci(a,b){var c=!!(b&2),d=!!(a.dc&2);a.dc=b;c!=d&&Mb(a,c)}k.on=function(a,b){var c=0,c=this.Fa==yh?this.dc&4?c|this.Me&15:c|this.Me>>4&1:this.dc&8?c|this.$c>>4:c|this.$c&15;this.dc&1&&Oh(this,2).hd&&(c=this.dc&2?c|32:c|16);this.ba(a,null,b,"PPI_C",P.Lj|P.Pa,c);return c};k.Ho=function(a,b,c){this.ba(a,b,c,"PPI_C",P.Pa);this.Th=b};k.pn=function(a,b){var c=this.If;this.ba(a,null,b,"PPI_CTRL",P.Pa,c);return c};k.Io=function(a,b,c){this.ba(a,b,c,"PPI_CTRL",P.Pa);this.If=b}; -k.Cm=function(a,b){var c=this.Hg;this.ba(a,null,b,"8042_OUTBUFF",P.Pa,c);this.gb&=-258;var d=this.nb&&Bi(this.nb,!0);d&&Fi(this,d);return c};k.Yn=function(a,b,c){this.ba(a,b,c,"8042_INBUF.DATA",P.Pa);if(this.gb&8)switch(this.td){case 96:this.Cc=b;this.gb=this.gb&-5|b&4;break;case 209:Gi(this,b);break;default:if(this.Cc&=-17,this.nb){a=-1;switch(b){case 255:a=250,Di(this.nb)}Fi(this,a)}}this.td=b;this.gb&=-9};k.Dm=function(a,b){var c=this.dc&-193;this.ba(a,null,b,"8042_RWREG",P.Pa,c);this.dc^=16;return c}; -k.Zn=function(a,b,c){this.ba(a,b,c,"8042_RWREG",P.Pa);Ci(this,b)};k.Em=function(a,b){this.ba(a,null,b,"8042_STATUS",P.Pa,this.gb);var c=this.gb&255;this.gb&256&&(this.gb|=1,this.gb&=-257);return c}; -k.Xn=function(a,b,c){this.ba(a,b,c,"8042_INBUFF.CMD",P.Pa);this.td=b;this.gb|=8;a=0;240<=this.td&&(a=this.td^15,this.td=240);switch(this.td){case 192:Fi(this,this.se);break;case 173:this.Cc|=16;break;case 174:this.Cc&=-17;break;case 170:this.nb&&Ei(this.nb,!0);this.Cc|=16;Fi(this,85);Gi(this,3);break;case 224:Fi(this,this.Cc&16?0:1);break;case 240:a&1&&yc(this.S)}};function Fi(a,b){0<=b&&(a.Hg=b,a.gb&=-2,a.gb|=256)}function Gi(a,b){a.Rh=b;$a(a.ma,!!(b&2));b&1||yc(a.S)} -k.Sm=function(a,b){this.ba(a,null,b,"CMOS_ADDR",P.Pa,this.te);return this.te};k.no=function(a,b,c){this.ba(a,b,c,"CMOS_ADDR",P.Pa);this.te=b;this.Lg=b&128?0:128};k.Tm=function(a,b){var c=this.te&63,d=13>=c?Ph(this,c):this.oa[c];this.ba(a,null,b,"CMOS_DATA["+p(c)+"]",P.Pa,d);return d}; -k.oo=function(a,b,c){var d=this.te&63;this.ba(a,b,c,"CMOS_DATA["+p(d)+"]",P.Pa);a=this.oa;13>=d&&10>d&&(c=!1,this.oa[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.kn=function(a,b){this.ba(a,null,b,"MFG_DATA",P.Pa,this.Gf);return this.Gf};k.Co=function(a,b,c){this.ba(a,b,c,"MFG_DATA",P.Pa);this.Gf=b};k.Eo=function(a,b,c){this.ba(a,b,c,"NMI",P.Pa);this.Lg=b}; -k.An=function(a){var b=this.S.G>>8;this.Z&&L(this.Z,this.Z.Pa)&&(this.Z.message("ChipSet.intBIOSRTC(AH="+p(b)+") at "+ca(a-this.S.qa.Ja,this.S.qa.na)),Ec(this.S,a,function(a,d){return function(e){d=F(a.S)-d;var f="C="+(Sc(a.S)?1:0),g=a.S.J&255,h=a.S.J>>8,m=a.S.J&255,n=a.S.J>>8;if(2==b||3==b)f+=" CH(hour)="+q(h)+" CL(min)="+p(g)+" DH(sec)="+p(n);else if(4==b||5==b)f+=" CX(year)="+q(a.S.I)+" DH(month)="+p(n)+" DL(day)="+p(m);a.Ea("ChipSet.intBIOSRTC("+e+"): "+f+" (cycles="+d+")")}}(this,F(this.S)))); -return!0};function zh(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;ec||2E4>8&255,this.ub[c++]=f[b]>>16&255,this.ub[c++]=f[b]>>24&255;else this.ub=d;this.Nh=d.symbols;if(!this.ub.length){this.error("Empty ROM: "+a);return}if(1==this.ub.length){this.error(this.ub[0]);return}}catch(g){B(this, -"ROM data error: "+g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.ub=Array(a.length),d=0;dthis.Fg?21:23,c=a.oa[b]|a.oa[b+1]<<8,c=c+(this.Md>>10);a.oa[b]=c&255;a.oa[b+1]=c>>8;Yh(a)}}else this.error("No RAM allocated")}; -Aa(function(){for(var a=y(window.document,"pcjs","ram"),b=0;b(a&56)&&(this.$|=1);Wg[a].call(this,Dc,Td)},function(){var a=this.ea();a&16||(this.$|=1);Wg[a].call(this,Xg,Td)},function(){O[this.ea()].call(this,re)},function(){O[this.ea()].call(this,se)}, +N,N,N,N,N,N,N,G,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N, +N],Ec=[function(){this.A-=2+(0>this.ha?0:1);return this.Ld.oa},function(){this.A-=2+(0>this.ha?0:1);return this.xg.oa},function(a){this.$|=2;this.Ld.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.$|=2;this.xg.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.$|=2;this.A-=14+(0>this.ha?0:2);if(0<=this.Rb.load(a,!0)&&2048!=(this.Rb.ab&2560)&&(3072==(this.Rb.ab&3072)||this.Rb.Mc>=(this.ra.oa&3)&&this.Rb.Mc>=(a&3)))return bd(this),a;Xc(this);return a},function(a){this.$|=2; +this.A-=14+(0>this.ha?0:2);if(0<=this.Rb.load(a,!0)&&512==(this.Rb.ab&2560)&&this.Rb.Mc>=(this.ra.oa&3)&&this.Rb.Mc>=(a&3))return bd(this),a;Xc(this);return a},M,M],Fc=[qc,qc,qc,qc,qc,qc,M,M],Dc=Fc,Xg=[function(a){0>this.ha?G.call(this):(this.Nd(this.ha+2,this.Qc),this.bd(this.ha+4,this.Qc>>16),a=this.We-this.Qc,this.A-=11);return a},function(a){0>this.ha?G.call(this):(this.Nd(this.ha+2,this.ed),this.bd(this.ha+4,this.ed>>16),a=this.se-this.ed,this.A-=12);return a},function(a){0>this.ha?G.call(this): +(this.Qc=this.Ia(this.ha+2)|this.ub(this.ha+4)<<16,this.We=this.Qc+a,this.$|=2,this.A-=11);return a},function(a){0>this.ha?G.call(this):(this.ed=this.Ia(this.ha+2)|this.ub(this.ha+4)<<16,this.se=this.ed+a,this.$|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ha?0:1);return this.ad},M,function(a){this.ad=this.ad&65520|a&-65521;this.A-=3+(0>this.ha?0:3);this.ad&1&&yc(this,!0);this.$|=2;return a},M];function sc(){Yg[this.ea()].call(this)}function uc(){K(this,this.X);this.A-=this.rc} +function $b(){var a=this.X;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.Dl}function ac(){this.D=this.Ja();this.F=this.Ja();this.H=this.Ja();this.X+=2;this.B=this.Ja();this.J=this.Ja();this.I=this.Ja();this.G=this.Ja();this.A-=this.Bl}function bc(){O[this.ea()].call(this,pe)}function tc(){Tg[this.ea()].call(this,qe)}function cc(){K(this,this.K());this.A-=this.rc}function dc(){O[this.ea()].call(this,ke)} +function ec(){K(this,this.ea());this.A-=this.rc}function fc(){O[this.ea()].call(this,je)}function gc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=hb(this.na,this.J,this.Ca-b-1);this.bd(this.cb.$b(this.D,0),d);this.D=this.D+(this.xa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}} +function hc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.Ca-b-1,d=hb(this.na,this.J,d)|hb(this.na,this.J,d)<<8;this.Nd(this.cb.$b(this.D,1),d);this.D=this.D+(this.xa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}} +function ic(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.ub(this.Qb.Uc(this.F,0));this.F=this.F+(this.xa&1024?-1:1)&65535;this.A-=c;this.I-=b;lb(this.na,this.J,d,this.Ca-b-1);a&&(J(this,-2),this.$|=256)}} +function jc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.Ia(this.Qb.Uc(this.F,1));this.F=this.F+(this.xa&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Ca-b-1;lb(this.na,this.J,d&255,b);lb(this.na,this.J,d>>8,b);a&&(J(this,-2),this.$|=256)}}function Zg(){var a=this.L();Uc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function $g(){var a=this.L();Uc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)} +function ah(){var a=this.L();Pc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function bh(){var a=this.L();Pc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)}function ch(){var a=this.L();Sc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function dh(){var a=this.L();Sc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)}function eh(){var a=this.L();Pc(this)||Sc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb} +function fh(){var a=this.L();Pc(this)||Sc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)}function gh(){var a=this.L();Tc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function hh(){var a=this.L();Tc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)}function ih(){var a=this.L();Qc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function jh(){var a=this.L();Qc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)} +function kh(){var a=this.L();!Tc(this)!=!Uc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function lh(){var a=this.L();!Tc(this)==!Uc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function mh(){var a=this.L();Sc(this)||!Tc(this)!=!Uc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function nh(){var a=this.L();Sc(this)||!Tc(this)!=!Uc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)} +function oh(){Vg[this.ea()].call(this,Vd,this.ea);this.A-=0>this.Ka?1:this.wh}function kc(){Vg[this.ea()].call(this,de,Sd)}function lc(){Wg[this.ea()].call(this,ee,Sd)}function ph(){var a=this.K();I(this,this.Ja());this.X=this.X+a&65535;this.A-=this.Il}function qh(){I(this,this.Ja());this.A-=this.Fl} +function mc(){var a=this.K(),b=this.ea()&31;this.A-=11;K(this,this.H);var c=this.X;if(0>8,c,d=Rc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Y=a);this.da=65536;c&&(this.Y|=this.da);d?ad(this):Wc(this);this.A-=this.He},function(){Sg[this.ea()].call(this,pd)},function(){Tg[this.ea()].call(this,xd)},function(){Ug[this.ea()].call(this,pd)},function(){O[this.ea()].call(this,xd)},function(){this.G=this.G&-256|pd.call(this,this.G&255,this.ea());this.A--},function(){this.G=xd.call(this,this.G,this.K());this.A--},function(){this.$|= +20;this.C=this.M=this.Qb;this.A-=this.Pb},function(){var a=this.G&255,b=this.G>>8,c,d=Rc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Y=a);this.da=65536;c&&(this.Y|=this.da);d?ad(this):Wc(this);this.A-=this.He},function(){this.ma=this.G;this.G=(this.ja=this.G+1)&65535;this.Y=this.G|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.I;this.I=(this.ja=this.I+1)&65535;this.Y=this.I|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.J; +this.J=(this.ja=this.J+1)&65535;this.Y=this.J|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.B;this.B=(this.ja=this.B+1)&65535;this.Y=this.B|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.X;this.X=(this.ja=this.X+1)&65535;this.Y=this.X|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.H;this.H=(this.ja=this.H+1)&65535;this.Y=this.H|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.F;this.F=(this.ja= +this.F+1)&65535;this.Y=this.F|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.D;this.D=(this.ja=this.D+1)&65535;this.Y=this.D|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.G;this.G=(this.ja=this.G-1)&65535;this.Y=this.G|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.I;this.I=(this.ja=this.I-1)&65535;this.Y=this.I|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.J;this.J=(this.ja=this.J-1)&65535; +this.Y=this.J|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.B;this.B=(this.ja=this.B-1)&65535;this.Y=this.B|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.X;this.X=(this.ja=this.X-1)&65535;this.Y=this.X|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.H;this.H=(this.ja=this.H-1)&65535;this.Y=this.H|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.F;this.F=(this.ja=this.F-1)&65535;this.Y=this.F| +(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.D;this.D=(this.ja=this.D-1)&65535;this.Y=this.D|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){K(this,this.G);this.A-=this.rc},function(){K(this,this.I);this.A-=this.rc},function(){K(this,this.J);this.A-=this.rc},function(){K(this,this.B);this.A-=this.rc},function(){K(this,this.X-2&65535);this.A-=this.rc},function(){K(this,this.H);this.A-=this.rc},function(){K(this,this.F);this.A-=this.rc},function(){K(this,this.D); +this.A-=this.rc},function(){this.G=this.Ja();this.A-=this.jc},function(){this.I=this.Ja();this.A-=this.jc},function(){this.J=this.Ja();this.A-=this.jc},function(){this.B=this.Ja();this.A-=this.jc},function(){this.X=this.Ja();this.A-=this.jc},function(){this.H=this.Ja();this.A-=this.jc},function(){this.F=this.Ja();this.A-=this.jc},function(){this.D=this.Ja();this.A-=this.jc},Zg,$g,ah,bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,Zg,$g,ah,bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,oh,function(){Wg[this.ea()].call(this, +Wd,this.K);this.A-=0>this.Ka?1:this.wh},oh,function(){Wg[this.ea()].call(this,Wd,this.L);this.A-=0>this.Ka?1:this.wh},function(){Sg[this.ea()].call(this,he)},function(){Tg[this.ea()].call(this,ie)},function(){Ug[this.Pg=this.ea()].call(this,te)},function(){O[this.Pg=this.ea()].call(this,ue)},function(){this.$|=1;Sg[this.ea()].call(this,fe)},function(){this.$|=1;Tg[this.ea()].call(this,fe)},function(){Ug[this.ea()].call(this,fe)},function(){O[this.ea()].call(this,fe)},function(){var a=this.ea();switch((a& +56)>>3){case 0:this.Db=this.cb.oa;break;case 1:this.Db=this.ra.oa;break;case 2:this.Db=this.Eb.oa;break;case 3:this.Db=this.Qb.oa;break;default:N.call(this);return}this.$|=1;Tg[a].call(this,ge)},function(){this.$|=1;this.C=this.M=this.am;O[this.ea()].call(this,me)},function(){var a,b=this.ea(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Ga){G.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.X;break;case 5:a=this.H;break; +case 6:a=this.F;break;case 7:a=this.D}}O[b].call(this,fe);switch(c){case 0:Oc(this,this.G);this.G=a;break;case 1:Ic(this,this.I);this.I=a;break;case 2:Nc(this,this.J);this.J=a;break;case 3:Mc(this,this.B);this.B=a;break;case 4:Oc(this,this.X);this.X=a;break;case 5:Ic(this,this.H);this.H=a;break;case 6:Nc(this,this.F);this.F=a;break;case 7:Mc(this,this.D),this.D=a}},function(){this.$|=1;Wg[this.ea()].call(this,Xd,this.Ja)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a;this.A-= +3},function(){var a=this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.X;this.X=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Pk},function(){var a=this.K(),b=this.K();K(this, +this.ra.oa);K(this,this.sa);wc(this,a,b);this.A-=this.Sk},function(){N.call(this)},function(){K(this,zc(this));this.A-=this.rc},function(){xc(this,this.Ja());this.A-=this.jc},function(){var a=this.G>>8;a&1?$c(this):Vc(this);a&4?Qc(this)||(this.ja^=1):Qc(this)&&(this.ja^=1);a&16?ad(this):Wc(this);a&64?bd(this):Xc(this);a&128?cd(this):Yc(this);this.A-=this.Cb},function(){this.G=this.G&255|(zc(this)&213)<<8;this.A-=this.Cb},function(){this.G=this.G&-256|this.T(this.C,this.K());this.A-=this.aj},function(){this.G= +this.U(this.C,this.K());this.A-=this.aj},function(){var a=this.K(),b=this.G;this.bd(this.C.$b(a,0),b);this.A-=this.bj},function(){var a=this.K(),b=this.G;this.Nd(this.C.$b(a,1),b);this.A-=this.bj},function(){var a=1,b=0,c=this.cj;this.wa&192&&(a=this.I,b=1,c=this.ej,this.wa&256||(this.A-=this.dj));if(a--){var d=this.xa&1024?-1:1,e=this.T(this.C,this.F);this.bd(this.cb.$b(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){var a= +1,b=0,c=this.cj;this.wa&192&&(a=this.I,b=1,c=this.ej,this.wa&256||(this.A-=this.dj));if(a--){var d=this.xa&1024?-2:2,e=this.U(this.C,this.F);this.Nd(this.cb.$b(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.Ni;this.wa&192&&(a=this.I,b=1,c=this.Pi,this.wa&256||(this.A-=this.Oi));if(a--){var d=this.xa&1024?-1:1,e=this.T(this.C,this.F),f=this.N(this.cb,this.D);pd.call(this,e,f);this.F=this.F+d&65535; +this.D=this.D+d&65535;this.A-=c-this.qb;this.I-=b;a&&Sc(this)==(this.wa&64)&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.Ni;this.wa&192&&(a=this.I,b=1,c=this.Pi,this.wa&256||(this.A-=this.Oi));if(a--){var d=this.xa&1024?-2:2,e=this.U(this.C,this.F),f=this.O(this.cb,this.D);xd.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.qb;this.I-=b;a&&Sc(this)==(this.wa&64)&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){this.Y=this.ja=this.ma=this.G&255& +this.ea();this.da=256;this.A-=this.He},function(){this.Y=this.ja=this.ma=this.G&this.K();this.da=65536;this.A-=this.He},function(){var a=1,b=0,c=this.nj;this.wa&192&&(a=this.I,b=1,c=this.pj,this.wa&256||(this.A-=this.oj));if(a--){var d=this.G;this.bd(this.cb.$b(this.D,0),d);this.D=this.D+(this.xa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.nj;this.wa&192&&(a=this.I,b=1,c=this.pj,this.wa&256||(this.A-=this.oj));if(a--){var d=this.G;this.Nd(this.cb.$b(this.D, +1),d);this.D=this.D+(this.xa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.Vi;this.wa&192&&(a=this.I,b=1,c=this.Xi,this.wa&256||(this.A-=this.Wi));a--&&(this.G=this.G&-256|this.T(this.C,this.F),this.F=this.F+(this.xa&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.wa&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.Vi;this.wa&192&&(a=this.I,b=1,c=this.Xi,this.wa&256||(this.A-=this.Wi));a--&&(this.G=this.U(this.C,this.F),this.F=this.F+(this.xa& +1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.wa&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.hj;this.wa&192&&(a=this.I,b=1,c=this.jj,this.wa&256||(this.A-=this.ij));a--&&(pd.call(this,this.G&255,this.N(this.cb,this.D)),this.D=this.D+(this.xa&1024?-1:1)&65535,this.A-=c-this.qb,this.I-=b,a&&Sc(this)==(this.wa&64)&&(J(this,-2),this.$|=256))},function(){var a=1,b=0,c=this.hj;this.wa&192&&(a=this.I,b=1,c=this.jj,this.wa&256||(this.A-=this.ij));a--&&(xd.call(this,this.G,this.O(this.cb, +this.D)),this.D=this.D+(this.xa&1024?-2:2)&65535,this.A-=c-this.qb,this.I-=b,a&&Sc(this)==(this.wa&64)&&(J(this,-2),this.$|=256))},function(){this.G=this.G&-256|this.ea();this.A-=this.Cb},function(){this.I=this.I&-256|this.ea();this.A-=this.Cb},function(){this.J=this.J&-256|this.ea();this.A-=this.Cb},function(){this.B=this.B&-256|this.ea();this.A-=this.Cb},function(){this.G=this.G&255|this.ea()<<8;this.A-=this.Cb},function(){this.I=this.I&255|this.ea()<<8;this.A-=this.Cb},function(){this.J=this.J& +255|this.ea()<<8;this.A-=this.Cb},function(){this.B=this.B&255|this.ea()<<8;this.A-=this.Cb},function(){this.G=this.K();this.A-=this.Cb},function(){this.I=this.K();this.A-=this.Cb},function(){this.J=this.K();this.A-=this.Cb},function(){this.B=this.K();this.A-=this.Cb},function(){this.X=this.K();this.A-=this.Cb},function(){this.H=this.K();this.A-=this.Cb},function(){this.F=this.K();this.A-=this.Cb},function(){this.D=this.K();this.A-=this.Cb},ph,qh,ph,qh,function(){O[this.ea()].call(this,oe)},function(){O[this.ea()].call(this, +ne)},function(){this.$|=1;Vg[this.ea()].call(this,Yd,this.ea)},function(){this.$|=1;Wg[this.ea()].call(this,Yd,this.K)},rh,sh,rh,sh,function(){fd.call(this,3,null,this.il)},function(){var a=this.ea(),b;a:{b=this.Gg[a];if(void 0!==b)for(var c=0;c>8)*a+this.G&255;this.da=256;this.A-=this.Lk},function(){this.G=this.G&-256|(Pc(this)?255:0);this.A-=2},function(){this.G=this.G&-256|this.T(this.C,this.B+ +(this.G&255)&65535);this.A-=this.Kl},th,th,th,th,th,th,th,th,function(){var a=this.L();(this.I=this.I-1&65535)&&this.Y&this.da-1?(I(this,this.sa+a),this.A-=this.rl):this.A-=this.Yi},function(){var a=this.L();!(this.I=this.I-1&65535)||this.Y&this.da-1?this.A-=this.$i:(I(this,this.sa+a),this.A-=this.Zi)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.sa+a),this.A-=this.ql):this.A-=this.Yi},function(){var a=this.L();this.I?this.A-=this.$i:(I(this,this.sa+a),this.A-=this.Zi)},function(){var a= +this.ea();this.G=this.G&-256|hb(this.na,a,this.Ca-2);this.A-=this.Si},function(){var a=this.ea();this.G=hb(this.na,a,this.Ca-1)|hb(this.na,a+1&65535,this.Ca-2)<<8;this.A-=this.Si},function(){var a=this.ea();lb(this.na,a,this.G&255,this.Ca-2);this.A-=this.gj},function(){var a=this.ea();lb(this.na,a,this.G&255,this.Ca-2);lb(this.na,a+1&65535,this.G>>8,this.Ca-2);this.A-=this.gj},function(){var a=this.K();K(this,this.sa);I(this,this.sa+a);this.A-=this.Qk},function(){var a=this.K();I(this,this.sa+a); +this.A-=this.Ti},function(){wc(this,this.K(),this.K());this.A-=this.ml},function(){var a=this.L();I(this,this.sa+a);this.A-=this.Ti},function(){this.G=this.G&-256|hb(this.na,this.J,this.Ca-1);this.A-=this.Ri},function(){this.G=hb(this.na,this.J,this.Ca-1)|hb(this.na,this.J+1&65535,this.Ca-1)<<8;this.A-=this.Ri},function(){lb(this.na,this.J,this.G&255,this.Ca-1);this.A-=this.fj},function(){lb(this.na,this.J,this.G&255,this.Ca-1);lb(this.na,this.J+1&65535,this.G>>8,this.Ca-1);this.A-=this.fj},uh,uh, +function(){this.$|=132;this.A-=this.Pb},function(){this.$|=68;this.A-=this.Pb},function(){this.kb|=4;this.A-=2;this.Z&&1=Ah&&(this.Lf=this.Mf=2);this.hh=a.scaleTimers||!1;this.fp=a.rtcDate;this.uk=!1;a.sound&&window&&"webkitAudioContext"in window&& +(this.ci=new webkitAudioContext);this.reset();this.Sa()}x(w,P);var vh=5150,Ah=5170,Bh={none:0,tv:1,color:2,mono:3,ega:0},zh={Mh:1},xh=12,yh={up:16,op:32,nm:48,yf:48,zf:4};zh.ONE=0;zh.vp=64;zh.tp=128;zh.qp=192;zh.yf=192;zh.zf=6;k=P.prototype; +k.wb=function(a,b,c,d){switch(c){case "sw1":return this.ta[c]=d,Ch(this,c,d,this.Zb,{0:this.Ga==vh?"Bootable Floppy Drive":"Loop on POST",1:this.Ga==vh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ga==vh)return this.ta[c]=d,Ch(this,c,d,this.oe,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.ta[c]=d,!0}return!1}; +k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.Da=a;this.pb=B(a,"Keyboard");this.Ll=Math.round(c.Hd/1193181);gb(b,this,Dh);kb(b,this,Eh);this.Gab;b++){var c=13>=b?Mh(e,b):e.pa[b];a&&(a+="\n");a+="CMOS[0x"+p(b)+"]: 0x"+p(c)}e.Z.message(a)})}Ac(c,26,this,this.En)};k.bc=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0}; +k.reset=function(){var a;this.cd=this.Zb;this.Oe=this.oe;Nh(this);this.$a=Array(this.Lf);for(a=0;a=Ah){this.jb=16;this.vd=0;this.Ec=16;this.Mg=0;this.ue=160;512<=Rh(this)&&(this.ue|=16);3==Sh(this)&&(this.ue|=64);this.Wh=3;this.If=0;this.Ig=Array(7);this.ve=0;this.pa||(this.pa=Array(64), +Th(this,this.fp));for(a=14;46>a;a++)void 0===this.pa[a]&&(this.pa[a]=0);this.pa[20]=this.cd&(yh.yf|2|zh.Mh|zh.yf);this.pa[16]=Uh(this,0)<<4|Uh(this,1);Vh(this)}}; +function Th(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ca("CMOS date invalid ("+b+"), using "+c)):b&&a.ca("CMOS date: "+c);a.pa[0]=c.getSeconds();a.pa[1]=0;a.pa[2]=c.getMinutes();a.pa[3]=0;a.pa[4]=c.getHours();a.pa[5]=0;a.pa[6]=c.getDay()+1;a.pa[7]=c.getDate();a.pa[8]=c.getMonth()+1;c=c.getFullYear();a.pa[9]=c%100;c/=100;a.pa[50]=c%10|c/10<<4;a.ag=-1;a.pa[10]=38;a.pa[11]=2;a.pa[12]=0;a.pa[13]=128} +function Mh(a,b){var c=a.pa[b];if(10>b){var d=!1;4!=b&&5!=b||a.pa[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.pa[11]&4||(d&&128c;c++)b+=a.pa[c];a.pa[47]=b&255;a.pa[46]=b>>8} +k.save=function(){var a=new H(this);a.set(0,[this.Zb,this.oe,this.cd,this.Oe]);for(var b=[],c=0;c=Ah&&(a.set(5,[this.jb,this.vd,this.Ec,this.Mg,this.ue,this.Wh]),a.set(6,[this.If,this.Ig,this.ve,this.pa,this.ag]));return a.data()}; +k.restore=function(a){var b,c;b=a[0];this.Zb=b[0];this.oe=b[1];this.cd=b[2];this.Oe=b[3];b=a[1];this.$a=Array(this.Lf);for(c=0;c>2)+1)*a.Hn+32*((b?a.oe:a.Oe)&15)}function Yh(a,b){var c=b?a.Zb:a.cd;return a.Ga!=vh||c&zh.Mh?((c&zh.yf)>>zh.zf)+1:0}function Uh(a,b){return b>yh.zf} +function Ch(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='
'+g+"
\n"}c.innerHTML=f;b=A(c,"pcjs-bitCell");c=null;for(g=0;g>2].Hb[b&3],c,d,e)}function gi(a,b,c){b=a.$a[b>>2].Hb[b&3];b.Yg&&b.wi&&b.yh?(c&&(b.$g=c),b.Fd||gd(a,b,!0)):c&&c(!0)} +function gd(a,b,c){c&&(b.count=b.ac[1]<<8|b.ac[0],b.em=b.mode&12,b.vk=b.kd=!1);for(var d=!1;0<=b.count&&(c=b.Sg<<16|b.Sb[1]<<8|b.Sb[0],4==b.em?(d=!0,function(c){b.wi.call(b.Yg,b.yh,-1,function(f,g){0>f&&(b.vk||(b.vk=!0),f=255);b.Fd||bb(a.na,c,f);(d=g)&&setTimeout(function(){ni(b)||gd(a,b)},0)})}(c)):8==b.em?(c=$a(a.na,c),0>b.wi.call(b.Yg,b.yh,c)&&(b.kd=!0)):b.kd=!0),!d&&!ni(b););} +function ni(a){if(!a.kd&&0<=--a.count&&(a.mode&32?(a.Sb[0]--,0>a.Sb[0]&&(a.Sb[0]=255,a.Sb[1]--,0>a.Sb[1]&&(a.Sb[1]=255))):(a.Sb[0]++,255>3,e=a.sb[d];e.Kb|=1<<(b&7);e.fg=c||0;1==d&&(a.sb[0].Kb|=4);qi(a,d)} +function ti(a,b){var c=b>>3,d=a.sb[c],e=1<<(b&7);d.Kb&e&&(d.Kb&=~e,1!=c||d.Kb||(a.sb[0].Kb&=-5),qi(a,c))}function ed(a,b){void 0===b&&(b=0);var c=-1,d=a.sb[b];if(d.fg)c=-2,d.fg--;else for(var e=d.Kb&((d.Fc|d.wd)^255),f=d.we+1;;){var f=f&7,g=1<>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Ib[a];e.sg=b;e.mode=d;e.ek=c;e.Ic=[0,0];e.ac=[0,0];e.Rf=[0,0];e.ld=!1;e.Uf=!1;e.bf=!1;vi(this,a);0==a&&ti(this,0);2==a&&255==this.sb[0].wd&&77==this.fc&&(a=this.Ib[0],a.Wc[0]=a.Ic[0],a.Wc[1]=a.Ic[1],a.ke=E(this.S,this.hh))}else Lh(this,a),b=this.Ib[a],b.Rf[0]=b.ac[0],b.Rf[1]=b.ac[1],b.Uf=!0,vi(this,a)}}; +function xi(a,b){var c=a.Ib[b],d=c.Ic[1]<<8|c.Ic[0];d||(d=1==c.hd?256:65536);return d}function vi(a,b){var c=a.Ib[b];c.be=32==c.sg?1:0;c.hd=48==c.sg?2:1} +function Lh(a,b,c){var d=a.Ib[b];if(d.bf&&(2!=b||a.fc&1)){var e=E(a.S,a.hh),f=(e-d.ke)/a.Ll|0;0>f&&(d.ke=e,f=0);var g=xi(a,b),h=a.Ib[b],m=h.Wc[1]<<8|h.Wc[0];m||(m=1==h.hd?256:65536);h=m-f;0==d.mode?(0>=h&&(h=0),h||(d.ld=!0,d.bf=!1,b||Q(a,0))):4==d.mode?(d.ld=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Wc[0]=h&255,d.Wc[1]=h>>8,d.ke=e,!b&&d.ld&&Q(a,0))):6==d.mode&&(h-=f,0>=h&&(d.ld=!d.ld,h=g+h,0>=h&&(h=g),d.Wc[0]=h&255,d.Wc[1]=h>>8,d.ke=e,!b&&d.ld&&Q(a,0)));d.ac[0]=h&255;d.ac[1]=h>>8;c&&(a.ke=0)}return d} +function Lb(a,b){for(var c=0;c=Ah){var c=0,d=a.S.Hd,e=E(a.S,a.hh);if(0<=a.ag&&(c=e-a.ag,Math.floor(c/d)&&60<=++a.pa[0]&&(a.pa[0]=0,60<=++a.pa[2]&&(a.pa[2]=0,24<=++a.pa[4])))){a.pa[4]=0;a.pa[6]=a.pa[6]%7+1;var f=a.pa[9],g=oa[a.pa[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.pa[7]>g&&(a.pa[7]=1,12<++a.pa[8]&&(a.pa[8]=1,a.pa[9]=(a.pa[9]+1)%100))}a.ag=e-c%d}} +k.qn=function(a,b){var c=this.Rg;this.Kf&16&&(this.fc&128?c=this.cd:this.pb&&(c=yi(this.pb)));this.ba(a,null,b,"PPI_A",P.Ta,c);return c};k.Jo=function(a,b,c){this.ba(a,b,c,"PPI_A",P.Ta);this.Rg=b};k.rn=function(a,b){var c=this.fc;this.ba(a,null,b,"PPI_B",P.Ta,c);return c};k.Ko=function(a,b,c){this.ba(a,b,c,"PPI_B",P.Ta);zi(this,b);this.pb&&(a=this.pb,c=b&128?!1:!0,b=b&64?!0:!1,a.ni!==b&&(a.ni=a.sk=b),a.pi!==c&&(a.pi=c))&&(a.sk?(Ai(a),a.sk=!1):Bi(a))}; +function zi(a,b){var c=!!(b&2),d=!!(a.fc&2);a.fc=b;c!=d&&Kb(a,c)}k.sn=function(a,b){var c=0,c=this.Ga==vh?this.fc&4?c|this.Oe&15:c|this.Oe>>4&1:this.fc&8?c|this.cd>>4:c|this.cd&15;this.fc&1&&Lh(this,2).ld&&(c=this.fc&2?c|32:c|16);this.ba(a,null,b,"PPI_C",P.Qj|P.Ta,c);return c};k.Lo=function(a,b,c){this.ba(a,b,c,"PPI_C",P.Ta);this.Yh=b};k.tn=function(a,b){var c=this.Kf;this.ba(a,null,b,"PPI_CTRL",P.Ta,c);return c};k.Mo=function(a,b,c){this.ba(a,b,c,"PPI_CTRL",P.Ta);this.Kf=b}; +k.Gm=function(a,b){var c=this.Mg;this.ba(a,null,b,"8042_OUTBUFF",P.Ta,c);this.jb&=-258;var d=this.pb&&yi(this.pb,!0);d&&Ci(this,d);return c};k.bo=function(a,b,c){this.ba(a,b,c,"8042_INBUF.DATA",P.Ta);if(this.jb&8)switch(this.vd){case 96:this.Ec=b;this.jb=this.jb&-5|b&4;break;case 209:Di(this,b);break;default:if(this.Ec&=-17,this.pb){a=-1;switch(b){case 255:a=250,Ai(this.pb)}Ci(this,a)}}this.vd=b;this.jb&=-9};k.Hm=function(a,b){var c=this.fc&-193;this.ba(a,null,b,"8042_RWREG",P.Ta,c);this.fc^=16;return c}; +k.co=function(a,b,c){this.ba(a,b,c,"8042_RWREG",P.Ta);zi(this,b)};k.Im=function(a,b){this.ba(a,null,b,"8042_STATUS",P.Ta,this.jb);var c=this.jb&255;this.jb&256&&(this.jb|=1,this.jb&=-257);return c}; +k.ao=function(a,b,c){this.ba(a,b,c,"8042_INBUFF.CMD",P.Ta);this.vd=b;this.jb|=8;a=0;240<=this.vd&&(a=this.vd^15,this.vd=240);switch(this.vd){case 192:Ci(this,this.ue);break;case 173:this.Ec|=16;break;case 174:this.Ec&=-17;break;case 170:this.pb&&Bi(this.pb,!0);this.Ec|=16;Ci(this,85);Di(this,3);break;case 224:Ci(this,this.Ec&16?0:1);break;case 240:a&1&&vc(this.S)}};function Ci(a,b){0<=b&&(a.Mg=b,a.jb&=-2,a.jb|=256)}function Di(a,b){a.Wh=b;Wa(a.na,!!(b&2));b&1||vc(a.S)} +k.Wm=function(a,b){this.ba(a,null,b,"CMOS_ADDR",P.Ta,this.ve);return this.ve};k.ro=function(a,b,c){this.ba(a,b,c,"CMOS_ADDR",P.Ta);this.ve=b;this.Qg=b&128?0:128};k.Xm=function(a,b){var c=this.ve&63,d=13>=c?Mh(this,c):this.pa[c];this.ba(a,null,b,"CMOS_DATA["+p(c)+"]",P.Ta,d);return d}; +k.so=function(a,b,c){var d=this.ve&63;this.ba(a,b,c,"CMOS_DATA["+p(d)+"]",P.Ta);a=this.pa;13>=d&&10>d&&(c=!1,this.pa[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.on=function(a,b){this.ba(a,null,b,"MFG_DATA",P.Ta,this.If);return this.If};k.Go=function(a,b,c){this.ba(a,b,c,"MFG_DATA",P.Ta);this.If=b};k.Io=function(a,b,c){this.ba(a,b,c,"NMI",P.Ta);this.Qg=b}; +k.En=function(a){var b=this.S.G>>8;this.Z&&L(this.Z,this.Z.Ta)&&(this.Z.message("ChipSet.intBIOSRTC(AH="+p(b)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,d){return function(e){d=E(a.S)-d;var f="C="+(Pc(a.S)?1:0),g=a.S.J&255,h=a.S.J>>8,m=a.S.J&255,n=a.S.J>>8;if(2==b||3==b)f+=" CH(hour)="+r(h)+" CL(min)="+p(g)+" DH(sec)="+p(n);else if(4==b||5==b)f+=" CX(year)="+r(a.S.I)+" DH(month)="+p(n)+" DL(day)="+p(m);a.Fa("ChipSet.intBIOSRTC("+e+"): "+f+" (cycles="+d+")")}}(this,E(this.S)))); +return!0};function wh(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;ec||2E4>8&255,this.xb[c++]=f[b]>>16&255,this.xb[c++]=f[b]>>24&255;else this.xb=d;this.Sh=d.symbols;if(!this.xb.length){v("Empty ROM: "+a);return}if(1==this.xb.length){v(this.xb[0]);return}}catch(g){this.Ha("ROM data error: "+ +g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.xb=Array(a.length),d=0;dthis.Kg?21:23,c=a.pa[b]|a.pa[b+1]<<8,c=c+(this.Od>>10);a.pa[b]=c&255;a.pa[b+1]=c>>8;Vh(a)}}else v("No RAM allocated")}; +za(function(){for(var a=A(window.document,"pcjs","ram"),b=0;ba.vc.length){if(!(!d&&!a.Mh[c]||d&&a.Mh[c])){a.Mh[c]=d;a.Ea("scan code "+p(b)+" buffered");a.vc.push(b);1==a.vc.length&&a.ja&&Q(a.ja,1);for(var e in Si)if(Si[e]==c){(c=a.sa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.vc.length&&a.vc.push(255),a.Ea("scan code buffer overflow")}function Xi(a,b){var c=b?a.Jn:a.In;a.S&&a.S.jd&&(c/=a.S.jd);return c} -function Yi(a,b){!a.Je||void 0!==b&&b==a.Je||(clearTimeout(a.pd[a.Je]),Zi(a,a.Je,!1))} -function Ui(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Ml=f);240==f+224?(a.Da&=-2,c&&(a.Da|=1),f+=224,e=!1):241==f+224?(a.Da&=-5,c&&(a.Da|=4),f+=224,e=!1):242==f+224?(a.Da&=-9,c&&(a.Da|=8),f+=224,e=!1):244==f+224?(a.Da&=-17,c&&(a.Da|=16),f+=224,d=Vi(a,f)):91==f?(a.Da&=-33,c&&(a.Da|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.Da&12)&&(f=254),d=c?!Vi(a,f):!1):void 0!==R[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.Da&=-33,a.nk||f!=a.Ml||Yi(a));void 0===d&&(d=!Zi(a,f,c));return d} -function Vi(a,b,c){var d=!1;Yi(a,b);Zi(a,b,!0)&&(c?Zi(a,b,!1):(c=!1,a.pd[b]&&(clearTimeout(a.pd[b]),c=!0),c=Xi(a,c),a.pd[a.Je=b]=setTimeout(function(a){return function(){Zi(a,b,!1)}}(a),c)),d=!0);return d} -function Zi(a,b,c){var d=!1;c||(a.pd[b]=null,a.Je==b&&(a.Je=0));var e=R[b];void 0===e&&1<=b&&26>=b&&(e=R[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.Da&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.Da&17||(d=42):224==f?a.Da&18||(d=54):241==f?a.Da&4||(d=29):242==f&&(a.Da&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;cc.length)c=[!1,0,null,null,0,Array(kj)];this.Z=a.Z;this.type=e[0];this.port=e[1];this.de=b;this.ab=e[2];this.rc=e[3];this.Rc=d||e[4];65536<=this.Rc&&720896<=this.ab&&(this.rc=Math.min(this.Rc>>2,32768));this.kc=c[0];this.wc=c[1];this.We=c[2];this.rf=c[3];this.mc=c[4]&255;this.fh=c[4]>>8&255;this.bc=c[5];this.yi=kj;this.Gg=lj;if(5==b){this.yi=mj;this.Gg=nj;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5), -0,0,0,Array(9),0,this.Rc,Array(this.Rc>>2),771,0,4294967295,0,4294967295,0,4294967295,0]);this.fd=b[0];this.zd=b[1];this.Pd=b[2];this.Oh=oj;this.Gh=b[3];this.Vf=b[4];this.eh=b[5];this.Bd=b[6];this.Af=b[7];this.Qh=pj;this.si=b[8];this.ti=b[9];this.Ad=b[10];this.pe=b[11];this.Ph=qj;this.sb=b[12];d=this.Rc>>2;if((this.cd=b[14])&&this.cd.length>8&255)} -var W=[,,function(a){a+=this.offset;return(this.ha.sb=this.pa[a])>>this.ha.qj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.pa[b]>>8:this.pa[b])&255}];W[16]=function(a){a+=this.offset;a=this.pa[a];for(var b=this.ha.Ai&this.ha.Bi,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};W[512]=function(a,b){var c=a+this.offset,d;d=this.pa[c]&~this.ha.eb|(b|b<<8|b<<16|b<<24)&this.ha.eb;d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -W[1024]=function(a,b){var c=a+this.offset;b=b>>this.ha.kd|b<<8-this.ha.kd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ha.he|this.ha.Ge;d=d&this.ha.eb|this.pa[c]&~this.ha.eb;d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -W[1536]=function(a,b){var c=a+this.offset;b=b>>this.ha.kd|b<<8-this.ha.kd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ha.he|this.ha.Ge;d&=this.ha.sb;d=d&this.ha.eb|this.pa[c]&~this.ha.eb;d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -W[2560]=function(a,b){var c=a+this.offset;b=b>>this.ha.kd|b<<8-this.ha.kd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ha.he|this.ha.Ge;d|=this.ha.sb;d=d&this.ha.eb|this.pa[c]&~this.ha.eb;d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -W[3584]=function(a,b){var c=a+this.offset;b=b>>this.ha.kd|b<<8-this.ha.kd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ha.he|this.ha.Ge;d^=this.ha.sb;d=d&this.ha.eb|this.pa[c]&~this.ha.eb;d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};W[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ha.eb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.pa[d]&~c;c=c&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[d]!=c&&(this.pa[d]=c,this.Za=!0)}; -W[4096]=function(a){a+=this.offset;var b=this.pa[a]&~this.ha.eb|this.ha.sb&this.ha.eb;this.pa[a]!=b&&(this.pa[a]=b,this.Za=!0)};W[8192]=function(a,b){var c=a+this.offset,d=hj[b&15],d=d&this.ha.eb|this.pa[c]&~this.ha.eb,d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};W[24576]=function(a,b){var c=a+this.offset,d=hj[b&15],d=d&this.ha.sb,d=d&this.ha.eb|this.pa[c]&~this.ha.eb,d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -W[40960]=function(a,b){var c=a+this.offset,d=hj[b&15],d=d|this.ha.sb,d=d&this.ha.eb|this.pa[c]&~this.ha.eb,d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};W[57344]=function(a,b){var c=a+this.offset,d=hj[b&15],d=d^this.ha.sb,d=d&this.ha.eb|this.pa[c]&~this.ha.eb,d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -function tj(a){var b=[];if(void 0!==a.de){b[0]=a.kc;b[1]=a.wc;b[2]=a.We;b[3]=a.rf;b[4]=a.mc|a.fh<<8;b[5]=a.bc;if(5==a.de){var c=[];c[0]=a.fd;c[1]=a.zd;c[2]=a.Pd;c[3]=a.Gh;c[4]=a.Vf;c[5]=a.eh;c[6]=a.Bd;c[7]=a.Af;c[8]=a.si;c[9]=a.ti;c[10]=a.Ad;c[11]=a.pe;c[12]=a.sb;c[13]=a.Rc;var d;a:if(d=a.cd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h>1;f[e++]=m;h=n}if(f.lengtha&&(a=0);for(var c="",d=0;8>d;d++){for(var n=l(b.ab+a)+":",r=0;8>r&&a>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),hb(this.ma,b,c|d<<8);Ab(this,!0)}};function Bj(a){a.ka.Vf&1?(a.Qc=a.Wh,a.wb=a.ka):(a.Qc=a.ka,a.wb=a.Sg)}k.save=function(){var a=new H(this);a.set(0,tj(this.Wh));a.set(1,tj(this.Sg));a.set(2,[this.fe,this.ld,this.Hd]);a.set(3,tj(this.ka));return a.data()}; -k.restore=function(a){var b=a[2];this.fe=b[0];this.ld=b[1];this.Hd=b[2];this.Aa=null;this.Qc=this.Wh=new ij(this,1,a[0]);this.wb=this.Sg=new ij(this,3,a[1]);this.ka=new ij(this,5,a[3],this.Rc);this.ka.kc&&Bj(this);Cj(this);if(!Ej(this))return!1;Fj(this);return!0}; -k.Tn=function(a,b,c){if(c)B(this,"Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){this.error("Empty font ROM image: "+a);return}if(1==d.length){this.error(d[0]);return}if(8192==d.length)Li(this,d,[0,6144]);else{B(this,"Unrecognized font data length ("+d.length+")");return}}catch(e){B(this,"Font ROM data error: "+e.message);return}this.Oa()}}; -function Gj(a,b){if(1==b)return a.sd[0]=U[0],a.sd[1]=U[7],a.sd;if(2==b){var c=a.Aa.We;if(a.Aa===a.ka){var d=a.ka.Pd[0],c=d&7;d&16&&(c|=8);18!=a.ka.Pd[1]&&(c|=32)}a.sd[0]=U[c&15];c=c&32?fj:ej;for(d=0;dtb||!ka?tb:8,Ud=Oi.createImageData(n.ic,n.jc),Ha=0;256>Ha;Ha++){for(fb= -0;fb=tb-2,kl=Mc[fb>(8<=Ib&&176<=Ha&&223>=Ha?7:Ib)?t:Td;Jj(Ud,Pi,Qi,Ri);A&&Jj(Ud,Pi+1,Qi,Ri)}Oi.putImageData(Ud,(Ha&15)*n.ic,(Ha>>4)*n.jc)}n.Qe[v]="#"+p(t[0])+p(t[1])+p(t[2]);n.Qj[v]=t;n.Jh[v]=Nc;n=!0}}a.Rd[b]=u;return n}function Kj(a){0a.ye&&(a.ye=0):a.ye=-1} -function Fj(a){if(a.Sb){for(var b=10;15>=b;b++)if(null==a.Aa.bc[b])return;var c=a.Aa.bc[10],b=c&31,d=a.Aa.bc[11]&31,e=a.Aa.bc[9]&31,f=!1;a.Aa===a.ka&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Lj(a);else{c=a.Aa.bc[15]+((a.Aa.bc[14]&63)<<8);a.Jc!=c&&(Lj(a),a.Jc=c);d=d-b+1;if(a.bm!=b||a.ik!=d)a.bm=b,a.ik=d;a.ae=e+1;Kj(a)}}} -function Lj(a){if(0<=a.Jc){if(void 0!==a.cc){var b=a.cc[a.Jc];if(b&131072){var b=b&-131073,c=a.Jc%a.zb,d=Math.floor(a.Jc/a.zb);a.Sb&&a.Rd[a.Sb]&&(a.Xe&&Mj(a,c,d,b,a.Xe),Mj(a,c,d,b));a.cc[a.Jc]=b}}a.Jc=-1}} -function Nj(a){var b;a=a.Aa;var c=a.pe[5];if(null!=c){b=2;var d=512,e=a.pe[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.kd=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.le=function(a){var b=this.Aa;null!=a&&b&&a!=b.mh&&(b.Dh(a),this.ma.Dh(b.ab,b.rc,b.Df))}; -function Ej(a,b){var c,d=a.Hd,e=a.Aa;if(e)if(1==e.de)d=$i;else if(5==e.de){var d=null,f=e.Rc>>2,g=32768f&&(d=c?13:14):c&&(d-=2));c=Nj(a)}}else e.wc&8&&(e.wc&2?(d=e.wc&16?6:5,e.wc&4||(d-=1)):(d=e.wc&1?3:1,e.wc&4&&(d-= -1)));else a.Hd=null,null==d&&(d=a.ld);if(!Dj(a,d,b))return!1;a.le(c);return!0} -function Dj(a,b,c){if(null!=b&&(b!=a.Hd||c)){a.lm=0;a.Hd=b;b=a.Aa||(b==$i?a.Qc:a.wb);if(b!=a.Aa||b.ab!=a.ab||b.rc!=a.rc){Lj(a);if(a.ab){if(!cb(a.ma,a.ab,a.rc))return!1;a.Aa&&(a.Aa.kc=!1)}a.Aa=b;b.kc=!0;a.ab=b.ab;a.rc=b.rc;if(!ab(a.ma,b.ab,b.rc,!1,b===a.ka?b:null))return!1}a.Sb=0;a.zb=a.ph;a.pc=a.Ei;a.zi=T[$i][2];b=0;var d=T[a.Hd];d&&(a.zb=d[0],a.pc=d[1],a.zi=d[2],b=d[3]||0,a.Sb=d[4],4==a.fe&&a.Aa===a.ka&&3==a.Sb&&(7==a.ka.bc[9]?a.pc=43:a.Sb=5));a.Dk=a.zb*a.pc;a.oh=a.Dk/a.zi;a.Xh=(a.oh<<1)+b;a.fk= -b?a.Xh+b>>1:0;13<=a.Hd&&(a.oh<<=1);a.Rd.length&&(a.wd=Math.floor(a.vd/a.zb),a.xd=Math.floor(a.be/a.pc),a.Sb?(b=a.Rd[a.Sb],d=a.Rd[a.Sb<<1],a.sm&&80==a.zb?d&&a.wd>=3*d.ic>>2&&(a.Sb<<=1,b=d):(d&&a.wd>=d.ic&&(a.Sb<<=1,b=d),b&&(a.wd=b.ic,a.xd=b.jc)),a.Pf=a.Qf=0,b&&(a.Pf=a.zb*b.ic,a.Qf=a.pc*b.jc)):(a.wd=a.xd=1,a.Pf=a.zb,a.Qf=a.pc),a.ih=a.Tc.createImageData(a.Pf,a.Qf),a.Ve=window.document.createElement("canvas"),a.Ve.width=a.Pf,a.Ve.height=a.Qf,a.Xe=a.Ve.getContext("2d"),a.Ij=a.Jj=0,a.Zh=a.vd,a.$h=a.be, -b=a.vd-a.zb*a.wd,d=a.be-a.pc*a.xd,0>1,a.Zh-=b),0>1,a.$h-=d),b||d)&&(a.Tc.fillStyle=a.Kb.style.backgroundColor,a.Tc.fillRect(0,0,a.vd,a.be));!1!==c?Ab(a,!0):Oj(a,!0)}return!0}function Jj(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Oj(a,b){var c;if(b){if(c=a.oh,void 0===a.cc||a.cc.length!=c)a.cc=Array(c)}else{if(void 0===a.cc)return;c=a.cc.length}for(var d=0;d>8;d=g&15;var h=a.Rd[a.Sb];h.yf&&(d=h.yf[d]);var m=g>>4&15;h.yf&&(m=h.yf[m]);e?(b*=h.ic,c*=h.jc,e.fillStyle=h.Qe[m],e.fillRect(b,c,h.ic,h.jc)):(b=b*a.wd+a.Ij,c=c*a.xd+a.Jj,a.Tc.fillStyle=h.Qe[m],a.Tc.fillRect(b,c,a.wd,a.xd));g&256&&(m=(f&15)*h.ic,f=(f>>4)*h.jc,e?e.drawImage(h.Jh[d],m,f,h.ic,h.jc,b,c,h.ic,h.jc):a.Tc.drawImage(h.Jh[d],m,f,h.ic,h.jc,b,c,a.wd,a.xd));g&512&&(f=a.bm,g=a.ik,e?(a.ae&&a.ae!==h.jc&&(f=Math.floor(f*h.jc/a.ae),g=Math.floor(g*h.jc/a.ae)), -e.fillStyle=h.Qe[d],e.fillRect(b,c+f,h.ic,g)):(a.ae&&a.ae!==a.xd&&(f=Math.floor(f*a.xd/a.ae),g=Math.floor(g*a.xd/a.ae)),a.Tc.fillStyle=h.Qe[d],a.Tc.fillRect(b,c+f,a.wd,g)))} -function Ab(a,b){if(a.Lb){var c=!1;a.Aa&&(a.Aa===a.ka?a.ka.zd&32&&(c=!0):a.Aa.wc&8&&(c=!0));if(c||b){if(b)Oj(a,!0);else if(void 0===a.cc)return;var d=!1;!(b||++a.lm&15)&&0<=a.ye&&(a.ye++,d=!0);var e=0,f=a.Dk,c=a.Aa.ab,g=c+a.Aa.rc,h=(a.Aa.bc[12]<<8)+a.Aa.bc[13];a.Sb&&(h<<=1);var c=c+h,m=a.Xh;c+m>g&&(m=g-c,0>m&&(m=0));g=c+m;if(h=!b){for(var h=a.ma,n=!0,r=c>>h.mb;0a.Jc)return;e=a.Jc;f=e+1}}if(a.Sb){if(a.Rd[a.Sb]){d= -0;h=a.xe=0;m=1048575;a.Aa.wc&32&&(h=32768,m&=~h,a.ye&2||(m&=-65537));for(c+=e<<1;c>8| -(u&255)<<8;t=h;var tb=16;r>=m))>>(tb-=m);Jj(a.ih,r++,v,n[Td])}r>D&&(D=r);v=la&&(la=v+1)}e+=2;g++;if(r>=a.zb){r=0;v+=2;if(v>a.pc)break;v==a.pc&&(v=1,e=c+a.fk)}}Aka;ka++)la=D&2155905152, -0>la&&(la=-la),la=V[la]||0,Jj(a.ih,h++,m,g[la]),D<<=1;h>r&&(r=h);m=A&&(A=m+1)}e++;if(h>=a.zb&&(h=0,++m>a.pc))break}n>2),c=this.ka.Gh&-17|(this.Ig&1<f&&(f=0);f%b.Ci>b.Mn&&(d|=1);f%=b.Gk;f>b.Pn&&(d|=8);b.Hi=e-f;b===a.ka?(d|=b.rf&48^48,b.fd=!1):d=(b.rf^=9)|240;b.rf=d;a.ba(b.port+6,null,c,b===a.ka?"STATUS1":"STATUS",d);return d}k.Ea=function(a,b){this.Z&&(b||L(this.Z,this.Z.zg))&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.zg,e)}; -var vj={948:S.prototype.gn,949:S.prototype.fn,952:S.prototype.hn,954:S.prototype.jn,980:S.prototype.Pm,981:S.prototype.Om,984:S.prototype.Qm,985:S.prototype.Nm,986:S.prototype.Rm},wj={948:S.prototype.Ao,949:S.prototype.zo,952:S.prototype.Bo,980:S.prototype.lo,981:S.prototype.ko,984:S.prototype.mo,985:S.prototype.jo},xj={960:S.prototype.zk,961:S.prototype.zk,962:S.prototype.tn,964:S.prototype.sn,965:S.prototype.rn,970:S.prototype.$m,972:S.prototype.Zm,974:S.prototype.Ym,975:S.prototype.Xm},yj={954:S.prototype.Kl, -960:S.prototype.Jl,961:S.prototype.Jl,962:S.prototype.Do,964:S.prototype.Ko,965:S.prototype.Jo,970:S.prototype.vo,972:S.prototype.uo,974:S.prototype.to,975:S.prototype.so,986:S.prototype.Kl}; -Aa(function(){for(var a=y(window.document,"pcjs","video"),b=0;bMissing <canvas> support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; -e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new S(d,e,f);Qa(d,c)}}); -function X(a){this.wk=a.adapter;switch(this.wk){case 1:this.xj=1016;this.dg=4;break;case 2:this.xj=760;this.dg=3;break;default:ra("Unrecognized serial adapter #"+this.wk);return}this.Zd=null;s.call(this,"SerialPort",a,X);var b=a.binding,c;a=Uj;b&&(void 0===c&&(c="Panel"),(c=Pa(c,this.id))&&(b=c.sa[b])&&this.tb(null,null,a,b))}w(s,X);var Uj="buffer";k=X.prototype;k.Uj=function(a,b){return a==this.gh?(this.Ak=b,this):null}; -k.tb=function(a,b,c,d){var e=this;switch(c){case Uj:return this.sa[c]=this.Zd=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Vj(e,[b]))},d.onkeypress=function(a){a=a||window.event;Vj(e,[a.which||a.keyCode])},!0}return!1};k.nc=function(a,b,c,d){this.ma=b;this.S=c;this.Z=d;this.ja=C(a,"ChipSet");d&&Mh(d,X);jb(b,this,Wj,this.xj);mb(b,this,Xj,this.xj);this.Oa()}; -k.$b=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ee()};k.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.Uh;c[b++]=this.Zj;c[b++]=this.Ne;c[b++]=this.Jg;c[b++]=this.Vd;c[b++]=this.Pc;c[b++]=this.dd;c[b++]=this.Ec;c[b++]=this.Xj;c[b]=this.Cf;a.set(0,c);return a.data()};k.restore=function(a){return this.ee(a[0])}; -k.ee=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.Uh=a[b++];this.Zj=a[b++];this.Ne=a[b++];this.Jg=a[b++];this.Vd=a[b++];this.Pc=a[b++];this.dd=a[b++];this.Ec=a[b++];this.Xj=a[b++];this.Cf=a[b];return!0};function Vj(a,b){a.Cf=a.Cf.concat(b);Yj(a)}function Yj(a){0>8:this.Jg;this.ba(a,null,b,this.Pc&128?"DLM":"IER",c);return c};k.bn=function(a,b){var c=this.Vd;this.ba(a,null,b,"IIR",c);return c};k.cn=function(a,b){var c=this.Pc;this.ba(a,null,b,"LCR",c);return c};k.en=function(a,b){var c=this.dd;this.ba(a,null,b,"MCR",c);return c}; -k.dn=function(a,b){var c=this.Ec;this.ba(a,null,b,"LSR",c);return c};k.ln=function(a,b){var c=this.Xj;this.ba(a,null,b,"MSR",c);return c};k.Lo=function(a,b,c){this.ba(a,b,c,this.Pc&128?"DLL":"THR");this.Pc&128?this.Ne=this.Ne&-256|b:(this.Zj=b,this.Ec&=-97,this.Zd?(13!=b&&(8==b?this.Zd.value=this.Zd.value.slice(0,-1):(this.Zd.value+=String.fromCharCode(b),this.Zd.scrollTop=this.Zd.scrollHeight)),a=!0):a=!1,a&&(this.Ec|=96))}; -k.wo=function(a,b,c){this.ba(a,b,c,this.Pc&128?"DLM":"IER");this.Pc&128?this.Ne=this.Ne&255|b<<8:this.Jg=b};k.xo=function(a,b,c){this.ba(a,b,c,"LCR");this.Pc=b}; -k.yo=function(a,b,c){var d=this.dd;this.ba(a,b,c,"MCR");this.dd=b;this.Ak&&(d^b)&3&&(a=this.Ak,b=this.dd,(c=3==(b&3))?a.kc||(d=!1,a.dd&2||(a.reset(),a.Ea("serial mouse reset"),d=!0),a.dd&1||(a.Ea("serial mouse ID requested"),d=!0),d&&(Vj(a.Mf,[77]),a.Ea("serial mouse ID sent")),Zj(a,a.Kb),a.kc=c):a.kc&&(a.Ea("serial mouse inactive"),ak(a.Kb),a.kc=c),a.dd=b)};k.Ea=function(a){this.Z&&L(this.Z,this.Z.Nj)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Nj,e)}; -var Wj={0:X.prototype.qn,1:X.prototype.an,2:X.prototype.bn,3:X.prototype.cn,4:X.prototype.en,5:X.prototype.dn,6:X.prototype.ln},Xj={0:X.prototype.Lo,1:X.prototype.wo,3:X.prototype.xo,4:X.prototype.yo};Aa(function(){for(var a=y(window.document,"pcjs","serial"),b=0;ba.vg||0>a.wg)a.vg=b.clientX,a.wg=b.clientY;a.uf=b.clientX-a.vg;a.vf=b.clientY-a.wg;(a.uf||a.vf)&&ck(a,null,b.clientX,b.clientY);a.vg=b.clientX;a.wg=b.clientY}},!1),b.addEventListener("mousedown",function(b){dk(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){dk(a,b.button,!1)},!1),a.hi=!0),b.style.cursor="none")}function ak(a){a&&(a.style.cursor="auto")} -function dk(a,b,c){if(a.kc&&a.S&&a.S.Mb)switch(b){case 0:a.Yg!=c&&(a.Yg=c,ck(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.Zg!=c&&(a.Zg=c,ck(a,"mouse button2 "+(c?"dn":"up")))}}function ck(a,b,c,d){var e=64|(a.Yg?32:0)|(a.Zg?16:0)|(a.vf&192)>>4|(a.uf&192)>>6,f=a.uf&63,g=a.vf&63;a.Ea((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+p(e)+","+p(f)+","+p(g)+"]");Vj(a.Mf,[e,f,g]);a.uf=a.vf=0}k.Ea=function(a){this.Z&&L(this.Z,this.Z.hm)&&this.Z.message(a)}; -Aa(function(){for(var a=y(window.document,"pcjs","mouse"),b=0;bb.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.xc+":"+this.yc+":"+this.md+":"+this.Rb,a+="&machine="+this.ha.cf(),a+="&user="+this.ha.ce(),d=qa()+"/api/v1/disk?"+a,this.ni=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"): --1!==b.indexOf("/",b.length-1)&&(c="dir"),d=qa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.af?"":d)+"&format=json"));pa(d,!0,null,this,this.Qn,b)}; -k.Qn=function(a,b,c,d){var e=null;this.bf=!1;var f=0>c&&this.Ca&&!this.Ca.Lb;if(this.ni)c?B(this,'Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.yd=!0,e=this);else if(c)B(this,'Unable to load disk "'+this.Id+'" (error '+c+")",f);else try{if(0g&&0b.indexOf("0x")&&'["'!= -b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)this.error(h[0]);else{for(b=a=0;b>2,r=m.pattern;void 0===r&&(r=m.pattern=0);var u=m.data;if(void 0===u){var t=m.bytes;if(void 0!==t&&t.length){for(var f=n<<2,v=t.length;vb&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function nk(a,b){var c=-1;if(b>2,c=(d>((b&3)<<3)&255;return c} -k.write=function(a,b,c){if(this.bf)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Fc?f=a.Vc+a.Fc&&(a.Fc+=f-(a.Vc+a.Fc)+1):(a.Vc=f,a.Fc=1);d[f]=d[f]&~(255<=this.fb.length||m>=this.fb[h].length||n>=this.fb[h][m].length){c="sector "+h+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.bf){c="unable to modify write-protected disk";b=-1;break}e= -g[f++];f=g[f++];g=e+f.length;h=this.fb[h][m][n];for(m=h.data.length;mb&&B(this,"unable to restore disk '"+this.Id+": "+c);return b};k.Ea=function(a){this.Z&&L(this.Z,this.Z.em)&&this.Z.message(a)}; -function ok(a){s.call(this,"FDC",a,ok);this.dmaRead=this.bi;this.dmaWrite=this.ci;this.dmaFormat=this.mm;this.Ie=null;if(a.autoMount&&(this.Ie=a.autoMount,"string"==typeof this.Ie))try{this.Ie=eval("("+a.autoMount+")")}catch(b){this.error("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Ie=null}this.sc=[];this.Cd();this.Ef()||this.Oa()}w(s,ok); -var pk={3:{Yd:3,Ae:0,name:"SPECIFY"},4:{Yd:2,Ae:1,name:"DRIVE_STATUS"},5:{Yd:9,Ae:7,name:"WRITE_DATA"},6:{Yd:9,Ae:7,name:"READ_DATA"},7:{Yd:2,Ae:0,name:"RECALIBRATE"},8:{Yd:1,Ae:2,name:"INT_STATUS"},13:{Yd:6,Ae:7,name:"FORMAT"},15:{Yd:3,Ae:0,name:"SEEK"}};k=ok.prototype; -k.tb=function(a,b,c,d){switch(c){case "listDisks":return this.sa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.sa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){a.error("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d=''+d+""); -c.innerHTML=d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.sa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||qk(a,c)}}(this,d),!0;case "loadDrive":return this.sa[c]=d,d.onclick=function(a){return function(){var b,c=a.sa.listDisks,d=a.sa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&ba.ua.restore(f)&&(e=!1);e&&a.ua&&void 0!==a.Sa&&(a.Na=a.ua.seek(a.vb,a.hb,a.Qa));return e};k.Ej=function(){for(var a=0,b=[],c=0;ca.xc&&(B(this,'Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.yb)),b=null);b&&(a.ua=b,a.Tl=c,a.Le=d,xk(this,c,d,b),this.ke|=128,B(this,'Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.yb),a.De));a.De&&(a.De=!1,--this.we||this.Oa());qk(this,a.yb)}; -function qk(a,b){if(0<=b&&b=this.Va&&(this.ya&=-81,this.kb=this.Va=0);return c}; -k.qo=function(a,b,c){this.ba(a,b,c,"DATA["+this.Va+"]");this.Va=pk[a].Yd){b=!1;this.kb=0;var d;a=this.La()&31;switch(a){case 3:this.La("SRT");this.La("HLT");this.Jb();break;case 4:c=this.La("DS");this.yb=c&3;d=this.xa[this.yb];this.Jb();this.pb((d.Wa&4278190080)>>>24,"ST3");break;case 5:case 6:c=this.La("DS");this.yb=c&3;d=this.xa[this.yb];d.hb=c>>2&1;d.vb=this.La("C");this.La("H");d.Qa=this.La("R");b=this.La("N"); -d.Ta=128<>>8,"ST1");this.pb((d.Wa&16711680)>>>16,"ST2");this.pb(d.vb,"C");this.pb(d.hb,"H");this.pb(d.Qa,"R");this.pb(b,"N");b=!0;break;case 7:c=this.La("DS");this.yb=c&3;d=this.xa[this.yb];d.vb=d.Ud=0;d.Wa=268435488;this.Jb();b=!0;break;case 8:d=this.xa[this.yb];d.hb=0;this.Jb();yk(this,d);this.pb(d.vb,"PCN");break;case 13:c=this.La("DS");this.yb=c&3;d=this.xa[this.yb];d.hb=c>> -2&1;b=this.La("N");d.Ta=128<>>8,"ST1");this.pb((d.Wa&16711680)>>>16,"ST2");this.pb(d.vb,"C");this.pb(d.hb,"H");this.pb(d.Qa,"R");this.pb(b,"N");b=!0;break;case 15:c=this.La("DS"),this.yb=c&3,d=this.xa[this.yb],d.hb=c>>2&1,a=this.La("NCN"),d.vb+=a-d.Ud,0>d.vb&&(d.vb=0),d.vb>=d.xc&&(d.vb=d.xc-1),d.Ud=a,d.Wa=32,0==d.vb&&(d.Wa|=268435456),this.Jb(),b=!0}0b?this.qc(a,c):c(-1,!1)};k.ci=function(a,b){return void 0!==b&&0<=b?this.Ac(a,b):-1}; -k.mm=function(a,b){return void 0!==b&&0<=b?this.Gj(a,b):-1};k.di=function(a){a.Wa=72;a.ua&&(a.Na=null,a.Wa=0,this.ja&&(pi(this.ja,2,this,"dmaRead",a),ji(this.ja,2)))};k.ei=function(a){a.Wa=72;a.ua&&(a.ua.bf?a.Wa=576:(a.Na=null,a.Wa=0,this.ja&&(pi(this.ja,2,this,"dmaWrite",a),ji(this.ja,2))))};k.jk=function(a){a.Wa=72;a.ua&&(a.Na=null,a.Wa=0,this.ja&&(a.ze=0,a.uc=Array(4),a.Ff=!0,a.Lf=0,pi(this.ja,2,this,"dmaFormat",a),ji(this.ja,2),a.Ff=!1))}; -k.qc=function(a,b){var c=-1;if(!a.Wa&&a.ua){do{if(a.Na&&0<=(c=nk(a.Na,a.Sa++)))break;a.Na=a.ua.seek(a.vb,a.hb,a.Qa);if(!a.Na){a.Wa=1088;break}a.Sa=0;a.Qa++}while(1)}b(c,!1)};k.Ac=function(a,b){if(a.Wa||!a.ua)return-1;do{if(a.Na&&a.ua.write(a.Na,a.Sa++,b))break;a.Na=a.ua.seek(a.vb,a.hb,a.Qa);if(!a.Na){a.Wa=8256;b=-1;break}a.Sa=0;a.Qa++}while(1);return b}; -k.Gj=function(a,b){if(a.Wa)return-1;a.uc[a.ze++]=b;if(a.ze==a.uc.length){a.vb=a.uc[0];a.hb=a.uc[1];a.Qa=a.uc[2];a.Ta=128<this.Ac(a,a.Vj))return-1;a.Lf++}a.Lf>=a.Wd&&(b=-1);return b}; -k.xi=function(a){var b=this.S.G&255,c=this.S.G>>8,d=this.S.I&255,e=this.S.I>>8,f=this.S.J&255,g=this.S.J>>8;this.Z&&L(this.Z,this.Z.xg)&&128>f&&(this.Z.message("FDC.intBIOS(AH="+p(c)+",D="+p(f)+",C="+p(e)+",H="+p(g)+",S="+p(d)+",N="+p(b)+") at "+ca(a-this.S.qa.Ja,this.S.qa.na)),Ec(this.S,a,function(a,b){return function(c){b=F(a.S)-b;a.Ea("FDC.intBIOS("+c+"): C="+(Sc(a.S)?1:0)+" (cycles="+b+")")}}(this,F(this.S))));return!0};k.Ea=function(a){this.Z&&L(this.Z,this.Z.xg)&&this.Z.message(a)}; -k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.xg,e)};var tk={1012:ok.prototype.Wm,1013:ok.prototype.Um,1015:ok.prototype.Vm},uk={1010:ok.prototype.ro,1013:ok.prototype.qo,1015:ok.prototype.po};Aa(function(){for(var a=y(window.document,"pcjs","fdc"),b=0;b=e&&(this.nf|=(f.type&3)<<(1-e<<1))}return d}; -k.Cj=function(){var a=0,b=[];this.Ce?(b[a++]=this.je,b[a++]=this.Sl,b[a++]=this.Ah,b[a++]=this.Bh,b[a++]=this.zh,b[a++]=this.yh,b[a++]=this.mg,b[a++]=this.ya,b[a++]=this.zj):(b[a++]=this.nf,b[a++]=this.ya,b[a++]=this.ac,b[a++]=this.kb,b[a++]=this.Va,b[a++]=this.Rl,b[a++]=this.Ql,b[a++]=this.Pl,b[a++]=this.df);b[a]=this.Ej();return b}; -k.vi=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.yb=a;b.errorCode=d[f++];b.Yl=d[f++];b.af=d[f++];b.Re=d[f++];b.Se=d[f++];b.hb=d[f++];b.yc=d[f++];b.Od=d[f++];b.Qa=d[f++];b.Wd=d[f++];b.Ta=d[f++];b.Og=this.Ce?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.ce()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===zk[this.Uf][b.type])b.type=this.zm;c=zk[this.Uf][b.type]; -b.md=c[2]||17;b.Rb=c[3]||512;if(e&&this.ja&&(e=this.ja,c=b.type,e.oa)){var h=e.oa[18],h=a?h&240|c:h&15|c<<4;e.oa&&(e.oa[18]=h,Yh(e))}void 0===b.ua&&(b.ua=null,B(this,"Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Ek(this,b);b.Sa=d[f++];b.Na=null;b.ua&&(a=d[f],void 0!==a&&0>b.ua.restore(a)&&(g=!1),g&&void 0!==b.Sa&&(b.Na=b.ua.seek(b.Od,b.hb,b.Qa+b.Og)));return g};k.Ej=function(){for(var a=0,b=[],c=0;c=this.Va&&(this.kb=this.Va=0,this.ya&=-15);return c}; -k.No=function(a,b,c){this.ba(a,b,c,"DATA["+this.Va+"]");this.Va=a&&(this.ya|=2,this.ya&=-2,Fk(this))};k.xn=function(a,b){var c=this.ya;this.ba(a,null,b,"STATUS",c);this.kb=this.Ka.Rb){var e=this;this.qc(this.Ka,function(a){0<=a?e.ja&&Q(e.ja,14):(e.ya=1,e.je=16)},!1)}else this.ya=80;d||this.ba(a,null,b,"DATA",c);return c}; -k.co=function(a,b,c){this.Ka&&0!=this.Ka.Sa||this.ba(a,b,c,"DATA");this.Ka&&this.Ka.Ta>=this.Ka.Rb&&(0>this.Ac(this.Ka,b)?(this.ya=1,this.je=16):this.Ka.Sa==this.Ka.Rb&&(this.Ka.Ta-=this.Ka.Rb,this.ja&&Q(this.ja,14),this.Ka.Ta>=this.Ka.Rb||(this.ya=80)))};k.Jm=function(a,b){var c=this.je;this.ba(a,null,b,"ERROR",c);return c};k.io=function(a,b,c){this.ba(a,b,c,"WPREC");this.Sl=b};k.Km=function(a,b){var c=this.Ah;this.ba(a,null,b,"SECCNT",c);return c}; -k.fo=function(a,b,c){this.ba(a,b,c,"SECCNT");this.Ah=b};k.Lm=function(a,b){var c=this.Bh;this.ba(a,null,b,"SECNUM",c);return c};k.ho=function(a,b,c){this.ba(a,b,c,"SECNUM");this.Bh=b};k.Gm=function(a,b){var c=this.zh;this.ba(a,null,b,"CYLLO",c);return c};k.bo=function(a,b,c){this.ba(a,b,c,"CYLLO");this.zh=b};k.Fm=function(a,b){var c=this.yh;this.ba(a,null,b,"CYLHI",c);return c};k.ao=function(a,b,c){this.ba(a,b,c,"CYLHI");this.yh=b};k.Im=function(a,b){var c=this.mg;this.ba(a,null,b,"DRVHD",c);return c}; -k.eo=function(a,b,c){this.ba(a,b,c,"DRVHD");this.mg=b};k.Mm=function(a,b){var c=this.ya;this.ba(a,null,b,"STATUS",c);return c};k.$n=function(a,b,c){this.ba(a,b,c,"COMMAND");this.zj=b;this.ja&&wi(this.ja,14);Gk(this)}; -function Gk(a){var b=!1,c=a.zj,d=a.mg&16?1:0,e=a.mg&15,f=a.zh|(a.yh&3)<<8,g=a.Bh,h=a.Ah;a.Ka=null;a.je=0;a.ya=80;(d=a.xa[d])?(d.Od=f,d.hb=e,d.Qa=g,d.Ta=h*d.Rb,c=144<=c?c:c&240,d.Na=null,d.errorCode=0,a.Ka=d):c=-1;switch(c&240){case 32:a.qc(d,function(b){0<=b&&a.ja?(Q(a.ja,14),a.ya=136):(a.ya=1,a.je=16)},!1);break;case 48:a.ja?(Q(a.ja,14),a.ya=136):(a.ya=1,a.je=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.je=1;b=!0;break;case 145:d.yc=e+1,d.md=h,b=!0}b&&a.ja&&Q(a.ja,14)} -function Fk(a){a.kb=0;var b=a.La(),c=a.La(),d=c&32,e=d>>5,f=c&31,g=a.La(),h=a.La(),m=g<<2&768|h,n=g&63,r=a.La(),u=a.La(),t=a.xa[e];t&&(t.Od=m,t.hb=f,t.Qa=n,t.Ta=r*t.Rb);switch(b){case 3:a.Jb(t?t.errorCode:4);a.pb(c);a.pb(g);a.pb(h);a.pb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.La());)t&&cb?this.qc(a,c):c(-1,!1)}; -k.ci=function(a,b){return void 0!==b&&0<=b?this.Ac(a,b):-1};k.nm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Sa=a.md+b&&(a.Qa=b,a.Wj++,a.Wj>=a.yc&&(a.Wj=0,a.Od++))}k.Gj=function(a,b){if(a.errorCode)return-1;a.uc[a.ze++]=b;if(a.ze==a.uc.length){a.Od=a.uc[0];a.hb=a.uc[1];a.Qa=a.uc[2];a.Ta=128<this.Ac(a,a.Vj))return-1;a.Lf++}a.Lf>=a.Wd&&(b=-1);return b}; -k.zn=function(a){var b=this.S.J&255;!(this.S.G>>8)&&128>8)||(a=!this.ja)||(a=!(this.ja.qb[0].ud&64));return a?!0:!1}; -k.Ea=function(a){this.Z&&L(this.Z,this.Z.Ih)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Ih,e)}; -var Bk={800:Y.prototype.wn,801:Y.prototype.xn,802:Y.prototype.vn},Ak={496:Y.prototype.Hm,497:Y.prototype.Jm,498:Y.prototype.Km,499:Y.prototype.Lm,500:Y.prototype.Gm,501:Y.prototype.Fm,502:Y.prototype.Im,503:Y.prototype.Mm},Dk={800:Y.prototype.No,801:Y.prototype.Qo,802:Y.prototype.Po,803:Y.prototype.Oo,807:Y.prototype.uj,811:Y.prototype.uj,815:Y.prototype.uj},Ck={496:Y.prototype.co,497:Y.prototype.io,498:Y.prototype.fo,499:Y.prototype.ho,500:Y.prototype.bo,501:Y.prototype.ao,502:Y.prototype.eo,503:Y.prototype.$n}; -Aa(function(){for(var a=y(window.document,"pcjs","hdc"),b=0;ba.yc.length){if(!(!d&&!a.Rh[c]||d&&a.Rh[c])){a.Rh[c]=d;a.Fa("scan code "+p(b)+" buffered");a.yc.push(b);1==a.yc.length&&a.ka&&Q(a.ka,1);for(var e in Pi)if(Pi[e]==c){(c=a.ta["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.yc.length&&a.yc.push(255),a.Fa("scan code buffer overflow")}function Ui(a,b){var c=b?a.Nn:a.Mn;a.S&&a.S.md&&(c/=a.S.md);return c} +function Vi(a,b){!a.Le||void 0!==b&&b==a.Le||(clearTimeout(a.rd[a.Le]),Wi(a,a.Le,!1))} +function Ri(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Ql=f);240==f+224?(a.Ea&=-2,c&&(a.Ea|=1),f+=224,e=!1):241==f+224?(a.Ea&=-5,c&&(a.Ea|=4),f+=224,e=!1):242==f+224?(a.Ea&=-9,c&&(a.Ea|=8),f+=224,e=!1):244==f+224?(a.Ea&=-17,c&&(a.Ea|=16),f+=224,d=Si(a,f)):91==f?(a.Ea&=-33,c&&(a.Ea|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.Ea&12)&&(f=254),d=c?!Si(a,f):!1):void 0!==R[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.Ea&=-33,a.rk||f!=a.Ql||Vi(a));void 0===d&&(d=!Wi(a,f,c));return d} +function Si(a,b,c){var d=!1;Vi(a,b);Wi(a,b,!0)&&(c?Wi(a,b,!1):(c=!1,a.rd[b]&&(clearTimeout(a.rd[b]),c=!0),c=Ui(a,c),a.rd[a.Le=b]=setTimeout(function(a){return function(){Wi(a,b,!1)}}(a),c)),d=!0);return d} +function Wi(a,b,c){var d=!1;c||(a.rd[b]=null,a.Le==b&&(a.Le=0));var e=R[b];void 0===e&&1<=b&&26>=b&&(e=R[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.Ea&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.Ea&17||(d=42):224==f?a.Ea&18||(d=54):241==f?a.Ea&4||(d=29):242==f&&(a.Ea&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;cc.length)c=[!1,0,null,null,0,Array(hj)];this.Z=a.Z;this.type=e[0];this.port=e[1];this.fe=b;this.eb=e[2];this.uc=e[3];this.Tc=d||e[4];65536<=this.Tc&&720896<=this.eb&&(this.uc=Math.min(this.Tc>>2,32768));this.mc=c[0];this.zc=c[1];this.Ye=c[2];this.tf=c[3];this.oc=c[4]&255;this.kh=c[4]>>8&255;this.dc=c[5];this.Di=hj;this.Lg=ij;if(5==b){this.Di=jj;this.Lg=kj;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5), +0,0,0,Array(9),0,this.Tc,Array(this.Tc>>2),771,0,4294967295,0,4294967295,0,4294967295,0]);this.jd=b[0];this.Bd=b[1];this.Rd=b[2];this.Th=lj;this.Lh=b[3];this.Yf=b[4];this.jh=b[5];this.Dd=b[6];this.Bf=b[7];this.Vh=mj;this.xi=b[8];this.yi=b[9];this.Cd=b[10];this.re=b[11];this.Uh=nj;this.vb=b[12];d=this.Tc>>2;if((this.fd=b[14])&&this.fd.length>8&255)} +var W=[,,function(a){a+=this.offset;return(this.ia.vb=this.qa[a])>>this.ia.vj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.qa[b]>>8:this.qa[b])&255}];W[16]=function(a){a+=this.offset;a=this.qa[a];for(var b=this.ia.Fi&this.ia.Gi,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};W[512]=function(a,b){var c=a+this.offset,d;d=this.qa[c]&~this.ia.hb|(b|b<<8|b<<16|b<<24)&this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +W[1024]=function(a,b){var c=a+this.offset;b=b>>this.ia.nd|b<<8-this.ia.nd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.je|this.ia.Ie;d=d&this.ia.hb|this.qa[c]&~this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +W[1536]=function(a,b){var c=a+this.offset;b=b>>this.ia.nd|b<<8-this.ia.nd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.je|this.ia.Ie;d&=this.ia.vb;d=d&this.ia.hb|this.qa[c]&~this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +W[2560]=function(a,b){var c=a+this.offset;b=b>>this.ia.nd|b<<8-this.ia.nd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.je|this.ia.Ie;d|=this.ia.vb;d=d&this.ia.hb|this.qa[c]&~this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +W[3584]=function(a,b){var c=a+this.offset;b=b>>this.ia.nd|b<<8-this.ia.nd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.je|this.ia.Ie;d^=this.ia.vb;d=d&this.ia.hb|this.qa[c]&~this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)};W[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ia.hb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.qa[d]&~c;c=c&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[d]!=c&&(this.qa[d]=c,this.bb=!0)}; +W[4096]=function(a){a+=this.offset;var b=this.qa[a]&~this.ia.hb|this.ia.vb&this.ia.hb;this.qa[a]!=b&&(this.qa[a]=b,this.bb=!0)};W[8192]=function(a,b){var c=a+this.offset,d=ej[b&15],d=d&this.ia.hb|this.qa[c]&~this.ia.hb,d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)};W[24576]=function(a,b){var c=a+this.offset,d=ej[b&15],d=d&this.ia.vb,d=d&this.ia.hb|this.qa[c]&~this.ia.hb,d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +W[40960]=function(a,b){var c=a+this.offset,d=ej[b&15],d=d|this.ia.vb,d=d&this.ia.hb|this.qa[c]&~this.ia.hb,d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)};W[57344]=function(a,b){var c=a+this.offset,d=ej[b&15],d=d^this.ia.vb,d=d&this.ia.hb|this.qa[c]&~this.ia.hb,d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +function qj(a){var b=[];if(void 0!==a.fe){b[0]=a.mc;b[1]=a.zc;b[2]=a.Ye;b[3]=a.tf;b[4]=a.oc|a.kh<<8;b[5]=a.dc;if(5==a.fe){var c=[];c[0]=a.jd;c[1]=a.Bd;c[2]=a.Rd;c[3]=a.Lh;c[4]=a.Yf;c[5]=a.jh;c[6]=a.Dd;c[7]=a.Bf;c[8]=a.xi;c[9]=a.yi;c[10]=a.Cd;c[11]=a.re;c[12]=a.vb;c[13]=a.Tc;var d;a:if(d=a.fd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h>1;f[e++]=m;h=n}if(f.lengtha&&(a=0);for(var c="",d=0;8>d;d++){for(var n=l(b.eb+a)+":",q=0;8>q&&a>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),cb(this.na,b,c|d<<8);yb(this,!0)}};function yj(a){a.la.Yf&1?(a.Sc=a.ai,a.yb=a.la):(a.Sc=a.la,a.yb=a.Xg)}k.save=function(){var a=new H(this);a.set(0,qj(this.ai));a.set(1,qj(this.Xg));a.set(2,[this.he,this.od,this.Jd]);a.set(3,qj(this.la));return a.data()}; +k.restore=function(a){var b=a[2];this.he=b[0];this.od=b[1];this.Jd=b[2];this.Ba=null;this.Sc=this.ai=new fj(this,1,a[0]);this.yb=this.Xg=new fj(this,3,a[1]);this.la=new fj(this,5,a[3],this.Tc);this.la.mc&&yj(this);zj(this);if(!Bj(this))return!1;Cj(this);return!0}; +k.Xn=function(a,b,c){if(c)this.Ha("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){v("Empty font ROM image: "+a);return}if(1==d.length){v(d[0]);return}if(8192==d.length)Ii(this,d,[0,6144]);else{this.Ha("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ha("Font ROM data error: "+e.message);return}this.Sa()}}; +function Dj(a,b){if(1==b)return a.ud[0]=U[0],a.ud[1]=U[7],a.ud;if(2==b){var c=a.Ba.Ye;if(a.Ba===a.la){var d=a.la.Rd[0],c=d&7;d&16&&(c|=8);18!=a.la.Rd[1]&&(c|=32)}a.ud[0]=U[c&15];c=c&32?cj:bj;for(d=0;drb||!ia?rb:8,Qd=Ji.createImageData(n.kc,n.lc),Fa=0;256>Fa;Fa++){for(db= +0;db=rb-2,gl=Jc[db>(8<=Hb&&176<=Fa&&223>=Fa?7:Hb)?s:Pd;Gj(Qd,Ki,Li,Mi);z&&Gj(Qd,Ki+1,Li,Mi)}Ji.putImageData(Qd,(Fa&15)*n.kc,(Fa>>4)*n.lc)}n.Se[u]="#"+p(s[0])+p(s[1])+p(s[2]);n.Vj[u]=s;n.Oh[u]=Kc;n=!0}}a.Td[b]=t;return n}function Hj(a){0a.Ae&&(a.Ae=0):a.Ae=-1} +function Cj(a){if(a.Ub){for(var b=10;15>=b;b++)if(null==a.Ba.dc[b])return;var c=a.Ba.dc[10],b=c&31,d=a.Ba.dc[11]&31,e=a.Ba.dc[9]&31,f=!1;a.Ba===a.la&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Ij(a);else{c=a.Ba.dc[15]+((a.Ba.dc[14]&63)<<8);a.Lc!=c&&(Ij(a),a.Lc=c);d=d-b+1;if(a.fm!=b||a.mk!=d)a.fm=b,a.mk=d;a.ce=e+1;Hj(a)}}} +function Ij(a){if(0<=a.Lc){if(void 0!==a.ec){var b=a.ec[a.Lc];if(b&131072){var b=b&-131073,c=a.Lc%a.Bb,d=Math.floor(a.Lc/a.Bb);a.Ub&&a.Td[a.Ub]&&(a.Ze&&Jj(a,c,d,b,a.Ze),Jj(a,c,d,b));a.ec[a.Lc]=b}}a.Lc=-1}} +function Kj(a){var b;a=a.Ba;var c=a.re[5];if(null!=c){b=2;var d=512,e=a.re[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.nd=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.ne=function(a){var b=this.Ba;null!=a&&b&&a!=b.rh&&(b.Ih(a),this.na.Ih(b.eb,b.uc,b.Ff))}; +function Bj(a,b){var c,d=a.Jd,e=a.Ba;if(e)if(1==e.fe)d=Xi;else if(5==e.fe){var d=null,f=e.Tc>>2,g=32768f&&(d=c?13:14):c&&(d-=2));c=Kj(a)}}else e.zc&8&&(e.zc&2?(d=e.zc&16?6:5,e.zc&4||(d-=1)):(d=e.zc&1?3:1,e.zc&4&&(d-= +1)));else a.Jd=null,null==d&&(d=a.od);if(!Aj(a,d,b))return!1;a.ne(c);return!0} +function Aj(a,b,c){if(null!=b&&(b!=a.Jd||c)){a.pm=0;a.Jd=b;b=a.Ba||(b==Xi?a.Sc:a.yb);if(b!=a.Ba||b.eb!=a.eb||b.uc!=a.uc){Ij(a);if(a.eb){if(!Za(a.na,a.eb,a.uc))return!1;a.Ba&&(a.Ba.mc=!1)}a.Ba=b;b.mc=!0;a.eb=b.eb;a.uc=b.uc;if(!Xa(a.na,b.eb,b.uc,!1,b===a.la?b:null))return!1}a.Ub=0;a.Bb=a.uh;a.sc=a.Ji;a.Ei=T[Xi][2];b=0;var d=T[a.Jd];d&&(a.Bb=d[0],a.sc=d[1],a.Ei=d[2],b=d[3]||0,a.Ub=d[4],4==a.he&&a.Ba===a.la&&3==a.Ub&&(7==a.la.dc[9]?a.sc=43:a.Ub=5));a.Hk=a.Bb*a.sc;a.th=a.Hk/a.Ei;a.bi=(a.th<<1)+b;a.jk= +b?a.bi+b>>1:0;13<=a.Jd&&(a.th<<=1);a.Td.length&&(a.yd=Math.floor(a.xd/a.Bb),a.zd=Math.floor(a.de/a.sc),a.Ub?(b=a.Td[a.Ub],d=a.Td[a.Ub<<1],a.wm&&80==a.Bb?d&&a.yd>=3*d.kc>>2&&(a.Ub<<=1,b=d):(d&&a.yd>=d.kc&&(a.Ub<<=1,b=d),b&&(a.yd=b.kc,a.zd=b.lc)),a.Sf=a.Tf=0,b&&(a.Sf=a.Bb*b.kc,a.Tf=a.sc*b.lc)):(a.yd=a.zd=1,a.Sf=a.Bb,a.Tf=a.sc),a.nh=a.Vc.createImageData(a.Sf,a.Tf),a.Xe=window.document.createElement("canvas"),a.Xe.width=a.Sf,a.Xe.height=a.Tf,a.Ze=a.Xe.getContext("2d"),a.Nj=a.Oj=0,a.di=a.xd,a.ei=a.de, +b=a.xd-a.Bb*a.yd,d=a.de-a.sc*a.zd,0>1,a.di-=b),0>1,a.ei-=d),b||d)&&(a.Vc.fillStyle=a.Mb.style.backgroundColor,a.Vc.fillRect(0,0,a.xd,a.de));!1!==c?yb(a,!0):Lj(a,!0)}return!0}function Gj(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Lj(a,b){var c;if(b){if(c=a.th,void 0===a.ec||a.ec.length!=c)a.ec=Array(c)}else{if(void 0===a.ec)return;c=a.ec.length}for(var d=0;d>8;d=g&15;var h=a.Td[a.Ub];h.Af&&(d=h.Af[d]);var m=g>>4&15;h.Af&&(m=h.Af[m]);e?(b*=h.kc,c*=h.lc,e.fillStyle=h.Se[m],e.fillRect(b,c,h.kc,h.lc)):(b=b*a.yd+a.Nj,c=c*a.zd+a.Oj,a.Vc.fillStyle=h.Se[m],a.Vc.fillRect(b,c,a.yd,a.zd));g&256&&(m=(f&15)*h.kc,f=(f>>4)*h.lc,e?e.drawImage(h.Oh[d],m,f,h.kc,h.lc,b,c,h.kc,h.lc):a.Vc.drawImage(h.Oh[d],m,f,h.kc,h.lc,b,c,a.yd,a.zd));g&512&&(f=a.fm,g=a.mk,e?(a.ce&&a.ce!==h.lc&&(f=Math.floor(f*h.lc/a.ce),g=Math.floor(g*h.lc/a.ce)), +e.fillStyle=h.Se[d],e.fillRect(b,c+f,h.kc,g)):(a.ce&&a.ce!==a.zd&&(f=Math.floor(f*a.zd/a.ce),g=Math.floor(g*a.zd/a.ce)),a.Vc.fillStyle=h.Se[d],a.Vc.fillRect(b,c+f,a.yd,g)))} +function yb(a,b){if(a.Nb){var c=!1;a.Ba&&(a.Ba===a.la?a.la.Bd&32&&(c=!0):a.Ba.zc&8&&(c=!0));if(c||b){if(b)Lj(a,!0);else if(void 0===a.ec)return;var d=!1;!(b||++a.pm&15)&&0<=a.Ae&&(a.Ae++,d=!0);var e=0,f=a.Hk,c=a.Ba.eb,g=c+a.Ba.uc,h=(a.Ba.dc[12]<<8)+a.Ba.dc[13];a.Ub&&(h<<=1);var c=c+h,m=a.bi;c+m>g&&(m=g-c,0>m&&(m=0));g=c+m;if(h=!b){for(var h=a.na,n=!0,q=c>>h.ob;0a.Lc)return;e=a.Lc;f=e+1}}if(a.Ub){if(a.Td[a.Ub]){d= +0;h=a.ze=0;m=1048575;a.Ba.zc&32&&(h=32768,m&=~h,a.Ae&2||(m&=-65537));for(c+=e<<1;c>8| +(t&255)<<8;s=h;var rb=16;q>=m))>>(rb-=m);Gj(a.nh,q++,u,n[Pd])}q>C&&(C=q);u=ja&&(ja=u+1)}e+=2;g++;if(q>=a.Bb){q=0;u+=2;if(u>a.sc)break;u==a.sc&&(u=1,e=c+a.jk)}}zia;ia++)ja=C&2155905152, +0>ja&&(ja=-ja),ja=V[ja]||0,Gj(a.nh,h++,m,g[ja]),C<<=1;h>q&&(q=h);m=z&&(z=m+1)}e++;if(h>=a.Bb&&(h=0,++m>a.sc))break}n>2),c=this.la.Lh&-17|(this.Ng&1<f&&(f=0);f%b.Hi>b.Qn&&(d|=1);f%=b.Kk;f>b.Tn&&(d|=8);b.Mi=e-f;b===a.la?(d|=b.tf&48^48,b.jd=!1):d=(b.tf^=9)|240;b.tf=d;a.ba(b.port+6,null,c,b===a.la?"STATUS1":"STATUS",d);return d}k.Fa=function(a,b){this.Z&&(b||L(this.Z,this.Z.Dg))&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Dg,e)}; +var sj={948:S.prototype.ln,949:S.prototype.kn,952:S.prototype.mn,954:S.prototype.nn,980:S.prototype.Tm,981:S.prototype.Sm,984:S.prototype.Um,985:S.prototype.Rm,986:S.prototype.Vm},tj={948:S.prototype.Eo,949:S.prototype.Do,952:S.prototype.Fo,980:S.prototype.po,981:S.prototype.oo,984:S.prototype.qo,985:S.prototype.no},uj={960:S.prototype.Dk,961:S.prototype.Dk,962:S.prototype.xn,964:S.prototype.wn,965:S.prototype.vn,970:S.prototype.dn,972:S.prototype.cn,974:S.prototype.bn,975:S.prototype.an},vj={954:S.prototype.Ol, +960:S.prototype.Nl,961:S.prototype.Nl,962:S.prototype.Ho,964:S.prototype.Oo,965:S.prototype.No,970:S.prototype.zo,972:S.prototype.yo,974:S.prototype.xo,975:S.prototype.wo,986:S.prototype.Ol}; +za(function(){for(var a=A(window.document,"pcjs","video"),b=0;bMissing <canvas> support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; +e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new S(d,e,f);Ma(d,c)}}); +function X(a){this.Ak=a.adapter;switch(this.Ak){case 1:this.Cj=1016;this.gg=4;break;case 2:this.Cj=760;this.gg=3;break;default:v("Unrecognized serial adapter #"+this.Ak);return}this.ae=null;w.call(this,"SerialPort",a,X);var b=a.binding,c;a=Rj;b&&(void 0===c&&(c="Panel"),(c=La(c,this.id))&&(b=c.ta[b])&&this.wb(null,null,a,b))}x(w,X);var Rj="buffer";k=X.prototype;k.Zj=function(a,b){return a==this.lh?(this.Ek=b,this):null}; +k.wb=function(a,b,c,d){var e=this;switch(c){case Rj:return this.ta[c]=this.ae=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Sj(e,[b]))},d.onkeypress=function(a){a=a||window.event;Sj(e,[a.which||a.keyCode])},!0}return!1};k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.ka=B(a,"ChipSet");d&&Jh(d,X);gb(b,this,Tj,this.Cj);kb(b,this,Uj,this.Cj);this.Sa()}; +k.bc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ge()};k.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.Zh;c[b++]=this.ck;c[b++]=this.Pe;c[b++]=this.Og;c[b++]=this.Xd;c[b++]=this.Rc;c[b++]=this.gd;c[b++]=this.Gc;c[b++]=this.ak;c[b]=this.Df;a.set(0,c);return a.data()};k.restore=function(a){return this.ge(a[0])}; +k.ge=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.Zh=a[b++];this.ck=a[b++];this.Pe=a[b++];this.Og=a[b++];this.Xd=a[b++];this.Rc=a[b++];this.gd=a[b++];this.Gc=a[b++];this.ak=a[b++];this.Df=a[b];return!0};function Sj(a,b){a.Df=a.Df.concat(b);Vj(a)}function Vj(a){0>8:this.Og;this.ba(a,null,b,this.Rc&128?"DLM":"IER",c);return c};k.fn=function(a,b){var c=this.Xd;this.ba(a,null,b,"IIR",c);return c};k.gn=function(a,b){var c=this.Rc;this.ba(a,null,b,"LCR",c);return c};k.jn=function(a,b){var c=this.gd;this.ba(a,null,b,"MCR",c);return c}; +k.hn=function(a,b){var c=this.Gc;this.ba(a,null,b,"LSR",c);return c};k.pn=function(a,b){var c=this.ak;this.ba(a,null,b,"MSR",c);return c};k.Po=function(a,b,c){this.ba(a,b,c,this.Rc&128?"DLL":"THR");this.Rc&128?this.Pe=this.Pe&-256|b:(this.ck=b,this.Gc&=-97,this.ae?(13!=b&&(8==b?this.ae.value=this.ae.value.slice(0,-1):(this.ae.value+=String.fromCharCode(b),this.ae.scrollTop=this.ae.scrollHeight)),a=!0):a=!1,a&&(this.Gc|=96))}; +k.Ao=function(a,b,c){this.ba(a,b,c,this.Rc&128?"DLM":"IER");this.Rc&128?this.Pe=this.Pe&255|b<<8:this.Og=b};k.Bo=function(a,b,c){this.ba(a,b,c,"LCR");this.Rc=b}; +k.Co=function(a,b,c){var d=this.gd;this.ba(a,b,c,"MCR");this.gd=b;this.Ek&&(d^b)&3&&(a=this.Ek,b=this.gd,(c=3==(b&3))?a.mc||(d=!1,a.gd&2||(a.reset(),a.Fa("serial mouse reset"),d=!0),a.gd&1||(a.Fa("serial mouse ID requested"),d=!0),d&&(Sj(a.Of,[77]),a.Fa("serial mouse ID sent")),Wj(a,a.Mb),a.mc=c):a.mc&&(a.Fa("serial mouse inactive"),Xj(a.Mb),a.mc=c),a.gd=b)};k.Fa=function(a){this.Z&&L(this.Z,this.Z.Sj)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Sj,e)}; +var Tj={0:X.prototype.un,1:X.prototype.en,2:X.prototype.fn,3:X.prototype.gn,4:X.prototype.jn,5:X.prototype.hn,6:X.prototype.pn},Uj={0:X.prototype.Po,1:X.prototype.Ao,3:X.prototype.Bo,4:X.prototype.Co};za(function(){for(var a=A(window.document,"pcjs","serial"),b=0;ba.zg||0>a.Ag)a.zg=b.clientX,a.Ag=b.clientY;a.wf=b.clientX-a.zg;a.xf=b.clientY-a.Ag;(a.wf||a.xf)&&Zj(a,null,b.clientX,b.clientY);a.zg=b.clientX;a.Ag=b.clientY}},!1),b.addEventListener("mousedown",function(b){ak(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){ak(a,b.button,!1)},!1),a.mi=!0),b.style.cursor="none")}function Xj(a){a&&(a.style.cursor="auto")} +function ak(a,b,c){if(a.mc&&a.S&&a.S.Ob)switch(b){case 0:a.dh!=c&&(a.dh=c,Zj(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.eh!=c&&(a.eh=c,Zj(a,"mouse button2 "+(c?"dn":"up")))}}function Zj(a,b,c,d){var e=64|(a.dh?32:0)|(a.eh?16:0)|(a.xf&192)>>4|(a.wf&192)>>6,f=a.wf&63,g=a.xf&63;a.Fa((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+p(e)+","+p(f)+","+p(g)+"]");Sj(a.Of,[e,f,g]);a.wf=a.xf=0}k.Fa=function(a){this.Z&&L(this.Z,this.Z.lm)&&this.Z.message(a)}; +za(function(){for(var a=A(window.document,"pcjs","mouse"),b=0;bb.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.Ac+":"+this.qc+":"+this.$c+":"+this.Tb,a+="&machine="+this.ia.ef(),a+="&user="+this.ia.ee(),d=qa()+"/api/v1/disk?"+a,this.si=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"): +-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=qa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.cf?"":d)+"&format=json"));pa(d,!0,null,this,this.Un,b)}; +k.Un=function(a,b,c,d){var e=null;this.df=!1;var f=0>c&&this.Da&&!this.Da.Nb;if(this.si)c?this.Ha('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Ad=!0,e=this);else if(c)this.Ha('Unable to load disk "'+this.Kd+'" (error '+c+")",f);else try{if(0g&&0b.indexOf("0x")&&'["'!= +b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)v(h[0]);else{for(b=a=0;b>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var t=m.data;if(void 0===t){var s=m.bytes;if(void 0!==s&&s.length){for(var f=n<<2,u=s.length;ub&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function kk(a,b){var c=-1;if(b>2,c=(d>((b&3)<<3)&255;return c} +k.write=function(a,b,c){if(this.df)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Hc?f=a.Xc+a.Hc&&(a.Hc+=f-(a.Xc+a.Hc)+1):(a.Xc=f,a.Hc=1);d[f]=d[f]&~(255<=this.ib.length||m>=this.ib[h].length||n>=this.ib[h][m].length){c="sector "+h+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.df){c="unable to modify write-protected disk";b=-1;break}e= +g[f++];f=g[f++];g=e+f.length;h=this.ib[h][m][n];for(m=h.data.length;mb&&this.Ha("unable to restore disk '"+this.Kd+": "+c);return b};k.Fa=function(a){this.Z&&L(this.Z,this.Z.im)&&this.Z.message(a)}; +function lk(a){w.call(this,"FDC",a,lk);this.dmaRead=this.gi;this.dmaWrite=this.hi;this.dmaFormat=this.qm;this.Ke=null;if(a.autoMount&&(this.Ke=a.autoMount,"string"==typeof this.Ke))try{this.Ke=eval("("+a.autoMount+")")}catch(b){v("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Ke=null}this.vc=[];this.Ed();this.Gf()||this.Sa()}x(w,lk); +var mk={3:{$d:3,Ce:0,name:"SPECIFY"},4:{$d:2,Ce:1,name:"DRIVE_STATUS"},5:{$d:9,Ce:7,name:"WRITE_DATA"},6:{$d:9,Ce:7,name:"READ_DATA"},7:{$d:2,Ce:0,name:"RECALIBRATE"},8:{$d:1,Ce:2,name:"INT_STATUS"},13:{$d:6,Ce:7,name:"FORMAT"},15:{$d:3,Ce:0,name:"SEEK"}};k=lk.prototype; +k.wb=function(a,b,c,d){switch(c){case "listDisks":return this.ta[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.ta.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){v("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d=''+d+"");c.innerHTML= +d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.ta[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||nk(a,c)}}(this,d),!0;case "loadDrive":return this.ta[c]=d,d.onclick=function(a){return function(){var b,c=a.ta.listDisks,d=a.ta.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&ba.va.restore(f)&&(e=!1);e&&a.va&&void 0!==a.Va&&(a.Ra=a.va.seek(a.tb,a.Ma,a.Qa));return e};k.Jj=function(){for(var a=0,b=[],c=0;ca.Ac&&(this.Ha('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Ab)),b=null);b&&(a.va=b,a.Xl=c,a.Ne=d,uk(this,c,d,b),this.me|=128,this.Ha('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Ab),a.Fe));a.Fe&&(a.Fe=!1,--this.ye||this.Sa());nk(this,a.Ab)}; +function nk(a,b){if(0<=b&&b=this.Ya&&(this.za&=-81,this.mb=this.Ya=0);return c}; +k.uo=function(a,b,c){this.ba(a,b,c,"DATA["+this.Ya+"]");this.Ya=mk[a].$d){b=!1;this.mb=0;var d;a=this.Oa()&31;switch(a){case 3:this.Oa("SRT");this.Oa("HLT");this.Lb();break;case 4:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];this.Lb();this.rb((d.Za&4278190080)>>>24,"ST3");break;case 5:case 6:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];d.Ma=c>>2&1;d.tb=this.Oa("C");this.Oa("H");d.Qa=this.Oa("R");b=this.Oa("N"); +d.Wa=128<>>8,"ST1");this.rb((d.Za&16711680)>>>16,"ST2");this.rb(d.tb,"C");this.rb(d.Ma,"H");this.rb(d.Qa,"R");this.rb(b,"N");b=!0;break;case 7:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];d.tb=d.Wd=0;d.Za=268435488;this.Lb();b=!0;break;case 8:d=this.ya[this.Ab];d.Ma=0;this.Lb();vk(this,d);this.rb(d.tb,"PCN");break;case 13:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];d.Ma=c>> +2&1;b=this.Oa("N");d.Wa=128<>>8,"ST1");this.rb((d.Za&16711680)>>>16,"ST2");this.rb(d.tb,"C");this.rb(d.Ma,"H");this.rb(d.Qa,"R");this.rb(b,"N");b=!0;break;case 15:c=this.Oa("DS"),this.Ab=c&3,d=this.ya[this.Ab],d.Ma=c>>2&1,a=this.Oa("NCN"),d.tb+=a-d.Wd,0>d.tb&&(d.tb=0),d.tb>=d.Ac&&(d.tb=d.Ac-1),d.Wd=a,d.Za=32,0==d.tb&&(d.Za|=268435456),this.Lb(),b=!0}0b?this.tc(a,c):c(-1,!1)};k.hi=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1}; +k.qm=function(a,b){return void 0!==b&&0<=b?this.Lj(a,b):-1};k.ii=function(a){a.Za=72;a.va&&(a.Ra=null,a.Za=0,this.ka&&(mi(this.ka,2,this,"dmaRead",a),gi(this.ka,2)))};k.ji=function(a){a.Za=72;a.va&&(a.va.df?a.Za=576:(a.Ra=null,a.Za=0,this.ka&&(mi(this.ka,2,this,"dmaWrite",a),gi(this.ka,2))))};k.nk=function(a){a.Za=72;a.va&&(a.Ra=null,a.Za=0,this.ka&&(a.Be=0,a.xc=Array(4),a.Hf=!0,a.Nf=0,mi(this.ka,2,this,"dmaFormat",a),gi(this.ka,2),a.Hf=!1))}; +k.tc=function(a,b){var c=-1;if(!a.Za&&a.va){do{if(a.Ra&&0<=(c=kk(a.Ra,a.Va++)))break;a.Ra=a.va.seek(a.tb,a.Ma,a.Qa);if(!a.Ra){a.Za=1088;break}a.Va=0;this.Ef(a)}while(1)}b(c,!1)};k.Cc=function(a,b){if(a.Za||!a.va)return-1;do{if(a.Ra&&a.va.write(a.Ra,a.Va++,b))break;a.Ra=a.va.seek(a.tb,a.Ma,a.Qa);if(!a.Ra){a.Za=8256;b=-1;break}a.Va=0;this.Ef(a)}while(1);return b};k.Ef=function(a){a.Qa++;a.Qa>=a.$c+1&&(a.Qa=1,a.Ma++,a.Ma>=a.qc&&(a.Ma=0,a.tb++))}; +k.Lj=function(a,b){if(a.Za)return-1;a.xc[a.Be++]=b;if(a.Be==a.xc.length){a.tb=a.xc[0];a.Ma=a.xc[1];a.Qa=a.xc[2];a.Wa=128<this.Cc(a,a.$j))return-1;a.Nf++}a.Nf>=a.Yd&&(b=-1);return b}; +k.Ci=function(a){var b=this.S.G&255,c=this.S.G>>8,d=this.S.I&255,e=this.S.I>>8,f=this.S.J&255,g=this.S.J>>8;this.Z&&L(this.Z,this.Z.Bg)&&128>f&&(this.Z.message("\nFDC.intBIOS(AH="+p(c)+",D="+p(f)+",C="+p(e)+",H="+p(g)+",S="+p(d)+",N="+p(b)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,b){return function(c){b=E(a.S)-b;a.Fa("FDC.intBIOS("+c+"): C="+(Pc(a.S)?1:0)+" (cycles="+b+")")}}(this,E(this.S))));return!0};k.Fa=function(a){this.Z&&L(this.Z,this.Z.Bg)&&this.Z.message(a)}; +k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Bg,e)};var qk={1012:lk.prototype.$m,1013:lk.prototype.Ym,1015:lk.prototype.Zm},rk={1010:lk.prototype.vo,1013:lk.prototype.uo,1015:lk.prototype.to};za(function(){for(var a=A(window.document,"pcjs","fdc"),b=0;b=e&&(this.pf|=(f.type&3)<<(1-e<<1))}return d}; +k.Hj=function(){var a=0,b=[];this.Ee?(b[a++]=this.le,b[a++]=this.Wl,b[a++]=this.Fh,b[a++]=this.Gh,b[a++]=this.Eh,b[a++]=this.Dh,b[a++]=this.qg,b[a++]=this.za,b[a++]=this.Ej):(b[a++]=this.pf,b[a++]=this.za,b[a++]=this.cc,b[a++]=this.mb,b[a++]=this.Ya,b[a++]=this.Vl,b[a++]=this.Ul,b[a++]=this.Tl,b[a++]=this.ff);b[a]=this.Jj();return b}; +k.Ai=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Ab=a;b.errorCode=d[f++];b.bm=d[f++];b.cf=d[f++];b.Te=d[f++];b.Ue=d[f++];b.Ma=d[f++];b.qc=d[f++];b.Qd=d[f++];b.Qa=d[f++];b.Yd=d[f++];b.Wa=d[f++];b.Tg=this.Ee?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.ee()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===wk[this.Xf][b.type])b.type=this.Dm;c=wk[this.Xf][b.type]; +b.$c=c[2]||17;b.Tb=c[3]||512;if(e&&this.ka&&(e=this.ka,c=b.type,e.pa)){var h=e.pa[18],h=a?h&240|c:h&15|c<<4;e.pa&&(e.pa[18]=h,Vh(e))}void 0===b.va&&(b.va=null,this.Ha("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Bk(this,b);b.Va=d[f++];b.Ra=null;b.va&&(a=d[f],void 0!==a&&0>b.va.restore(a)&&(g=!1),g&&void 0!==b.Va&&(b.Ra=b.va.seek(b.Qd,b.Ma,b.Qa+b.Tg)));return g};k.Jj=function(){for(var a=0,b=[],c=0;c=this.Ya&&(this.mb=this.Ya=0,this.za&=-15);return c}; +k.Ro=function(a,b,c){this.ba(a,b,c,"DATA["+this.Ya+"]");this.Ya=a&&(this.za|=2,this.za&=-2,Ck(this))};k.Bn=function(a,b){var c=this.za;this.ba(a,null,b,"STATUS",c);this.mb=this.Na.Tb){var e=this;this.tc(this.Na,function(a){0<=a?e.ka&&Q(e.ka,14):(e.za=1,e.le=16)},!1)}else this.za=80;d||this.ba(a,null,b,"DATA",c);return c}; +k.io=function(a,b,c){this.Na&&0!=this.Na.Va||this.ba(a,b,c,"DATA");this.Na&&this.Na.Wa>=this.Na.Tb&&(0>this.Cc(this.Na,b)?(this.za=1,this.le=16):this.Na.Va==this.Na.Tb&&(this.Na.Wa-=this.Na.Tb,this.ka&&Q(this.ka,14),this.Na.Wa>=this.Na.Tb||(this.za=80)))};k.Nm=function(a,b){var c=this.le;this.ba(a,null,b,"ERROR",c);return c};k.mo=function(a,b,c){this.ba(a,b,c,"WPREC");this.Wl=b};k.Om=function(a,b){var c=this.Fh;this.ba(a,null,b,"SECCNT",c);return c}; +k.ko=function(a,b,c){this.ba(a,b,c,"SECCNT");this.Fh=b};k.Pm=function(a,b){var c=this.Gh;this.ba(a,null,b,"SECNUM",c);return c};k.lo=function(a,b,c){this.ba(a,b,c,"SECNUM");this.Gh=b};k.Km=function(a,b){var c=this.Eh;this.ba(a,null,b,"CYLLO",c);return c};k.ho=function(a,b,c){this.ba(a,b,c,"CYLLO");this.Eh=b};k.Jm=function(a,b){var c=this.Dh;this.ba(a,null,b,"CYLHI",c);return c};k.fo=function(a,b,c){this.ba(a,b,c,"CYLHI");this.Dh=b};k.Mm=function(a,b){var c=this.qg;this.ba(a,null,b,"DRVHD",c);return c}; +k.jo=function(a,b,c){this.ba(a,b,c,"DRVHD");this.qg=b};k.Qm=function(a,b){var c=this.za;this.ba(a,null,b,"STATUS",c);return c};k.eo=function(a,b,c){this.ba(a,b,c,"COMMAND");this.Ej=b;this.ka&&ti(this.ka,14);Dk(this)}; +function Dk(a){var b=!1,c=a.Ej,d=a.qg&16?1:0,e=a.qg&15,f=a.Eh|(a.Dh&3)<<8,g=a.Gh,h=a.Fh;a.Na=null;a.le=0;a.za=80;(d=a.ya[d])?(d.Qd=f,d.Ma=e,d.Qa=g,d.Wa=h*d.Tb,c=144<=c?c:c&240,d.Ra=null,d.errorCode=0,a.Na=d):c=-1;switch(c&240){case 32:a.tc(d,function(b){0<=b&&a.ka?(Q(a.ka,14),a.za=136):(a.za=1,a.le=16)},!1);break;case 48:a.ka?(Q(a.ka,14),a.za=136):(a.za=1,a.le=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.le=1;b=!0;break;case 145:d.qc=e+1,d.$c=h,b=!0}b&&a.ka&&Q(a.ka,14)} +function Ck(a){a.mb=0;var b=a.Oa(),c=a.Oa(),d=c&32,e=d>>5,f=c&31,g=a.Oa(),h=a.Oa(),m=g<<2&768|h,n=g&63,q=a.Oa(),t=a.Oa(),s=a.ya[e];s&&(s.Qd=m,s.Ma=f,s.Qa=n,s.Wa=q*s.Tb);switch(b){case 3:a.Lb(s?s.errorCode:4);a.rb(c);a.rb(g);a.rb(h);a.rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Oa());)s&&cb?this.tc(a,c):c(-1,!1)}; +k.hi=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};k.rm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Va=a.$c+b&&(a.Qa=b,a.Ma++,a.Ma>=a.qc&&(a.Ma=0,a.Qd++))}; +k.Lj=function(a,b){if(a.errorCode)return-1;a.xc[a.Be++]=b;if(a.Be==a.xc.length){a.Qd=a.xc[0];a.Ma=a.xc[1];a.Qa=a.xc[2];a.Wa=128<this.Cc(a,a.$j))return-1;a.Nf++}a.Nf>=a.Yd&&(b=-1);return b}; +k.Dn=function(a){var b=this.S.J&255;!(this.S.G>>8)&&128>8)||(a=!this.ka)||(a=!(this.ka.sb[0].wd&64));return a?!0:!1}; +k.Fa=function(a){this.Z&&L(this.Z,this.Z.Nh)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Nh,e)}; +var yk={800:Y.prototype.An,801:Y.prototype.Bn,802:Y.prototype.zn},xk={496:Y.prototype.Lm,497:Y.prototype.Nm,498:Y.prototype.Om,499:Y.prototype.Pm,500:Y.prototype.Km,501:Y.prototype.Jm,502:Y.prototype.Mm,503:Y.prototype.Qm},Ak={800:Y.prototype.Ro,801:Y.prototype.Uo,802:Y.prototype.To,803:Y.prototype.So,807:Y.prototype.zj,811:Y.prototype.zj,815:Y.prototype.zj},zk={496:Y.prototype.io,497:Y.prototype.mo,498:Y.prototype.ko,499:Y.prototype.lo,500:Y.prototype.ho,501:Y.prototype.fo,502:Y.prototype.jo,503:Y.prototype.eo}; +za(function(){for(var a=A(window.document,"pcjs","hdc"),b=0;b) from STDIN with echo",2:"write character () from STDAUX",4:"write character () from STDIN without echo",9:"write $-terminated string ()",11:"get STDIN status", +8323],[106,4227],[108,4227],[175,8323],Z,[110,4227],Z]],Qk={0:"terminate program",1:"read character (AL>) from STDIN with echo",2:"write character () from STDAUX",4:"write character () from STDIN without echo",9:"write $-terminated string ()",11:"get STDIN status", 12:"flush buffer and read STDIN",13:"disk reset",14:"select default drive ()", 26:"set disk transfer area address (DTACX, mon>DH, day>DL)",43:"set system date (yearCH, min>CL, sec>DH, hundredths>DL)",45:"set system time (hourES:BX)",48:"get DOS version (major>AL, minor>AH)",49:"terminate and stay resident", 50:"get drive parameter block (DPB>DS:BX) for drive () of InDOS flag",53:"get address (ES:BX>) of interrupt vector () for drive ()",78:"find first matching file ()",82:"get system variables (ES:BX>)",83:"translate BPB ()",84:"get verify flag (AL>)",85:"create child PSP at segment () and time (CX>)",88:"get/set (AL=0/1) memory allocation strategy",89:"get extended error information",90:"create temporary file (>8;if(L(this,this.fm)){var c=Uk[b],c=c?": "+c.replace(/\((<|>)/g,"("):"";this.message("INT 0x21: AH="+p(b)+" at "+ca(a-this.S.qa.Ja,this.S.qa.na)+c)}return!0};k.yn=function(){z(this,"Type ? for list of debugger commands")};function Lk(a){var b;if(1>c.mb],!1)}a.Qd=["read"];if(void 0!==a.Nc)for(b=1;b>c.mb],!0);a.Nc=["write"]}k.Td=function(a,b,c){if(!el(this,a,b)){b[2]=cl(this,b);b[3]=c;a.push(b);if(a!=this.Eb){var d=this.ma,e=cl(this,b);d.za[e>>d.mb].Td(e&d.bb,a==this.Nc)}c||z(this,"breakpoint enabled: "+$(b)+" ("+a[0]+")");Lk(this);return!0}return!1}; -function el(a,b,c,d){var e=!1;c=cl(a,c);for(var f=1;f>d.mb],b==a.Nc));g[3]||z(a,"breakpoint cleared: "+$(g)+" ("+b[0]+")");Lk(a);break}z(a,"breakpoint exists: "+$(g)+" ("+b[0]+")");break}}return e}function fl(a,b){for(var c=1;c=b&&f>g.mb].Td(f&g.bb,d==a.Nc)}}}function $k(a,b){if(void 0!==b)al(a,b,a.Eb,!0),a.lc=0;else for(var c=1;c=Nk.length&&(m=a.rb(b,1),g=Tk[h-Nk.length][m>>3&7]);var n=2,h="";if(164<=f&&167>=f||170<=f&&175>=f)n=0;for(f=1;f<=n;f++){var r="",u=g[f];if(void 0!==u){var t=u&15;if(0!=t&&15!=t){var v=u&240;if(128<=v)if(0>m&&(m=a.rb(b,1)),160<=v)r=m>>3&7,176==(u&240)?r+=16:3<=(u&15)&&(r+=8),r=Ok[r];else{if(128<=v){var r=a,A=u,t=b,D="",v=m>>6,D=m&7;3>v?(A=void 0,v||6!=D?(D=Pk[D],1==v?(A= -r.rb(t,1),A&128?(A=A<<24>>24,D+="-"+p(-A)):D+="+"+p(A)):2==v&&(A=r.Ga(t,2),D+="+"+q(A))):(A=r.Ga(t,2),D=q(A)),D="["+D+"]"):D=Ok[D+(1==(A&15)?0:8)];r=D}}else if(16==v)r="1";else if(0==v){r=a;v=u;t=b;A=" ";switch(v&15){case 1:v&12288&&(A=p(r.rb(t,1)));break;case 2:A=q(r.rb(t,1)<<24>>24);break;case 3:case 4:A=q(r.Ga(t,2));break;case 6:v=r.Ga(t,2);r=r.Ga(t,2);A=$([v,r,void 0]);break;default:A="imm("+q(v)+")"}r=A}else 32==v?r="["+q(a.Ga(b,2))+"]":48==v?(1==t?(r=a.rb(b,1),r=r<<24>>24):r=a.Ga(b,2),r=b[0]+ -r&65535,r=hl(a,[r,b[1],void 0])[0]||q(r)):96==v?r=Ok[(u&3840)>>8]:112==v?r=Ok[((u&3840)>>8)+16]:64==v?r="DS:[SI]":80==v&&(r="ES:[DI]");r.length||(r="type("+q(u)+")");0>>4),f[0]=h,f[1]=m,void 0!==n.p&&(f[2]=n.p));break}}}if(f&&f.length)return f;f=b.indexOf(":");0>f?null!=e?c=ol(a,b):d=ol(a,b):(e=ol(a,b.substring(0,f)),c=ol(a,b.substring(f+1)),d=null)}return[c, +87:"get/set (AL=0/1) file date (DX>) and time (CX>)",88:"get/set (AL=0/1) memory allocation strategy",89:"get extended error information",90:"create temporary file (>8;if(L(this,this.jm)){var c=Qk[b],c=c?": "+c.replace(/\((<|>)/g,"("):"";this.message("INT 0x21: AH="+p(b)+" at "+ca(a-this.S.ra.La,this.S.ra.oa)+c)}return!0};k.Cn=function(){this.ca("Type ? for list of debugger commands")};function Hk(a){var b;if(1>c.ob],!1)}a.Sd=["read"];if(void 0!==a.Pc)for(b=1;b>c.ob],!0);a.Pc=["write"]}k.Vd=function(a,b,c){if(!al(this,a,b)){b[2]=Zk(this,b);b[3]=c;a.push(b);if(a!=this.Gb){var d=this.na,e=Zk(this,b);d.Aa[e>>d.ob].Vd(e&d.fb,a==this.Pc)}c||this.ca("breakpoint enabled: "+$(b)+" ("+a[0]+")");Hk(this);return!0}return!1}; +function al(a,b,c,d){var e=!1;c=Zk(a,c);for(var f=1;f>d.ob],b==a.Pc));g[3]||a.ca("breakpoint cleared: "+$(g)+" ("+b[0]+")");Hk(a);break}a.ca("breakpoint exists: "+$(g)+" ("+b[0]+")");break}}return e}function bl(a,b){for(var c=1;c=b&&f>g.ob].Vd(f&g.fb,d==a.Pc)}}}function Wk(a,b){if(void 0!==b)Xk(a,b,a.Gb,!0),a.nc=0;else for(var c=1;c=Jk.length&&(m=a.ub(b,1),g=Pk[h-Jk.length][m>>3&7]);var n=2,h="";if(164<=f&&167>=f||170<=f&&175>=f)n=0;for(f=1;f<=n;f++){var q="",t=g[f];if(void 0!==t){var s=t&15;if(0!=s&&15!=s){var u=t&240;if(128<=u)if(0>m&&(m=a.ub(b,1)),160<=u)q=m>>3&7,176==(t&240)?q+=16:3<=(t&15)&&(q+=8),q=Kk[q];else{if(128<=u){var q=a,z=t,s=b,C="",u=m>>6,C=m&7;3>u?(z=void 0,u||6!=C?(C=Lk[C],1==u?(z= +q.ub(s,1),z&128?(z=z<<24>>24,C+="-"+p(-z)):C+="+"+p(z)):2==u&&(z=q.Ia(s,2),C+="+"+r(z))):(z=q.Ia(s,2),C=r(z)),C="["+C+"]"):C=Kk[C+(1==(z&15)?0:8)];q=C}}else if(16==u)q="1";else if(0==u){q=a;u=t;s=b;z=" ";switch(u&15){case 1:u&12288&&(z=p(q.ub(s,1)));break;case 2:z=r(q.ub(s,1)<<24>>24);break;case 3:case 4:z=r(q.Ia(s,2));break;case 6:u=q.Ia(s,2);q=q.Ia(s,2);z=$([u,q,void 0]);break;default:z="imm("+r(u)+")"}q=z}else 32==u?q="["+r(a.Ia(b,2))+"]":48==u?(1==s?(q=a.ub(b,1),q=q<<24>>24):q=a.Ia(b,2),q=b[0]+ +q&65535,q=dl(a,[q,b[1],void 0])[0]||r(q)):96==u?q=Kk[(t&3840)>>8]:112==u?q=Kk[((t&3840)>>8)+16]:64==u?q="DS:[SI]":80==u&&(q="ES:[DI]");q.length||(q="type("+r(t)+")");0>>4),f[0]=h,f[1]=m,void 0!==n.p&&(f[2]=n.p));break}}}if(f&&f.length)return f;f=b.indexOf(":");0>f?null!=e?c=kl(a,b):d=kl(a,b):(e=kl(a,b.substring(0,f)),c=kl(a,b.substring(f+1)),d=null)}return[c, e,d]} -function ol(a,b,c){var d;if(void 0!==b)switch(b=b.toUpperCase(),b){case "AX":d=a.S.G;break;case "BX":d=a.S.B;break;case "CX":d=a.S.I;break;case "DX":d=a.S.J;break;case "SI":d=a.S.F;break;case "DI":d=a.S.D;break;case "BP":d=a.S.H;break;case "SP":d=a.S.X;break;case "CS":d=a.S.qa.na;break;case "DS":d=a.S.Ob.na;break;case "ES":d=a.S.$a.na;break;case "SS":d=a.S.Cb.na;break;case "IP":d=a.S.ra;break;default:d=ba(b),void 0===d&&z(a,"invalid "+(c?c:"value")+": "+b)}else z(a,"missing "+(c?c:"value"));return d} -function Ji(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]=g&&eb[0]?1:a[0]c?(z(a,"out of data at address "+$(b)),r=!0):(a.Zc(b,c,1),n++)})})(a,c);z(a,n+" bytes read at "+e)}else z(a,"sector "+e+" request out of range");else z(a,"drive "+d+" not loaded");else z(a,"invalid drive: "+d)}else z(a,"disk controller not present")}}} -function Yk(a,b,c){if(b&&"?"==b[1])z(a,"\nregister commands:"),z(a,"\tr\t\tdisplay all registers"),z(a,"\tr [target=#]\tmodify target register"),z(a,"supported targets:"),z(a,"\tall registers and flags V,D,I,S,Z,A,P,C");else{var d=!0,e;if(null!=b&&1c||"z">>4),(d=h[f].l)&& -(f=d),z(a,ca(n,m)+" "+f)));else{for(n in a.cb)if(h==a.cb[n].Ua){a.cb[n].sk(m);break a}f=nl(a,h,2);if(null!=f[0])if("ds"==g)if(c=bl(a,f[0]),null!=c.na){f="selector="+q(f[0])+" limit="+q(c.Lc)+" base="+l(c.Ja);if(c.Ya){f+=" access="+q(c.Ya);if(c.Ya&4096)c.Ya&2048?(f=f+"code:"+(c.Ya&512?"readable,":"execonly,"),f+=c.Ya&1024?"conforming,":"nonconforming,"):(f+="data:",f+=c.Ya&512?"writeable,":"readonly,",f+=c.Ya&1024?"expand down,":"expand up,"),f+=c.Ya&256?"accessed":"not accessed";else switch(f+="type:", -c.Ya&7936){case 256:f+="tss";break;case 512:f+="ldt";break;case 768:f+="tss(busy)";break;case 1024:f+="call";break;case 1280:f+="task";break;case 1536:f+="int";break;case 1792:f+="trap";break;default:f+="unknown"}f+=",dpl"+(c.Ya>>13&24576);f+=c.Ya&32768?",present":",not present"}z(a,f)}else z(a,"invalid selector: "+q(f[0]));else{c=0;void 0!==m&&("l"==m.charAt(0)&&(m=m.substr(1)),c=parseInt(m,10));n="";c||(c=8);for(m=0;mu;u++){var t=a.rb(f,1);"dw"==g?u&1&&(d+= -q(r|t<<8)+(7==u?" - ":" ")):d+=p(t)+(7==u?"-":" ");e+=32<=t&&128>t?String.fromCharCode(t):".";r=t}n&&(n+="\n");n+=h+" "+d+" "+e}n&&z(a,n);a.Pj=f}}}break;case "e":f=c[1];if(void 0===f)z(a,"missing address");else if(f=nl(a,f,2),null!=f[0])for(g=2;gh.length&&(z(a,"note: only "+h.length+" available"),n=h.length),g-=n,0>g&&(null!=h[h.length-1][1]?g+=h.length:(n=g+n,g=0)),void 0!==m&&z(a,n+" instructions earlier:");c&&g!=a.ef;){m=h[g];if(null==m[1])break;m=[m[0],m[1],m[2]];z(a,gl(a,m,"history",-n));++g==h.length&&(g=0);a.Il=--n;c--}10==c&&(z(a,"no "+f+"history available"),a.Il=void 0)}break;case "i":(f= -c[1])&&"?"!=f?(f=ol(a,f),void 0!==f&&(c=kb(a.ma,f),z(a,q(f)+": "+p(c)))):(z(a,"\ninput commands:"),z(a,"\ti [p]\tread port [p]"),z(a,"warning: port accesses can affect hardware state"));break;case "l":rl(a,c);break;case "m":a:{f=null;h=c[1];"?"==h&&(h=void 0);if(void 0!==h){n=0;if("all"==h)n=4294967295,h=null;else if("on"==h)f=!0,h=null;else if("off"==h)f=!1,h=null;else{for(g in a.cb)if(h==a.cb[g].Ua){n=a.cb[g].Ra;f=!!(a.ec&n);break}if(!n){z(a,"unknown message category: "+h);break a}}n&&("on"==c[2]? -(a.ec|=n,f=!0):"off"==c[2]&&(a.ec&=~n,f=!1))}c=0;n="";for(g in a.cb)if(!h||h==a.cb[g].Ua)if(m=!!(a.ec&a.cb[g].Ra),null===f||f==m)n&&(n+=","),++c%10||(n+="\n\t"),n+=a.cb[g].Ua;void 0===h&&z(a,"\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off");z(a,(null!==f?f?"messages on: ":"messages off: ":"message categories:\n\t")+(n||"none"))}break;case "o":f=c[1];c=c[2];f&&"?"!=f?(f=ol(a,f,"port #"),c=ol(a,c),void 0!==f&&void 0!==c&&nb(a.ma,f,c)):(z(a,"\noutput commands:"),z(a,"\to [p] [d]\twrite data [d] to port [p]"), -z(a,"warning: port accesses can affect hardware state"));break;case "p":case "pr":f="pr"==c[0]?1:0;c=1+f;if(a.lc)z(a,"step in progress");else{h=!1;n=[a.S.ra,a.S.qa.na,void 0];do switch(g=!1,a.rb(n)){case 38:case 46:case 54:case 62:case 240:dl(n,1);g=!0;break;case 204:case 206:a.lc=c;dl(n,1);break;case 205:case 224:case 225:case 226:a.lc=c;dl(n,2);break;case 232:a.lc=c;dl(n,3);break;case 154:a.lc=c;dl(n,5);break;case 255:a.lc=0<=gl(a,n).indexOf("CALL")?c:0;break;case 243:case 242:dl(n,1);h=g=!0;break; -case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:h&&(a.lc=c,dl(n,1))}while(g);a.lc?(a.Td(a.Eb,n,!0),a.Ke()||(a.S.Kd(),a.lc=0)):sl(a,f?"tr":"t")}break;case "r":Yk(a,c);break;case "t":case "tr":sl(a,c[0],c[1]);break;case "u":Zk(a,c[1],c[2],8);break;case "x":a:if(void 0===c[1]||"?"==c[1])z(a,"\nexecution options:"),z(a,"\tcs int #\tset checksum cycle interval to #"),z(a,"\tcs start #\tset checksum cycle start count to #"),z(a,"\tcs stop #\tset checksum cycle stop count to #"), -z(a,"\tsp #\t\tset speed multiplier to #");else switch(c[1]){case "cs":void 0!==c[3]&&(m=parseInt(c[3],10));switch(c[2]){case "int":a.S.hf=m;break;case "start":a.S.Zf=m;break;case "stop":a.S.kf=m;break;default:z(a,"unknown cs option");break a}void 0!==m&&Cb(a.S);z(a,"checksums "+(a.S.Ze?"enabled":"disabled"));break;case "sp":void 0!==c[2]&&Jb(a.S,parseInt(c[2],10));z(a,"target speed: "+(a.S.ff.toFixed(2)+"Mhz")+" ("+a.S.Ed+"x)");break;default:z(a,"unknown option: "+c[1])}break;case "?":f="commands:"; -for(h in Mk)f+="\n"+h+" ".substr(0,7-h.length)+Mk[h];1yl){if(d.load(this.rg)){this.qf=new H(this,"1.15.4","failsafe");this.qf.load()&&(Cl(this,d),a=2);this.qf.set("timestamp",na());wl(this.qf);var e=this.zc&&!this.dh;if(1==a||sa("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(B(this,"Error: "+g),"unable to verify user"== -g&&(ta(""),this.Mc=null)):z(this,f+": "+g),vl(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Bl(this,c?d:null)}else 2==a&&d.clear()}else Bl(this);delete this.rg;delete this.Fh}e=Na(this.id);for(f=0;fa[1];a=a[2];this.Lb=!0;this.mk||(z(this,"PCjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons \nLicense: GPL version 3 or later "),this.mk=!0);this.S&&Dl(this,this.S,b,c,a);this.pk&&(Cl(this,b),b.clear());!c&&this.qf&&(this.qf.clear(),delete this.qf)}; -function Cl(a,b){if(sa("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.ce(),d=b.toString(),e={app:"PCjs",ver:"1.15.4"};e.url=a.url;e.user=c;e.type="bug";e.data=d;pa("http://www.pcjs.org/api/v1/report",!0,e)}} -function tl(a,b,c){var d,e="none",f=new H(a,"1.15.4"),g=new H(a,"1.15.4","validate"),h=na();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.15.4");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.S&&a.S.Wb&&(c&&a.S.xb(),d=a.S.Wb(b,c),"object"===typeof d&&f.set(a.S.id,d),c&&(a.S.Lb=!1,!1===d&&(e=null)));for(var h=Na(a.id),m=0;m/g;f=g.exec(a);){var h=f[2],m=pa(h),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var r=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(r){for(var h=r[0],u,t=/( [a-z]+=)(['"])(.*?)\2/g;u=t.exec(m);)h=0>h.indexOf(u[1])?h.replace(">",u[0]+">"):h.replace(new RegExp(u[1]+"(['\"])(.*?)\\1"),u[0]);r[0]!=h&&(n=n.replace(r[0],h))}else throw c="missing <"+f[1]+"> in "+h, +function kl(a,b,c){var d;if(void 0!==b)switch(b=b.toUpperCase(),b){case "AX":d=a.S.G;break;case "BX":d=a.S.B;break;case "CX":d=a.S.I;break;case "DX":d=a.S.J;break;case "SI":d=a.S.F;break;case "DI":d=a.S.D;break;case "BP":d=a.S.H;break;case "SP":d=a.S.X;break;case "CS":d=a.S.ra.oa;break;case "DS":d=a.S.Qb.oa;break;case "ES":d=a.S.cb.oa;break;case "SS":d=a.S.Eb.oa;break;case "IP":d=a.S.sa;break;default:d=ba(b),void 0===d&&a.ca("invalid "+(c?c:"value")+": "+b)}else a.ca("missing "+(c?c:"value"));return d} +function Gi(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]=g&&eb[0]?1:a[0]c?(a.ca("out of data at address "+$(b)),q=!0):(a.bd(b,c,1),n++)})})(a,c);a.ca(n+" bytes read at "+e)}else a.ca("sector "+e+" request out of range");else a.ca("drive "+d+" not loaded");else a.ca("invalid drive: "+d)}else a.ca("disk controller not present")}}} +function Uk(a,b,c){if(b&&"?"==b[1])a.ca("\nregister commands:"),a.ca("\tr\t\tdisplay all registers"),a.ca("\tr [target=#]\tmodify target register"),a.ca("supported targets:"),a.ca("\tall registers and flags V,D,I,S,Z,A,P,C");else{var d=!0,e;if(null!=b&&1c||"z">>4),(d=h[f].l)&&(f=d),a.ca(ca(n,m)+" "+f)));else{for(n in a.gb)if(h==a.gb[n].Xa){a.gb[n].wk(m);break a}f=jl(a,h,2);if(null!=f[0])if("ds"==g)if(c=Yk(a,f[0]),null!=c.oa){f="selector="+r(f[0])+" limit="+r(c.Nc)+" base="+l(c.La);if(c.ab){f+=" access="+r(c.ab);if(c.ab& +4096)c.ab&2048?(f=f+"code:"+(c.ab&512?"readable,":"execonly,"),f+=c.ab&1024?"conforming,":"nonconforming,"):(f+="data:",f+=c.ab&512?"writeable,":"readonly,",f+=c.ab&1024?"expand down,":"expand up,"),f+=c.ab&256?"accessed":"not accessed";else switch(f+="type:",c.ab&7936){case 256:f+="tss";break;case 512:f+="ldt";break;case 768:f+="tss(busy)";break;case 1024:f+="call";break;case 1280:f+="task";break;case 1536:f+="int";break;case 1792:f+="trap";break;default:f+="unknown"}f+=",dpl"+(c.ab>>13&24576);f+= +c.ab&32768?",present":",not present"}a.ca(f)}else a.ca("invalid selector: "+r(f[0]));else{c=0;void 0!==m&&("l"==m.charAt(0)&&(m=m.substr(1)),c=parseInt(m,10));n="";c||(c=8);for(m=0;mt;t++){var s=a.ub(f,1);"dw"==g?t&1&&(d+=r(q|s<<8)+(7==t?" - ":" ")):d+=p(s)+(7==t?"-":" ");e+=32<=s&&128>s?String.fromCharCode(s):".";q=s}n&&(n+="\n");n+=h+" "+d+" "+e}n&&a.ca(n);a.Uj=f}}}break;case "e":f=c[1];if(void 0===f)a.ca("missing address");else if(f=jl(a,f,2),null!=f[0])for(g= +2;gh.length&&(a.ca("note: only "+h.length+" available"),n=h.length),g-=n,0>g&&(null!=h[h.length- +1][1]?g+=h.length:(n=g+n,g=0)),void 0!==m&&a.ca(n+" instructions earlier:");c&&g!=a.gf;){m=h[g];if(null==m[1])break;m=[m[0],m[1],m[2]];a.ca(cl(a,m,"history",-n));++g==h.length&&(g=0);a.Ml=--n;c--}10==c&&(a.ca("no "+f+"history available"),a.Ml=void 0)}break;case "i":(f=c[1])&&"?"!=f?(f=kl(a,f),void 0!==f&&(c=hb(a.na,f),a.ca(r(f)+": "+p(c)))):(a.ca("\ninput commands:"),a.ca("\ti [p]\tread port [p]"),a.ca("warning: port accesses can affect hardware state"));break;case "l":nl(a,c);break;case "m":a:{f= +null;h=c[1];"?"==h&&(h=void 0);if(void 0!==h){n=0;if("all"==h)n=4294967295,h=null;else if("on"==h)f=!0,h=null;else if("off"==h)f=!1,h=null;else{for(g in a.gb)if(h==a.gb[g].Xa){n=a.gb[g].Ua;f=!!(a.gc&n);break}if(!n){a.ca("unknown message category: "+h);break a}}n&&("on"==c[2]?(a.gc|=n,f=!0):"off"==c[2]&&(a.gc&=~n,f=!1))}c=0;n="";for(g in a.gb)if(!h||h==a.gb[g].Xa)if(m=!!(a.gc&a.gb[g].Ua),null===f||f==m)n&&(n+=","),++c%10||(n+="\n\t"),n+=a.gb[g].Xa;void 0===h&&a.ca("\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off"); +a.ca((null!==f?f?"messages on: ":"messages off: ":"message categories:\n\t")+(n||"none"))}break;case "o":f=c[1];c=c[2];f&&"?"!=f?(f=kl(a,f,"port #"),c=kl(a,c),void 0!==f&&void 0!==c&&lb(a.na,f,c)):(a.ca("\noutput commands:"),a.ca("\to [p] [d]\twrite data [d] to port [p]"),a.ca("warning: port accesses can affect hardware state"));break;case "p":case "pr":f="pr"==c[0]?1:0;c=1+f;if(a.nc)a.ca("step in progress");else{h=!1;n=[a.S.sa,a.S.ra.oa,void 0];do switch(g=!1,a.ub(n)){case 38:case 46:case 54:case 62:case 240:$k(n, +1);g=!0;break;case 204:case 206:a.nc=c;$k(n,1);break;case 205:case 224:case 225:case 226:a.nc=c;$k(n,2);break;case 232:a.nc=c;$k(n,3);break;case 154:a.nc=c;$k(n,5);break;case 255:a.nc=0<=cl(a,n).indexOf("CALL")?c:0;break;case 243:case 242:$k(n,1);h=g=!0;break;case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:h&&(a.nc=c,$k(n,1))}while(g);a.nc?(a.Vd(a.Gb,n,!0),a.Me()||(a.S.Md(),a.nc=0)):ol(a,f?"tr":"t")}break;case "r":Uk(a,c);break;case "t":case "tr":ol(a,c[0], +c[1]);break;case "u":Vk(a,c[1],c[2],8);break;case "x":a:if(void 0===c[1]||"?"==c[1])a.ca("\nexecution options:"),a.ca("\tcs int #\tset checksum cycle interval to #"),a.ca("\tcs start #\tset checksum cycle start count to #"),a.ca("\tcs stop #\tset checksum cycle stop count to #"),a.ca("\tsp #\t\tset speed multiplier to #");else switch(c[1]){case "cs":void 0!==c[3]&&(m=parseInt(c[3],10));switch(c[2]){case "int":a.S.kf=m;break;case "start":a.S.bg=m;break;case "stop":a.S.mf=m;break;default:a.ca("unknown cs option"); +break a}void 0!==m&&Ab(a.S);a.ca("checksums "+(a.S.af?"enabled":"disabled"));break;case "sp":void 0!==c[2]&&Gb(a.S,parseInt(c[2],10));a.ca("target speed: "+(a.S.hf.toFixed(2)+"Mhz")+" ("+a.S.Gd+"x)");break;default:a.ca("unknown option: "+c[1])}break;case "?":f="commands:";for(h in Ik)f+="\n"+h+" ".substr(0,7-h.length)+Ik[h];1ul){if(d.load(this.vg)){this.sf=new H(this,"1.15.4","failsafe");this.sf.load()&&(yl(this,d),a=2);this.sf.set("timestamp",na());sl(this.sf);var e=this.Bc&&!this.ih;if(1==a||ra("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.Ha("Error: "+g),"unable to verify user"== +g&&(sa(""),this.Oc=null)):this.ca(f+": "+g),rl(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&xl(this,c?d:null)}else 2==a&&d.clear()}else xl(this);delete this.vg;delete this.Kh}e=Ja(this.id);for(f=0;fa[1];a=a[2];this.Nb=!0;this.qk||(this.ca("PCjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons \nLicense: GPL version 3 or later "),this.qk=!0);this.S&&zl(this,this.S,b,c,a);this.tk&&(yl(this,b),b.clear());!c&&this.sf&&(this.sf.clear(),delete this.sf)}; +function yl(a,b){if(ra("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.ee(),d=b.toString(),e={app:"PCjs",ver:"1.15.4"};e.url=a.url;e.user=c;e.type="bug";e.data=d;pa("http://www.pcjs.org/api/v1/report",!0,e)}} +function pl(a,b,c){var d,e="none",f=new H(a,"1.15.4"),g=new H(a,"1.15.4","validate"),h=na();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.15.4");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.S&&a.S.Yb&&(c&&a.S.zb(),d=a.S.Yb(b,c),"object"===typeof d&&f.set(a.S.id,d),c&&(a.S.Nb=!1,!1===d&&(e=null)));for(var h=Ja(a.id),m=0;m/g;f=g.exec(a);){var h=f[2],m=pa(h),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var q=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(q){for(var h=q[0],t,s=/( [a-z]+=)(['"])(.*?)\2/g;t=s.exec(m);)h=0>h.indexOf(t[1])?h.replace(">",t[0]+">"):h.replace(new RegExp(t[1]+"(['\"])(.*?)\\1"),t[0]);q[0]!=h&&(n=n.replace(q[0],h))}else throw c="missing <"+f[1]+"> in "+h, Error(c);}n=n.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(f[0],n);g.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/\s*/g,"")),f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+ (255=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function aa(a){return h(a,2)}function ba(a,b){return void 0!==b?h(b,4)+":"+h(a,4):h(a)}function ea(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function aa(a){return h(a,2)}function da(a,b){return void 0!==b?h(b,4)+":"+h(a,4):h(a)}function ea(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0":">",'"':""","'":"'"};function ha(a){return a.replace(/[&<>"']/g,function(a){return ga[a]})}function ia(){return Date.now()||+new Date}function ja(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var ka=[31,28,31,30,31,30,31,31,30,31,30,31]; function p(a,b,c,d,e,f){b=!!b;var l=0,k=null,m=ea(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(n.onreadystatechange=void 0,k=n.responseText,200!=n.status&&(l=n.status||-1),d&&e&&e.call(d,m,k,l,f))});if(c){var q="",s;for(s in c)c.hasOwnProperty(s)&&(q&&(q+="&"),q+=s+"="+encodeURIComponent(c[s]));q=q.replace(/%20/g,"+");n.open("POST",a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded"); n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(k=n.responseText,200!=n.status&&(l=n.status||-1),d&&e&&e.call(d,m,k,l,f),a=[l,k]);return a}function la(){return"http://"+(window?window.location.host:"www.pcjs.org")}function t(a){window?window.alert(a):console.log(a)}function ma(a){var b=!1;window&&(b=window.confirm(a));return b}function na(a){window&&window.localStorage.setItem("user",a)} -function oa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var pa={init:[],show:[],exit:[]},qa=!0;function ra(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function u(a){pa.init.push(a)}function sa(a){if(qa)for(var b=0;b=this.cf?12:14;this.lc=1<>2;this.Ya=this.lc-1;this.Tf=(this.Je+this.lc)/this.lc|0;this.Nd=this.Tf-1;this.Gf=[];this.Hf=[];this.xh();this.Ma()}y(v,Na);Na.prototype.xh=function(){this.xa=Array(this.Tf);for(var a=0;a>a.Hb;0>this.Hb;0>a.Hb;0>a.Hb].zi(b&a.Ya)}function Va(a,b){var c=b&a.Ya,d=(b&a.ub)>>a.Hb;return c!=a.Ya?a.xa[d].vn(c):a.xa[d++].zi(c)|a.xa[d&a.Nd].zi(0)<<8} -function Wa(a,b,c){a.xa[(b&a.ub)>>a.Hb].Hi(b&a.Ya,c&255)}function Xa(a,b,c){var d=b&a.Ya;b=(b&a.ub)>>a.Hb;d!=a.Ya?a.xa[b].Hn(d,c&65535):(a.xa[b++].Hi(d,c&255),a.xa[b&a.Nd].Hi(0,c>>8&255))}function Ya(a){for(var b=0,c=[],d=0;d>2),this.Dd(cb);else{this.la=Array(b>>2);for(d=0;d>2]>>((a&3)<<3)&255},wn:function(a){var b=a>>2;a=(a&3)<<3;var c=this.la[b]>>a;return 24>a?c&65535:c&255|(this.la[b+1]&255)<<8},En:function(a,b){var c=a>>2,d=(a&3)<<3;this.la[c]=this.la[c]&~(255<>2,d=(a&3)<<3;24>d?this.la[c]=this.la[c]&~(65535<>8);this.Na=!0},save:function(){var a,b;if(this.ea)a=null;else if(Ka)for(a=Array(this.$i>>2),b=0;bc&&(c=60);2>c&&(c=2);var d=1;b&&1a.jg&&(c=Math.round(c/a.vd));return c}function ib(a){a.Ic=0;a.mg=1;a.ae=a.yd=a.$c=a.A=0;jb(a);nb(a,1)} -function nb(a,b,c){void 0!==b&&(0.8>a.Ic/a.bf&&(b=1),a.vd=b,a.bf=a.jg*a.vd,b=a.bf.toFixed(2)+"Mhz",a.oa.setSpeed&&(a.oa.setSpeed.innerHTML=b),Ga(a,"target speed: "+b),c&&a.Ae());ob(a,a.yd);a.yd=0;a.ue=ia();a.Yd=0;pb(a)} -function fb(a,b){if(Ha(a,!0)){a.pc||(nb(a),a.Ea&&a.Ea.start(a.ue,qb(a)),a.pc=!0,a.ga&&sb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Halt"),b&&a.Ae());a.si>=a.ad&&pb(a,!0);a.kf=0;a.lg=ia();if(a.Yd){var c=a.lg-a.Yd;c>a.tj&&(a.ue+=c,a.ue>a.lg&&(a.ue=a.lg))}try{do{a.Ok(a.ag?1:Math.round(a.pm/a.mg));var d=a.$c-a.A;a.yd+=d;a.kf+=d;ob(a,0,!0);var c=a,e=d;if(c.ag){var f=!1;c.og=c.og+c.nj()|0;c.ve-=e;0>=c.ve&&(c.ve+=c.ef,f=!0);0<=c.ff&&c.ff<=qb(c)&&(c.ef=c.ff=-1,jb(c),lb(c),f=!0);f&&Ga(c,qb(c)+" cycles: checksum="+ -h(c.og))}a.hf-=d;0>=a.hf&&(a.hf+=a.xj,a.Ye());a.gf-=d;0>=a.gf&&(a.gf+=a.wj,a.Xe());a.jf-=d;if(0>=a.jf){a.jf+=a.Eh;break}}while(a.pc)}catch(l){lb(a);a.Ye();a.Xe();a.Ea&&a.Ea.stop(ia(),qb(a));Ha(a,!1);Ja(a,l.message);return}d=setTimeout;c=a.wm;a.Yd=ia();e=a.tj;a.kf&&(e=Math.round(e*a.kf/a.Eh));e-=a.Yd-a.lg;if(f=a.Yd-a.ue)a.Ic=Math.round(a.yd/(10*f))/100,864E5<=f&&(a.ae=0,a.ga&&tb(a.ga,!0),nb(a));if(0>e||a.Ic>13;return this.cb=e}if(b&&768>=b)return this.ua=a,this.Yc=c,this.ic=d,this.sc=(d&24576)>>13,this.cb=e}return-1} -function Db(a){return this.cb+a}function Eb(a){return this.cb+a}function zb(a,b,c){return a+b<=this.Yc?this.cb+a:Bb.call(this,0,0,c)}function Bb(a,b,c){c||Fb.call(this.ja,13,0);return-1}function Ab(a,b,c){return a+b<=this.Yc?this.cb+a:Cb.call(this,0,0,c)}function Cb(a,b,c){c||Fb.call(this.ja,13,0);return-1}vb.prototype.save=function(){return[this.ua,this.cb,this.Yc,this.ic,this.sc,this.Cg]}; -vb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ua=a[0],this.cb=a[1],this.Yc=a[2],this.ic=a[3],this.sc=a[4],this.Cg=a[5])};function wb(a,b){void 0===b&&(b=!!(a.ja.cd&1));b?(a.load=yb,a.Gc=zb,a.Nb=Ab):(a.load=xb,a.Gc=Db,a.Nb=Eb)} -function Gb(a){this.Ca=a.model||8088;var b=0;switch(this.Ca){default:case 8088:b=4772727;break;case 80286:b=6E6}eb.call(this,a,b);this.Li=61442;this.Ef=4;this.we=255;this.ti=4;this.Z=5;this.na=6;this.ba=7;this.ca=8;this.P=9;this.U=11;this.V=12;this.Zd=4;this.zj=60;this.Aj=83;this.Ab=3;this.$a=9;this.Pb=16;this.sg=1;this.Ej=19;this.Gj=28;this.Ij=16;this.Hj=21;this.Fj=37;this.Cj=2;this.Mh=9;this.Dj=5;this.Bj=33;this.Oh=10;this.Nh=8;this.of=3;this.nf=15;this.Wj=51;this.Xj=1;this.Yj=2;this.Zj=4;this.Vj= -32;this.ak=this.Ph=15;this.Bb=16;this.Cb=4;this.ck=11;this.bk=18;this.$j=24;this.kb=4;this.dk=2;this.Qh=16;this.ek=17;this.Vh=18;this.fk=19;this.Uh=5;this.Wh=6;this.kk=2;this.jk=8;this.hk=9;this.Yh=this.Xh=this.gk=this.ik=10;this.Kj=80;this.Mj=144;this.Jj=86;this.Lj=154;this.Oj=101;this.Qj=165;this.Nj=107;this.Pj=171;this.mk=70;this.ok=113;this.lk=76;this.nk=124;this.Sj=80;this.Uj=128;this.Rj=86;this.Tj=134;this.qf=3;this.pf=16;this.ci=10;this.bi=8;this.pk=51;this.Qb=8;this.qk=17;this.rk=36;this.Xb= -11;this.sk=16;this.rf=10;this.qb=2;this.Jh=18;this.Kh=9-this.qb;this.Lh=17-this.qb;this.Rh=12;this.Sh=9-this.qb;this.Th=13-this.qb;this.Zh=18;this.$h=9-this.qb;this.ai=17-this.qb;this.di=15;this.ei=9-this.qb;this.fi=15-this.qb;this.ji=11;this.ki=9-this.qb;this.li=10-this.qb;this.tk=8;this.wk=12;this.uk=18;this.vk=17;this.xk=15;this.hi=8;this.gi=20;this.ii=2;this.oi=3;this.sf=9;this.ni=5;this.mi=11;this.qi=4;this.pi=17;this.yk=11;this.Ja=Hb.slice();80186<=this.Ca&&(this.we=31,this.Ja[15]=G,this.Ja[96]= -Ib,this.Ja[97]=Jb,this.Ja[98]=Kb,this.Ja[99]=G,this.Ja[100]=G,this.Ja[101]=G,this.Ja[102]=G,this.Ja[103]=G,this.Ja[104]=Lb,this.Ja[105]=Mb,this.Ja[106]=Nb,this.Ja[107]=Ob,this.Ja[108]=Pb,this.Ja[109]=Qb,this.Ja[110]=Rb,this.Ja[111]=Sb,this.Ja[192]=Tb,this.Ja[193]=Ub,this.Ja[200]=Vb,this.Ja[200]=Wb,this.Ja[241]=Xb,Yb[7]=Zb,$b[7]=Zb,80286<=this.Ca&&(this.Li=2,this.Ef=0,this.Ja[15]=ac,this.Ja[99]=bc,this.Ja[84]=cc,this.P=this.ca=this.ba=this.na=this.Z=this.ti=0,this.V=this.U=1,this.Zd=3,this.zj=14,this.Aj= -16,this.Ab=2,this.Pb=this.$a=7,this.sg=0,this.Ej=7,this.Gj=13,this.Ij=7,this.Hj=11,this.Fj=16,this.Cj=3,this.Mh=6,this.Dj=2,this.Bj=13,this.Nh=this.Oh=5,this.of=2,this.nf=7,this.Wj=23,this.Xj=0,this.Yj=1,this.Zj=3,this.Vj=17,this.Ph=7,this.ak=11,this.Bb=7,this.Cb=3,this.ck=7,this.bk=11,this.$j=15,this.kb=2,this.dk=3,this.Qh=7,this.fk=this.Vh=this.ek=8,this.Wh=this.Uh=4,this.kk=2,this.jk=3,this.hk=5,this.ik=2,this.gk=3,this.Xh=5,this.Yh=3,this.Kj=14,this.Mj=22,this.Jj=17,this.Lj=25,this.Oj=17,this.Qj= -25,this.Nj=20,this.Pj=28,this.mk=13,this.ok=21,this.lk=16,this.nk=24,this.Sj=13,this.Uj=21,this.Rj=16,this.Tj=24,this.qf=2,this.pf=7,this.bi=this.ci=5,this.pk=19,this.qk=this.Qb=5,this.rk=17,this.Xb=3,this.sk=5,this.rf=3,this.qb=0,this.Jh=8,this.Kh=5,this.Lh=9,this.Sh=this.Rh=5,this.Th=4,this.$h=this.Zh=5,this.ai=4,this.di=7,this.ei=5,this.fi=8,this.ji=3,this.ki=4,this.li=3,this.wk=this.tk=11,this.vk=this.uk=15,this.xk=7,this.hi=5,this.gi=8,this.ii=0,this.oi=2,this.sf=6,this.ni=3,this.mi=6,this.qi= -3,this.yk=this.pi=5));this.Uk=[];this.Mi=[];this.Ug=0;this.xa=[];this.Je=this.ub=this.Hb=this.Ya=this.Nd=0;this.S=this.fl;this.T=this.gl;this.N=this.hm;this.O=this.im;this.Q=this.Cn;this.R=this.Dn;dc(this)}y(eb,Gb);g=Gb.prototype;g.xh=function(a,b,c,d,e){this.xa=a;this.Je=this.ub=b;this.Hb=c;this.Ya=d;this.Nd=e};g.reset=function(){this.pc&&lb(this);dc(this);ib(this);this.Vc=!1}; -function dc(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.cd=65520;a.Qc=0;a.ke=1023;a.oc={ui:0,ua:0,ic:0,ig:-1};a.Da=new vb(a,"CS");a.Zb=new vb(a,"DS");a.Sb=new vb(a,"SS");a.fb=new vb(a,"ES");a.Mk=new vb(a,"ZERO");ec(a,0,65535);80286<=a.Ca&&(a.Pc=a.Ie=0,a.ze=new vb(a,"LDT",!0),a.Eg=new vb(a,"TSS",!0),a.rb=new vb(a,"VER",!0),ec(a,65520,61440),a.Da.cb=16711680);fc(a,0);gc(a);a.Ta=0;a.lb=a.wf=-1;a.Pf=0;a.da=a.Aa=-1;a.C=a.Zb;a.M=a.Sb;a.Y=a.pa=0} -g.nj=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.qa+this.Da.ua+this.Zb.ua+this.Sb.ua+this.fb.ua+hc(this)|0};function ic(a,b){var c=a.Mi[b];if(void 0!==c){for(;0>1?128:0} -function Ac(a){return(a.fa^a.ha^a.fa>>1)&a.$>>1?2048:0}function Bc(a){a.W&=~a.$}function Cc(a){a.ha=a.fa&16|a.ha&-17}function Dc(a){a.W|=a.$-1}function Ec(a){a.fa&=~a.$;a.ha=a.fa&32896|a.ha&-32897}function Fc(a){a.W|=a.$}function Gc(a){a.ha=~(a.fa&16)&16|a.ha&-17}function Hc(a){a.W&=~(a.$-1)}function Ic(a){zc(a)||(a.fa^=a.$>>1|a.$>>2,a.ha^=32896)}function Jc(a){a.fa|=a.$;a.ha=a.fa&32896|a.ha&-32897}function hc(a){return a.Fa&-2262|vc(a)|wc(a)|xc(a)|yc(a)|zc(a)|Ac(a)} -function fc(a,b){a.$=256;a.W=a.fa=a.ha=0;b&1&&Fc(a);b&4||(a.fa|=1);b&16&&(a.ha|=16);b&64||Dc(a);b&128&&Ic(a);b&2048&&Jc(a);a.Fa=a.Fa&-1793|b&1792|a.Li;a.Fa&256&&(a.Ta|=2,a.Y|=4)} -g.sb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.oa[c]=d;e=!0;break;default:e=eb.prototype.sb.call(this,a,b,c,d)}return e};function Kc(a,b){return a.xa[(b&a.ub)>>a.Hb].tc(b&a.Ya)} -function F(a,b){var c=b&a.Ya,d=(b&a.ub)>>a.Hb;a.A-=a.ti;return c!=a.Ya?a.xa[d].un(c):a.xa[d++].tc(c)|a.xa[d&a.Nd].tc(0)<<8}function Lc(a,b,c){a.xa[(b&a.ub)>>a.Hb].vc(b&a.Ya,c&255)}function Mc(a,b,c){var d=b&a.Ya;b=(b&a.ub)>>a.Hb;a.A-=a.ti;d!=a.Ya?a.xa[b].Gn(d,c&65535):(a.xa[b++].vc(d,c&255),a.xa[b&a.Nd].vc(0,c>>8&255))}g.fl=function(a,b){this.Af=a;this.da=a.Gc(this.tf=b,0);return this.Y&1?0:Kc(this,this.da)};g.gl=function(a,b){this.Af=a;this.da=a.Gc(this.tf=b,1);return this.Y&1?0:F(this,this.da)}; -g.hm=function(a,b){this.Af=a;this.Aa=this.da=a.Gc(this.tf=b,0);return this.Y&1?0:Kc(this,this.da)};g.im=function(a,b){this.Af=a;this.Aa=this.da=a.Gc(this.tf=b,1);return this.Y&1?0:F(this,this.da)};g.Cn=function(a){this.Y&2||Lc(this,this.Af.Nb(this.tf,1),a)};g.Dn=function(a){this.Y&2||Mc(this,this.Af.Nb(this.tf,2),a)};g.aa=function(){var a=Kc(this,this.Ba);this.Ba=this.Da.cb+(this.qa=this.qa+1&65535);return a}; -g.L=function(){var a=Kc(this,this.Ba)<<24>>24;this.Ba=this.Da.cb+(this.qa=this.qa+1&65535);return a&65535};g.K=function(){var a=F(this,this.Ba);this.Ba=this.Da.cb+(this.qa=this.qa+2&65535);return a};g.za=function(){var a=this.X;this.X=this.X+2&65535;return F(this,this.Sb.Gc(a,1))};function K(a,b){var c=a.X=a.X-2&65535;Mc(a,a.Sb.Nb(c,1),b)} -g.Xe=function(){E(this,"AX",this.G);E(this,"BX",this.B);E(this,"CX",this.I);E(this,"DX",this.J);E(this,"SP",this.X);E(this,"BP",this.H);E(this,"SI",this.F);E(this,"DI",this.D);E(this,"CS",this.Da.ua);E(this,"DS",this.Zb.ua);E(this,"SS",this.Sb.ua);E(this,"ES",this.fb.ua);E(this,"IP",this.qa);var a=hc(this);E(this,"PS",a);E(this,"C",a&1?1:0,1);E(this,"P",a&4?1:0,1);E(this,"A",a&16?1:0,1);E(this,"Z",a&64?1:0,1);E(this,"S",a&128?1:0,1);E(this,"T",a&256?1:0,1);E(this,"I",a&512?1:0,1);E(this,"D",a&1024? -1:0,1);E(this,"O",a&2048?1:0,1);this.oa.speed&&(this.oa.speed.innerHTML=this.pc&&this.Ic?this.Ic.toFixed(2)+"Mhz":"Stopped")}; -g.Ok=function(a){this.ih=!0;this.$c=this.A=a;this.ga&&tb(this.ga);a||!this.Ga||this.Ga.Vn(this.Ga.On)||(this.Y|=4);do{if(a=this.Y&240)this.pa|=a;else if(this.vg=this.Ba,this.da=this.Aa=-1,this.C=this.Zb,this.M=this.Sb,this.pa=this.Y&256,this.Ta){a:{if(!(this.Y&4))if(this.Ta&1&&this.Fa&512){if(a=Nc(this.ga),-1<=a&&(this.Ta&=-2,0<=a)){this.Ta&=-5;Oc.call(this,a,null,11);break a}}else if(this.Ta&2){this.Ta&=-3;Oc.call(this,1,null,11);break a}if(a=this.Ta&8){a=this.ga;for(var b=!1,c=0;cthis.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=a+b)&255} -function Rc(a,b){this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a|b)&255}function Sc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return this.W&255}function Tc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return this.W&255} -function Uc(a,b){this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a&b)&255}function Vc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=a-b)&255}function Wc(a,b){this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a^b)&255}function Xc(a,b){this.ha=a^b;this.$=256;this.W=this.fa=a-b;this.A-=0>this.Aa?0>this.da?this.Ab:this.Mh:this.$a;this.Y|=2;return a} -function Yc(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=a+b)&65535}function Zc(a,b){this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a|b)&65535}function $c(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return this.W&65535} -function ad(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return this.W&65535}function bd(a,b){this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a&b)&65535}function cd(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=a-b)&65535} -function dd(a,b){this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a^b)&65535}function ed(a,b){this.ha=a^b;this.$=65536;this.W=this.fa=a-b;this.A-=0>this.Aa?0>this.da?this.Ab:this.Mh:this.$a;this.Y|=2;return a}function fd(a,b){this.W=this.W&this.$-1|(a&b?this.$:0);(a^a>>1)&b>>1?Jc(this):Ec(this)}function gd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<>8-e)&255:d=a<<8;fd.call(this,d,256)}return c} -function hd(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<>16-e)&65535:d=a<<16;fd.call(this,d,65536)}return c}function id(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);fd.call(this,d,256)}return c}function jd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);fd.call(this,d,65536)}return c}function nd(a,b){var c=a;if(b){var d;(d=(b&this.we)%9)?(d=a<>9-d,c=d&255):d=a|(this.W&this.$?1:0)<<8;fd.call(this,d,256)}return c} -function od(a,b){var c=a;if(b){var d;(d=(b&this.we)%17)?(d=a<>17-d,c=d&65535):d=a|(this.W&this.$?1:0)<<16;fd.call(this,d,65536)}return c}function pd(a,b){var c=a;b&&(c=(b&this.we)%9,c=a>>c|(this.W&this.$?1:0)<<8-c|a<<9-c,fd.call(this,c,256),c&=255);return c}function qd(a,b){var c=a;b&&(c=(b&this.we)%17,c=a>>c|(this.W&this.$?1:0)<<16-c|a<<17-c,fd.call(this,c,65536),c&=65535);return c} -function rd(a,b){var c=a;b&&(c=8>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|256:this.W&-257;this.ha=a^this.W;this.$=256;a=this.W}return a&255} -function ud(a,b){if(b){var c=16>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|65536:this.W&-65537;this.ha=a^this.W;this.$=65536;a=this.W}return a&65535}function vd(a,b){if(b){8>24>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|256:this.W&-257;this.ha=a^this.W;this.$=256;a=this.W}return a&255}function wd(a,b){if(b){16>16>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|65536:this.W&-65537;this.ha=a^this.W;this.$=65536;a=this.W}return a&65535} -function xd(){this.A-=0>this.da?2:this.xk;return 1}function yd(){var a=this.I&this.we;this.A-=(0>this.da?this.hi:this.gi)+(a<this.da?this.hi:this.gi)+(a<this.Aa?this.Qb:this.qk;return b},Bd,Bd,Bd,Bd,Bd,Bd,Bd],Fd=[function(a,b){this.A-=0>this.Aa?this.ik:this.gk;return b},M,M,M,M,M,M,M],Gd=[gd,id,nd,pd,rd,td,M,vd],Hd=[hd,jd,od,qd,sd,ud,M,wd],Jd=[function(a,b){b=this.aa();this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.da?this.ni:this.mi;this.Y|=2;return a},M,function(a){this.A-=0>this.da?this.qf:this.pf;return a^255},function(a,b){b=0;this.ha=a^b;this.$=256; -this.A-=0>this.da?this.qf:this.pf;return(this.W=this.fa=b-a)&255},function(a){this.G=this.lb=(this.W=(this.G&255)*a)&65535;this.ha=this.fa=this.W;this.$=256;this.G&65280?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?this.mk:this.lk;this.Y|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.lb=b&65535;this.W=this.ha=this.fa=b;this.$=256;127b?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?this.Sj:this.Rj;this.Y|=2;return a},function(a){if(!a)return Id.call(this), -a;var b=this.G/a;if(255this.da?this.Kj:this.Jj;this.Y|=2;return a},function(a){if(!a)return Id.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Id.call(this),a;this.lb=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.fa=this.ha=this.W=b|256;this.$=256;this.A-=0>this.da?this.Oj:this.Nj;this.Y|=2;return a}],Kd=[function(a,b){b=this.K();this.W=this.fa=this.ha= -a&b;this.$=65536;this.A-=0>this.da?this.ni:this.mi;this.Y|=2;return a},M,function(a){this.A-=0>this.da?this.qf:this.pf;return a^65535},function(a,b){b=0;this.ha=a^b;this.$=65536;this.A-=0>this.da?this.qf:this.pf;return(this.W=this.fa=b-a)&65535},function(a){this.lb=this.G=(this.W=this.G*a)&65535;this.wf=this.J=this.W>>16&65535;this.ha=this.fa=this.W;this.$=65536;this.J?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?this.ok:this.nk;this.Y|=2;return a},function(a){var b=(this.G<<16>>16)* -(a<<16>>16);this.G=this.lb=b&65535;this.J=this.wf=b>>16&65535;this.W=this.ha=this.fa=b;this.$=65536;32767b?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?this.Uj:this.Tj;this.Y|=2;return a},function(a,b){if(!a)return Id.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return Id.call(this),a;this.lb=this.G=c&65535;this.wf=this.J=b%a&65535;this.fa=this.ha=this.W=c|65536;this.$=65536;this.A-=0>this.da?this.Mj:this.Lj;this.Y|=2;return a},function(a,b){if(!a)return Id.call(this), -a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Id.call(this),a;this.lb=this.G=d&65535;this.wf=this.J=b%c&65535;this.fa=this.ha=this.W=d|65536;this.$=65536;this.A-=0>this.da?this.Qj:this.Pj;this.Y|=2;return a}],Yb=[function(a){this.ha=a;a=(this.fa=a+1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.of:this.nf;return a},function(a){this.ha=a;a=(this.fa=a-1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.of:this.nf; -return a},M,M,M,M,M,M],$b=[function(a){this.ha=a;a=(this.fa=a+1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.of:this.nf;return a},function(a){this.ha=a;a=(this.fa=a-1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.of:this.nf;return a},function(a){K(this,this.qa);I(this,a);this.A-=0>this.da?this.Ij:this.Hj;this.Y|=2;return a},function(a){if(0>this.da)return M.call(this,a);K(this,this.Da.ua);K(this,this.qa);ec(this,a,F(this,this.da+2));this.A-= -this.Fj;this.Y|=2;return a},function(a){I(this,a);this.A-=0>this.da?this.ck:this.bk;this.Y|=2;return a},function(a){if(0>this.da)return M.call(this,a);ec(this,a,F(this,this.da+2));this.A-=this.$j;this.Y|=2;return a},function(a){var b=a;this.Y&512&&(a=a-2&65535,80286>this.Ca&&(b=a));K(this,b);this.A-=0>this.da?this.Xb:this.sk;this.Y|=2;return a},Bd],Ld=[gd,id,nd,pd,rd,td,M,vd],Md=[hd,jd,od,qd,sd,ud,M,wd];function Nd(a,b){this.A-=0>this.Aa?0>this.da?this.kk:this.jk:this.hk;return b} -function Od(){return Nd.call(this,0,this.lb)}function Pd(a,b){this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.Aa?0>this.da?this.oi:this.sf:this.sf;this.Y|=2;return a}function Qd(a,b){this.W=this.fa=this.ha=a&b;this.$=65536;this.A-=0>this.Aa?0>this.da?this.oi:this.sf:this.sf;this.Y|=2;return a}function Rd(a,b){var c=(b<<16>>16)*(this.aa()<<24>>24);this.W=this.ha=this.fa=c;this.$=256;32767c?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?21:24;return c&65535} -function Sd(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.W=this.ha=this.fa=c;this.$=65536;32767c?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?21:24;return c&65535}function Td(a){return a}function Ud(a){if(0>this.da)return N.call(this),a;this.A-=this.dk;return this.da}function Vd(a,b){if(0>this.da)return N.call(this),a;sc(this,F(this,this.da+2));this.A-=this.Qh;return b} -function Wd(a,b){if(0>this.da)return N.call(this),a;uc(this,F(this,this.da+2));this.A-=this.Qh;return b}function Xd(a){if(0>this.da)return G.call(this),a;var b=a<<16>>16,c=F(this,this.da)<<16>>16,d=F(this,this.da+2)<<16>>16;this.A-=this.Bj;if(bd)I(this,this.vg-this.Da.cb),Oc.call(this,5,null,0);this.Y|=2;return a}function Yd(a,b){this.A-=10+(0>this.da?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Hc(this),a;Dc(this);return a} -function Zd(a,b){this.A-=14+(0>this.da?0:2);if(0<=this.rb.load(b,!0)&&this.rb.sc>=(this.Da.ua&3)&&this.rb.sc>=(b&3))return Hc(this),this.rb.ic&65280;Dc(this);return a}function $d(a,b){this.A-=14+(0>this.da?0:2);if(b&65528&&0<=this.rb.load(b,!0)&&(3072==(this.rb.ic&3072)||this.rb.sc>=(this.Da.ua&3))&&this.rb.sc>=(b&3))return Hc(this),this.rb.Yc;Dc(this);return a} -function ae(a,b){if(0>this.da){switch(this.Pf&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.qi}else this.Aa=this.da,this.Q(a),this.A-=this.pi;return b} -function be(a,b){if(0>this.da){switch(this.Pf&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.X=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.qi}else this.Aa=this.da,this.R(a),this.A-=this.pi;return b}function Oc(a,b,c){qc(this,a)&&(K(this,hc(this)),this.Fa&=this.oc.ig,K(this,this.Da.ua),K(this,this.qa),null!=b&&K(this,b),ec(this,this.oc.ui,this.oc.ua),this.A-=this.Wj+c)} -function Id(){I(this,this.vg-this.Da.cb);Oc.call(this,0,null,2)}function Fb(a,b){this.Ga&&this.Ga.message("Fault 0x"+aa(a)+(null!=b?" (0x"+h(b,4)+")":"")+" on opcode 0x"+aa(Ua(this.ma,this.Ba))+" at "+ba(this.qa,this.Da.ua));80186<=this.Ca&&(I(this,this.vg-this.Da.cb),Oc.call(this,a,b,0))}function G(){Fb.call(this,6);lb(this)}function N(){I(this,this.vg-this.Da.cb);Ja(this,"Undefined opcode 0x"+aa(Ua(this.ma,this.Ba))+" at "+ba(this.qa,this.Da.ua));lb(this)} -function ce(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}function de(a){a=a.call(this,this.G&255,this.I&255);this.G=this.G&-256|a}function ee(a){a=a.call(this,this.G&255,this.J&255);this.G=this.G&-256|a}function fe(a){a=a.call(this,this.G&255,this.B&255);this.G=this.G&-256|a}function ge(a){a=a.call(this,this.G&255,this.G>>8);this.G=this.G&-256|a}function he(a){a=a.call(this,this.G&255,this.I>>8);this.G=this.G&-256|a} -function ie(a){a=a.call(this,this.G&255,this.J>>8);this.G=this.G&-256|a}function je(a){a=a.call(this,this.G&255,this.B>>8);this.G=this.G&-256|a}function ke(a){a=a.call(this,this.I&255,this.G&255);this.I=this.I&-256|a}function le(a){a=a.call(this,this.I&255,this.I&255);this.I=this.I&-256|a}function me(a){a=a.call(this,this.I&255,this.J&255);this.I=this.I&-256|a}function ne(a){a=a.call(this,this.I&255,this.B&255);this.I=this.I&-256|a} -function oe(a){a=a.call(this,this.I&255,this.G>>8);this.I=this.I&-256|a}function pe(a){a=a.call(this,this.I&255,this.I>>8);this.I=this.I&-256|a}function qe(a){a=a.call(this,this.I&255,this.J>>8);this.I=this.I&-256|a}function re(a){a=a.call(this,this.I&255,this.B>>8);this.I=this.I&-256|a}function se(a){a=a.call(this,this.J&255,this.G&255);this.J=this.J&-256|a}function te(a){a=a.call(this,this.J&255,this.I&255);this.J=this.J&-256|a} -function ue(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function ve(a){a=a.call(this,this.J&255,this.B&255);this.J=this.J&-256|a}function we(a){a=a.call(this,this.J&255,this.G>>8);this.J=this.J&-256|a}function xe(a){a=a.call(this,this.J&255,this.I>>8);this.J=this.J&-256|a}function ye(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function ze(a){a=a.call(this,this.J&255,this.B>>8);this.J=this.J&-256|a} -function Ae(a){a=a.call(this,this.B&255,this.G&255);this.B=this.B&-256|a}function Be(a){a=a.call(this,this.B&255,this.I&255);this.B=this.B&-256|a}function Ce(a){a=a.call(this,this.B&255,this.J&255);this.B=this.B&-256|a}function De(a){a=a.call(this,this.B&255,this.B&255);this.B=this.B&-256|a}function Ee(a){a=a.call(this,this.B&255,this.G>>8);this.B=this.B&-256|a}function Fe(a){a=a.call(this,this.B&255,this.I>>8);this.B=this.B&-256|a} -function Ge(a){a=a.call(this,this.B&255,this.J>>8);this.B=this.B&-256|a}function He(a){a=a.call(this,this.B&255,this.B>>8);this.B=this.B&-256|a}function Ie(a){a=a.call(this,this.G>>8,this.G&255);this.G=this.G&255|a<<8}function Je(a){a=a.call(this,this.G>>8,this.I&255);this.G=this.G&255|a<<8}function Ke(a){a=a.call(this,this.G>>8,this.J&255);this.G=this.G&255|a<<8}function Le(a){a=a.call(this,this.G>>8,this.B&255);this.G=this.G&255|a<<8} -function Me(a){a=a.call(this,this.G>>8,this.G>>8);this.G=this.G&255|a<<8}function Ne(a){a=a.call(this,this.G>>8,this.I>>8);this.G=this.G&255|a<<8}function Oe(a){a=a.call(this,this.G>>8,this.J>>8);this.G=this.G&255|a<<8}function Pe(a){a=a.call(this,this.G>>8,this.B>>8);this.G=this.G&255|a<<8}function Qe(a){a=a.call(this,this.I>>8,this.G&255);this.I=this.I&255|a<<8}function Re(a){a=a.call(this,this.I>>8,this.I&255);this.I=this.I&255|a<<8} -function Se(a){a=a.call(this,this.I>>8,this.J&255);this.I=this.I&255|a<<8}function Te(a){a=a.call(this,this.I>>8,this.B&255);this.I=this.I&255|a<<8}function Ue(a){a=a.call(this,this.I>>8,this.G>>8);this.I=this.I&255|a<<8}function Ve(a){a=a.call(this,this.I>>8,this.I>>8);this.I=this.I&255|a<<8}function We(a){a=a.call(this,this.I>>8,this.J>>8);this.I=this.I&255|a<<8}function Xe(a){a=a.call(this,this.I>>8,this.B>>8);this.I=this.I&255|a<<8} -function Ye(a){a=a.call(this,this.J>>8,this.G&255);this.J=this.J&255|a<<8}function Ze(a){a=a.call(this,this.J>>8,this.I&255);this.J=this.J&255|a<<8}function $e(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function af(a){a=a.call(this,this.J>>8,this.B&255);this.J=this.J&255|a<<8}function bf(a){a=a.call(this,this.J>>8,this.G>>8);this.J=this.J&255|a<<8}function cf(a){a=a.call(this,this.J>>8,this.I>>8);this.J=this.J&255|a<<8} -function df(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function ef(a){a=a.call(this,this.J>>8,this.B>>8);this.J=this.J&255|a<<8}function ff(a){a=a.call(this,this.B>>8,this.G&255);this.B=this.B&255|a<<8}function gf(a){a=a.call(this,this.B>>8,this.I&255);this.B=this.B&255|a<<8}function hf(a){a=a.call(this,this.B>>8,this.J&255);this.B=this.B&255|a<<8}function jf(a){a=a.call(this,this.B>>8,this.B&255);this.B=this.B&255|a<<8} -function kf(a){a=a.call(this,this.B>>8,this.G>>8);this.B=this.B&255|a<<8}function lf(a){a=a.call(this,this.B>>8,this.I>>8);this.B=this.B&255|a<<8}function mf(a){a=a.call(this,this.B>>8,this.J>>8);this.B=this.B&255|a<<8}function nf(a){a=a.call(this,this.B>>8,this.B>>8);this.B=this.B&255|a<<8}function of(a){this.G=a.call(this,this.G,this.G)}function pf(a){this.G=a.call(this,this.G,this.I)}function qf(a){this.G=a.call(this,this.G,this.J)}function rf(a){this.G=a.call(this,this.G,this.B)} -function sf(a){this.G=a.call(this,this.G,this.X)}function tf(a){this.G=a.call(this,this.G,this.H)}function uf(a){this.G=a.call(this,this.G,this.F)}function vf(a){this.G=a.call(this,this.G,this.D)}function wf(a){this.I=a.call(this,this.I,this.G)}function xf(a){this.I=a.call(this,this.I,this.I)}function yf(a){this.I=a.call(this,this.I,this.J)}function zf(a){this.I=a.call(this,this.I,this.B)}function Af(a){this.I=a.call(this,this.I,this.X)}function Bf(a){this.I=a.call(this,this.I,this.H)} -function Cf(a){this.I=a.call(this,this.I,this.F)}function Df(a){this.I=a.call(this,this.I,this.D)}function Ef(a){this.J=a.call(this,this.J,this.G)}function Ff(a){this.J=a.call(this,this.J,this.I)}function Gf(a){this.J=a.call(this,this.J,this.J)}function Hf(a){this.J=a.call(this,this.J,this.B)}function If(a){this.J=a.call(this,this.J,this.X)}function Jf(a){this.J=a.call(this,this.J,this.H)}function Kf(a){this.J=a.call(this,this.J,this.F)}function Lf(a){this.J=a.call(this,this.J,this.D)} -function Mf(a){this.B=a.call(this,this.B,this.G)}function Nf(a){this.B=a.call(this,this.B,this.I)}function Of(a){this.B=a.call(this,this.B,this.J)}function Pf(a){this.B=a.call(this,this.B,this.B)}function Qf(a){this.B=a.call(this,this.B,this.X)}function Rf(a){this.B=a.call(this,this.B,this.H)}function Sf(a){this.B=a.call(this,this.B,this.F)}function Tf(a){this.B=a.call(this,this.B,this.D)}function Uf(a){this.X=a.call(this,this.X,this.G)}function Vf(a){this.X=a.call(this,this.X,this.I)} -function Wf(a){this.X=a.call(this,this.X,this.J)}function Xf(a){this.X=a.call(this,this.X,this.B)}function Yf(a){this.X=a.call(this,this.X,this.X)}function Zf(a){this.X=a.call(this,this.X,this.H)}function $f(a){this.X=a.call(this,this.X,this.F)}function ag(a){this.X=a.call(this,this.X,this.D)}function bg(a){this.H=a.call(this,this.H,this.G)}function cg(a){this.H=a.call(this,this.H,this.I)}function dg(a){this.H=a.call(this,this.H,this.J)}function eg(a){this.H=a.call(this,this.H,this.B)} -function fg(a){this.H=a.call(this,this.H,this.X)}function gg(a){this.H=a.call(this,this.H,this.H)}function hg(a){this.H=a.call(this,this.H,this.F)}function ig(a){this.H=a.call(this,this.H,this.D)}function jg(a){this.F=a.call(this,this.F,this.G)}function kg(a){this.F=a.call(this,this.F,this.I)}function lg(a){this.F=a.call(this,this.F,this.J)}function mg(a){this.F=a.call(this,this.F,this.B)}function ng(a){this.F=a.call(this,this.F,this.X)}function og(a){this.F=a.call(this,this.F,this.H)} -function pg(a){this.F=a.call(this,this.F,this.F)}function qg(a){this.F=a.call(this,this.F,this.D)}function rg(a){this.D=a.call(this,this.D,this.G)}function sg(a){this.D=a.call(this,this.D,this.I)}function tg(a){this.D=a.call(this,this.D,this.J)}function ug(a){this.D=a.call(this,this.D,this.B)}function vg(a){this.D=a.call(this,this.D,this.X)}function wg(a){this.D=a.call(this,this.D,this.H)}function xg(a){this.D=a.call(this,this.D,this.F)}function yg(a){this.D=a.call(this,this.D,this.D)} -var zg=[function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.G&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.F),this.G&255);this.Q(a);this.A-=this.Z},function(a){a= +v.prototype={toString:function(){return this.name?this.name:this.id||this.type},tb:function(a,b,c,d){switch(c){case "clear":return this.oa[c]||(this.oa[c]=d,d.onclick=function(a){return function(){a.oa.print&&(a.oa.print.value="")}}(this)),!0;case "print":return this.oa[c]||(this.bh=this.oa[c]=d,d.value="",this.ac=function(a){return function(b,c){8192=this.ff?12:14;this.nc=1<>2;this.$a=this.nc-1;this.Xf=(this.Le+this.nc)/this.nc|0;this.Pd=this.Xf-1;this.Kf=[];this.Lf=[];this.Ch();this.Oa()}y(v,Ja);Ja.prototype.Ch=function(){this.ya=Array(this.Xf);for(var a=0;a>a.Ib;0>this.Ib;0>a.Ib;0>a.Ib].Ei(b&a.$a)}function Pa(a,b){var c=b&a.$a,d=(b&a.vb)>>a.Ib;return c!=a.$a?a.ya[d].zn(c):a.ya[d++].Ei(c)|a.ya[d&a.Pd].Ei(0)<<8} +function Ra(a,b,c){a.ya[(b&a.vb)>>a.Ib].Mi(b&a.$a,c&255)}function Sa(a,b,c){var d=b&a.$a;b=(b&a.vb)>>a.Ib;d!=a.$a?a.ya[b].Ln(d,c&65535):(a.ya[b++].Mi(d,c&255),a.ya[b&a.Pd].Mi(0,c>>8&255))}function Ta(a){for(var b=0,c=[],d=0;d>2),this.Fd(Ya);else{this.la=Array(b>>2);for(d=0;d>2]>>((a&3)<<3)&255},An:function(a){var b=a>>2;a=(a&3)<<3;var c=this.la[b]>>a;return 24>a?c&65535:c&255|(this.la[b+1]&255)<<8},In:function(a,b){var c=a>>2,d=(a&3)<<3;this.la[c]=this.la[c]&~(255<>2,d=(a&3)<<3;24>d?this.la[c]=this.la[c]&~(65535<>8);this.Qa=!0},save:function(){var a,b;if(this.ea)a=null;else if(Ga)for(a=Array(this.dj>>2),b=0;bc&&(c=60);2>c&&(c=2);var d=1;b&&1a.ng&&(c=Math.round(c/a.xd));return c}function cb(a){a.Lc=0;a.qg=1;a.ce=a.Ad=a.bd=a.A=0;db(a);ib(a,1)} +function ib(a,b,c){void 0!==b&&(0.8>a.Lc/a.ef&&(b=1),a.xd=b,a.ef=a.ng*a.xd,b=a.ef.toFixed(2)+"Mhz",a.oa.setSpeed&&(a.oa.setSpeed.innerHTML=b),a.ac("target speed: "+b),c&&a.Ce());jb(a,a.Ad);a.Ad=0;a.we=ia();a.$d=0;kb(a)} +function ab(a,b){if(Da(a,!0)){a.rc||(ib(a),a.Fa&&a.Fa.start(a.we,lb(a)),a.rc=!0,a.ga&&mb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Halt"),b&&a.Ce());a.xi>=a.cd&&kb(a,!0);a.nf=0;a.pg=ia();if(a.$d){var c=a.pg-a.$d;c>a.xj&&(a.we+=c,a.we>a.pg&&(a.we=a.pg))}try{do{a.Sk(a.eg?1:Math.round(a.tm/a.qg));var d=a.bd-a.A;a.Ad+=d;a.nf+=d;jb(a,0,!0);var c=a,e=d;if(c.eg){var f=!1;c.sg=c.sg+c.rj()|0;c.xe-=e;0>=c.xe&&(c.xe+=c.hf,f=!0);0<=c.jf&&c.jf<=lb(c)&&(c.hf=c.jf=-1,db(c),gb(c),f=!0);f&&c.ac(lb(c)+" cycles: checksum="+ +h(c.sg))}a.lf-=d;0>=a.lf&&(a.lf+=a.Bj,a.af());a.kf-=d;0>=a.kf&&(a.kf+=a.Aj,a.$e());a.mf-=d;if(0>=a.mf){a.mf+=a.Jh;break}}while(a.rc)}catch(l){gb(a);a.af();a.$e();a.Fa&&a.Fa.stop(ia(),lb(a));Da(a,!1);Fa(a,l.message);return}d=setTimeout;c=a.Am;a.$d=ia();e=a.xj;a.nf&&(e=Math.round(e*a.nf/a.Jh));e-=a.$d-a.pg;if(f=a.$d-a.we)a.Lc=Math.round(a.Ad/(10*f))/100,864E5<=f&&(a.ce=0,a.ga&&nb(a.ga,!0),ib(a));if(0>e||a.Lc>13;return this.eb=e}if(b&&768>=b)return this.ua=a,this.$c=c,this.kc=d,this.uc=(d&24576)>>13,this.eb=e}return-1} +function yb(a){return this.eb+a}function zb(a){return this.eb+a}function ub(a,b,c){return a+b<=this.$c?this.eb+a:wb.call(this,0,0,c)}function wb(a,b,c){c||Ab.call(this.ja,13,0);return-1}function vb(a,b,c){return a+b<=this.$c?this.eb+a:xb.call(this,0,0,c)}function xb(a,b,c){c||Ab.call(this.ja,13,0);return-1}pb.prototype.save=function(){return[this.ua,this.eb,this.$c,this.kc,this.uc,this.Gg]}; +pb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ua=a[0],this.eb=a[1],this.$c=a[2],this.kc=a[3],this.uc=a[4],this.Gg=a[5])};function rb(a,b){void 0===b&&(b=!!(a.ja.ed&1));b?(a.load=tb,a.Jc=ub,a.Ob=vb):(a.load=sb,a.Jc=yb,a.Ob=zb)} +function Bb(a){this.Da=a.model||8088;var b=0;switch(this.Da){default:case 8088:b=4772727;break;case 80286:b=6E6}$a.call(this,a,b);this.Qi=61442;this.If=4;this.ye=255;this.yi=4;this.Z=5;this.na=6;this.ba=7;this.ca=8;this.P=9;this.U=11;this.V=12;this.ae=4;this.Dj=60;this.Ej=83;this.Bb=3;this.bb=9;this.Qb=16;this.wg=1;this.Ij=19;this.Kj=28;this.Mj=16;this.Lj=21;this.Jj=37;this.Gj=2;this.Rh=9;this.Hj=5;this.Fj=33;this.Th=10;this.Sh=8;this.rf=3;this.qf=15;this.$j=51;this.ak=1;this.bk=2;this.ck=4;this.Zj= +32;this.ek=this.Uh=15;this.Cb=16;this.Db=4;this.gk=11;this.fk=18;this.dk=24;this.mb=4;this.hk=2;this.Vh=16;this.ik=17;this.$h=18;this.jk=19;this.Zh=5;this.ai=6;this.ok=2;this.nk=8;this.lk=9;this.ci=this.bi=this.kk=this.mk=10;this.Oj=80;this.Qj=144;this.Nj=86;this.Pj=154;this.Sj=101;this.Uj=165;this.Rj=107;this.Tj=171;this.qk=70;this.sk=113;this.pk=76;this.rk=124;this.Wj=80;this.Yj=128;this.Vj=86;this.Xj=134;this.tf=3;this.sf=16;this.hi=10;this.gi=8;this.tk=51;this.Rb=8;this.uk=17;this.vk=36;this.Zb= +11;this.wk=16;this.uf=10;this.rb=2;this.Oh=18;this.Ph=9-this.rb;this.Qh=17-this.rb;this.Wh=12;this.Xh=9-this.rb;this.Yh=13-this.rb;this.di=18;this.ei=9-this.rb;this.fi=17-this.rb;this.ii=15;this.ji=9-this.rb;this.ki=15-this.rb;this.oi=11;this.pi=9-this.rb;this.qi=10-this.rb;this.xk=8;this.Ak=12;this.yk=18;this.zk=17;this.Bk=15;this.mi=8;this.li=20;this.ni=2;this.ti=3;this.vf=9;this.si=5;this.ri=11;this.vi=4;this.ui=17;this.Ck=11;this.Ka=Cb.slice();80186<=this.Da&&(this.ye=31,this.Ka[15]=G,this.Ka[96]= +Db,this.Ka[97]=Eb,this.Ka[98]=Fb,this.Ka[99]=G,this.Ka[100]=G,this.Ka[101]=G,this.Ka[102]=G,this.Ka[103]=G,this.Ka[104]=Gb,this.Ka[105]=Hb,this.Ka[106]=Ib,this.Ka[107]=Jb,this.Ka[108]=Kb,this.Ka[109]=Lb,this.Ka[110]=Mb,this.Ka[111]=Nb,this.Ka[192]=Ob,this.Ka[193]=Pb,this.Ka[200]=Qb,this.Ka[200]=Rb,this.Ka[241]=Sb,Tb[7]=Ub,Vb[7]=Ub,80286<=this.Da&&(this.Qi=2,this.If=0,this.Ka[15]=Wb,this.Ka[99]=Xb,this.Ka[84]=Yb,this.P=this.ca=this.ba=this.na=this.Z=this.yi=0,this.V=this.U=1,this.ae=3,this.Dj=14,this.Ej= +16,this.Bb=2,this.Qb=this.bb=7,this.wg=0,this.Ij=7,this.Kj=13,this.Mj=7,this.Lj=11,this.Jj=16,this.Gj=3,this.Rh=6,this.Hj=2,this.Fj=13,this.Sh=this.Th=5,this.rf=2,this.qf=7,this.$j=23,this.ak=0,this.bk=1,this.ck=3,this.Zj=17,this.Uh=7,this.ek=11,this.Cb=7,this.Db=3,this.gk=7,this.fk=11,this.dk=15,this.mb=2,this.hk=3,this.Vh=7,this.jk=this.$h=this.ik=8,this.ai=this.Zh=4,this.ok=2,this.nk=3,this.lk=5,this.mk=2,this.kk=3,this.bi=5,this.ci=3,this.Oj=14,this.Qj=22,this.Nj=17,this.Pj=25,this.Sj=17,this.Uj= +25,this.Rj=20,this.Tj=28,this.qk=13,this.sk=21,this.pk=16,this.rk=24,this.Wj=13,this.Yj=21,this.Vj=16,this.Xj=24,this.tf=2,this.sf=7,this.gi=this.hi=5,this.tk=19,this.uk=this.Rb=5,this.vk=17,this.Zb=3,this.wk=5,this.uf=3,this.rb=0,this.Oh=8,this.Ph=5,this.Qh=9,this.Xh=this.Wh=5,this.Yh=4,this.ei=this.di=5,this.fi=4,this.ii=7,this.ji=5,this.ki=8,this.oi=3,this.pi=4,this.qi=3,this.Ak=this.xk=11,this.zk=this.yk=15,this.Bk=7,this.mi=5,this.li=8,this.ni=0,this.ti=2,this.vf=6,this.si=3,this.ri=6,this.vi= +3,this.Ck=this.ui=5));this.Yk=[];this.Ri=[];this.Yg=0;this.ya=[];this.Le=this.vb=this.Ib=this.$a=this.Pd=0;this.S=this.jl;this.T=this.kl;this.N=this.lm;this.O=this.mm;this.Q=this.Gn;this.R=this.Hn;Zb(this)}y($a,Bb);g=Bb.prototype;g.Ch=function(a,b,c,d,e){this.ya=a;this.Le=this.vb=b;this.Ib=c;this.$a=d;this.Pd=e};g.reset=function(){this.rc&&gb(this);Zb(this);cb(this);this.Xc=!1}; +function Zb(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.ed=65520;a.Sc=0;a.me=1023;a.qc={zi:0,ua:0,kc:0,mg:-1};a.Ea=new pb(a,"CS");a.bc=new pb(a,"DS");a.Tb=new pb(a,"SS");a.gb=new pb(a,"ES");a.Qk=new pb(a,"ZERO");$b(a,0,65535);80286<=a.Da&&(a.Rc=a.Ke=0,a.Be=new pb(a,"LDT",!0),a.Ig=new pb(a,"TSS",!0),a.sb=new pb(a,"VER",!0),$b(a,65520,61440),a.Ea.eb=16711680);ac(a,0);bc(a);a.Va=0;a.nb=a.Af=-1;a.Tf=0;a.da=a.Ba=-1;a.C=a.bc;a.M=a.Tb;a.Y=a.pa=0} +g.rj=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.qa+this.Ea.ua+this.bc.ua+this.Tb.ua+this.gb.ua+cc(this)|0};function dc(a,b){var c=a.Ri[b];null!=c&&(c(--a.Yg),delete a.Ri[b])}function bc(a,b){void 0===b&&(b=!!(a.ed&1));ec=b?fc:gc;rb(a.Ea,b);rb(a.bc,b);rb(a.Tb,b);rb(a.gb,b)} +g.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.X,this.H,this.F,this.D]);a.set(1,[this.qa,this.Ea.save(),this.bc.save(),this.Tb.save(),this.gb.save(),cc(this),null!=this.Rc?[this.ed,this.Rc,this.Ke,this.Sc,this.me,this.Be.save(),this.Ig.save()]:null]);a.set(2,[this.C.Gg,this.M.Gg,this.Y,this.pa,this.Va,this.da,this.Ba]);a.set(3,[this.qg,this.ce,this.xd]);a.set(4,Ta(this.ma));return a.data()}; +g.restore=function(a){var b;b=a[0];this.G=b[0];this.B=b[1];this.I=b[2];this.J=b[3];this.X=b[4];this.H=b[5];this.F=b[6];this.D=b[7];b=a[1];this.Ea.restore(b[1]);this.bc.restore(b[2]);this.Tb.restore(b[3]);this.gb.restore(b[4]);ac(this,b[5]);var c=b[6];c&&c.length&&(this.ed=c[0],this.Rc=c[1],this.Ke=c[2],this.Sc=c[3],this.me=c[4],this.Be.restore(c[5]),this.Ig.restore(c[6]),bc(this));I(this,b[0]);b=a[2];this.C=hc(this,b[0]);this.M=hc(this,b[1]);this.Y=b[2];this.pa=b[3];this.Va=b[4];this.da=b[5];this.Ba= +b[6];b=a[3];this.qg=b[0];this.ce=b[1];ib(this,b[2]);a:{b=this.ma;a=a[4];for(c=0;c>1?128:0} +function vc(a){return(a.fa^a.ha^a.fa>>1)&a.$>>1?2048:0}function wc(a){a.W&=~a.$}function xc(a){a.ha=a.fa&16|a.ha&-17}function yc(a){a.W|=a.$-1}function zc(a){a.fa&=~a.$;a.ha=a.fa&32896|a.ha&-32897}function Ac(a){a.W|=a.$}function Bc(a){a.ha=~(a.fa&16)&16|a.ha&-17}function Cc(a){a.W&=~(a.$-1)}function Dc(a){uc(a)||(a.fa^=a.$>>1|a.$>>2,a.ha^=32896)}function Ec(a){a.fa|=a.$;a.ha=a.fa&32896|a.ha&-32897}function cc(a){return a.Ga&-2262|qc(a)|rc(a)|sc(a)|tc(a)|uc(a)|vc(a)} +function ac(a,b){a.$=256;a.W=a.fa=a.ha=0;b&1&&Ac(a);b&4||(a.fa|=1);b&16&&(a.ha|=16);b&64||yc(a);b&128&&Dc(a);b&2048&&Ec(a);a.Ga=a.Ga&-1793|b&1792|a.Qi;a.Ga&256&&(a.Va|=2,a.Y|=4)} +g.tb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.oa[c]=d;e=!0;break;default:e=$a.prototype.tb.call(this,a,b,c,d)}return e};function Fc(a,b){return a.ya[(b&a.vb)>>a.Ib].vc(b&a.$a)} +function F(a,b){var c=b&a.$a,d=(b&a.vb)>>a.Ib;a.A-=a.yi;return c!=a.$a?a.ya[d].yn(c):a.ya[d++].vc(c)|a.ya[d&a.Pd].vc(0)<<8}function Gc(a,b,c){a.ya[(b&a.vb)>>a.Ib].xc(b&a.$a,c&255)}function Hc(a,b,c){var d=b&a.$a;b=(b&a.vb)>>a.Ib;a.A-=a.yi;d!=a.$a?a.ya[b].Kn(d,c&65535):(a.ya[b++].xc(d,c&255),a.ya[b&a.Pd].xc(0,c>>8&255))}g.jl=function(a,b){this.Ef=a;this.da=a.Jc(this.wf=b,0);return this.Y&1?0:Fc(this,this.da)};g.kl=function(a,b){this.Ef=a;this.da=a.Jc(this.wf=b,1);return this.Y&1?0:F(this,this.da)}; +g.lm=function(a,b){this.Ef=a;this.Ba=this.da=a.Jc(this.wf=b,0);return this.Y&1?0:Fc(this,this.da)};g.mm=function(a,b){this.Ef=a;this.Ba=this.da=a.Jc(this.wf=b,1);return this.Y&1?0:F(this,this.da)};g.Gn=function(a){this.Y&2||Gc(this,this.Ef.Ob(this.wf,1),a)};g.Hn=function(a){this.Y&2||Hc(this,this.Ef.Ob(this.wf,2),a)};g.aa=function(){var a=Fc(this,this.Ca);this.Ca=this.Ea.eb+(this.qa=this.qa+1&65535);return a}; +g.L=function(){var a=Fc(this,this.Ca)<<24>>24;this.Ca=this.Ea.eb+(this.qa=this.qa+1&65535);return a&65535};g.K=function(){var a=F(this,this.Ca);this.Ca=this.Ea.eb+(this.qa=this.qa+2&65535);return a};g.Aa=function(){var a=this.X;this.X=this.X+2&65535;return F(this,this.Tb.Jc(a,1))};function K(a,b){var c=a.X=a.X-2&65535;Hc(a,a.Tb.Ob(c,1),b)} +g.$e=function(){E(this,"AX",this.G);E(this,"BX",this.B);E(this,"CX",this.I);E(this,"DX",this.J);E(this,"SP",this.X);E(this,"BP",this.H);E(this,"SI",this.F);E(this,"DI",this.D);E(this,"CS",this.Ea.ua);E(this,"DS",this.bc.ua);E(this,"SS",this.Tb.ua);E(this,"ES",this.gb.ua);E(this,"IP",this.qa);var a=cc(this);E(this,"PS",a);E(this,"C",a&1?1:0,1);E(this,"P",a&4?1:0,1);E(this,"A",a&16?1:0,1);E(this,"Z",a&64?1:0,1);E(this,"S",a&128?1:0,1);E(this,"T",a&256?1:0,1);E(this,"I",a&512?1:0,1);E(this,"D",a&1024? +1:0,1);E(this,"O",a&2048?1:0,1);this.oa.speed&&(this.oa.speed.innerHTML=this.rc&&this.Lc?this.Lc.toFixed(2)+"Mhz":"Stopped")}; +g.Sk=function(a){this.nh=!0;this.bd=this.A=a;this.ga&&nb(this.ga);a||!this.Ha||this.Ha.Zn(this.Ha.Sn)||(this.Y|=4);do{if(a=this.Y&240)this.pa|=a;else if(this.zg=this.Ca,this.da=this.Ba=-1,this.C=this.bc,this.M=this.Tb,this.pa=this.Y&256,this.Va){a:{if(!(this.Y&4))if(this.Va&1&&this.Ga&512){if(a=Ic(this.ga),-1<=a&&(this.Va&=-2,0<=a)){this.Va&=-5;Jc.call(this,a,null,11);break a}}else if(this.Va&2){this.Va&=-3;Jc.call(this,1,null,11);break a}if(a=this.Va&8){a=this.ga;for(var b=!1,c=0;cthis.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=a+b)&255} +function Mc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a|b)&255}function Nc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return this.W&255}function Oc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return this.W&255} +function Pc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a&b)&255}function Qc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=a-b)&255}function Rc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a^b)&255}function Sc(a,b){this.ha=a^b;this.$=256;this.W=this.fa=a-b;this.A-=0>this.Ba?0>this.da?this.Bb:this.Rh:this.bb;this.Y|=2;return a} +function Tc(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=a+b)&65535}function Uc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a|b)&65535}function Vc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return this.W&65535} +function Wc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return this.W&65535}function Xc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a&b)&65535}function Yc(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=a-b)&65535} +function Zc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a^b)&65535}function $c(a,b){this.ha=a^b;this.$=65536;this.W=this.fa=a-b;this.A-=0>this.Ba?0>this.da?this.Bb:this.Rh:this.bb;this.Y|=2;return a}function ad(a,b){this.W=this.W&this.$-1|(a&b?this.$:0);(a^a>>1)&b>>1?Ec(this):zc(this)}function bd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<>8-e)&255:d=a<<8;ad.call(this,d,256)}return c} +function cd(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<>16-e)&65535:d=a<<16;ad.call(this,d,65536)}return c}function dd(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);ad.call(this,d,256)}return c}function ed(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);ad.call(this,d,65536)}return c}function fd(a,b){var c=a;if(b){var d;(d=(b&this.ye)%9)?(d=a<>9-d,c=d&255):d=a|(this.W&this.$?1:0)<<8;ad.call(this,d,256)}return c} +function gd(a,b){var c=a;if(b){var d;(d=(b&this.ye)%17)?(d=a<>17-d,c=d&65535):d=a|(this.W&this.$?1:0)<<16;ad.call(this,d,65536)}return c}function kd(a,b){var c=a;b&&(c=(b&this.ye)%9,c=a>>c|(this.W&this.$?1:0)<<8-c|a<<9-c,ad.call(this,c,256),c&=255);return c}function ld(a,b){var c=a;b&&(c=(b&this.ye)%17,c=a>>c|(this.W&this.$?1:0)<<16-c|a<<17-c,ad.call(this,c,65536),c&=65535);return c} +function md(a,b){var c=a;b&&(c=8>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|256:this.W&-257;this.ha=a^this.W;this.$=256;a=this.W}return a&255} +function pd(a,b){if(b){var c=16>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|65536:this.W&-65537;this.ha=a^this.W;this.$=65536;a=this.W}return a&65535}function qd(a,b){if(b){8>24>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|256:this.W&-257;this.ha=a^this.W;this.$=256;a=this.W}return a&255}function rd(a,b){if(b){16>16>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|65536:this.W&-65537;this.ha=a^this.W;this.$=65536;a=this.W}return a&65535} +function sd(){this.A-=0>this.da?2:this.Bk;return 1}function td(){var a=this.I&this.ye;this.A-=(0>this.da?this.mi:this.li)+(a<this.da?this.mi:this.li)+(a<this.Ba?this.Rb:this.uk;return b},wd,wd,wd,wd,wd,wd,wd],Ad=[function(a,b){this.A-=0>this.Ba?this.mk:this.kk;return b},M,M,M,M,M,M,M],Bd=[bd,dd,fd,kd,md,od,M,qd],Cd=[cd,ed,gd,ld,nd,pd,M,rd],Ed=[function(a,b){b=this.aa();this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.da?this.si:this.ri;this.Y|=2;return a},M,function(a){this.A-=0>this.da?this.tf:this.sf;return a^255},function(a,b){b=0;this.ha=a^b;this.$=256; +this.A-=0>this.da?this.tf:this.sf;return(this.W=this.fa=b-a)&255},function(a){this.G=this.nb=(this.W=(this.G&255)*a)&65535;this.ha=this.fa=this.W;this.$=256;this.G&65280?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?this.qk:this.pk;this.Y|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.nb=b&65535;this.W=this.ha=this.fa=b;this.$=256;127b?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?this.Wj:this.Vj;this.Y|=2;return a},function(a){if(!a)return Dd.call(this), +a;var b=this.G/a;if(255this.da?this.Oj:this.Nj;this.Y|=2;return a},function(a){if(!a)return Dd.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Dd.call(this),a;this.nb=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.fa=this.ha=this.W=b|256;this.$=256;this.A-=0>this.da?this.Sj:this.Rj;this.Y|=2;return a}],Fd=[function(a,b){b=this.K();this.W=this.fa=this.ha= +a&b;this.$=65536;this.A-=0>this.da?this.si:this.ri;this.Y|=2;return a},M,function(a){this.A-=0>this.da?this.tf:this.sf;return a^65535},function(a,b){b=0;this.ha=a^b;this.$=65536;this.A-=0>this.da?this.tf:this.sf;return(this.W=this.fa=b-a)&65535},function(a){this.nb=this.G=(this.W=this.G*a)&65535;this.Af=this.J=this.W>>16&65535;this.ha=this.fa=this.W;this.$=65536;this.J?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?this.sk:this.rk;this.Y|=2;return a},function(a){var b=(this.G<<16>>16)* +(a<<16>>16);this.G=this.nb=b&65535;this.J=this.Af=b>>16&65535;this.W=this.ha=this.fa=b;this.$=65536;32767b?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?this.Yj:this.Xj;this.Y|=2;return a},function(a,b){if(!a)return Dd.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return Dd.call(this),a;this.nb=this.G=c&65535;this.Af=this.J=b%a&65535;this.fa=this.ha=this.W=c|65536;this.$=65536;this.A-=0>this.da?this.Qj:this.Pj;this.Y|=2;return a},function(a,b){if(!a)return Dd.call(this), +a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Dd.call(this),a;this.nb=this.G=d&65535;this.Af=this.J=b%c&65535;this.fa=this.ha=this.W=d|65536;this.$=65536;this.A-=0>this.da?this.Uj:this.Tj;this.Y|=2;return a}],Tb=[function(a){this.ha=a;a=(this.fa=a+1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.rf:this.qf;return a},function(a){this.ha=a;a=(this.fa=a-1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.rf:this.qf; +return a},M,M,M,M,M,M],Vb=[function(a){this.ha=a;a=(this.fa=a+1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.rf:this.qf;return a},function(a){this.ha=a;a=(this.fa=a-1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.rf:this.qf;return a},function(a){K(this,this.qa);I(this,a);this.A-=0>this.da?this.Mj:this.Lj;this.Y|=2;return a},function(a){if(0>this.da)return M.call(this,a);K(this,this.Ea.ua);K(this,this.qa);$b(this,a,F(this,this.da+2));this.A-= +this.Jj;this.Y|=2;return a},function(a){I(this,a);this.A-=0>this.da?this.gk:this.fk;this.Y|=2;return a},function(a){if(0>this.da)return M.call(this,a);$b(this,a,F(this,this.da+2));this.A-=this.dk;this.Y|=2;return a},function(a){var b=a;this.Y&512&&(a=a-2&65535,80286>this.Da&&(b=a));K(this,b);this.A-=0>this.da?this.Zb:this.wk;this.Y|=2;return a},wd],Gd=[bd,dd,fd,kd,md,od,M,qd],Hd=[cd,ed,gd,ld,nd,pd,M,rd];function Id(a,b){this.A-=0>this.Ba?0>this.da?this.ok:this.nk:this.lk;return b} +function Jd(){return Id.call(this,0,this.nb)}function Kd(a,b){this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.Ba?0>this.da?this.ti:this.vf:this.vf;this.Y|=2;return a}function Ld(a,b){this.W=this.fa=this.ha=a&b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.ti:this.vf:this.vf;this.Y|=2;return a}function Md(a,b){var c=(b<<16>>16)*(this.aa()<<24>>24);this.W=this.ha=this.fa=c;this.$=256;32767c?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?21:24;return c&65535} +function Nd(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.W=this.ha=this.fa=c;this.$=65536;32767c?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?21:24;return c&65535}function Od(a){return a}function Pd(a){if(0>this.da)return N.call(this),a;this.A-=this.hk;return this.da}function Qd(a,b){if(0>this.da)return N.call(this),a;nc(this,F(this,this.da+2));this.A-=this.Vh;return b} +function Rd(a,b){if(0>this.da)return N.call(this),a;pc(this,F(this,this.da+2));this.A-=this.Vh;return b}function Sd(a){if(0>this.da)return G.call(this),a;var b=a<<16>>16,c=F(this,this.da)<<16>>16,d=F(this,this.da+2)<<16>>16;this.A-=this.Fj;if(bd)I(this,this.zg-this.Ea.eb),Jc.call(this,5,null,0);this.Y|=2;return a}function Td(a,b){this.A-=10+(0>this.da?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Cc(this),a;yc(this);return a} +function Ud(a,b){this.A-=14+(0>this.da?0:2);if(0<=this.sb.load(b,!0)&&this.sb.uc>=(this.Ea.ua&3)&&this.sb.uc>=(b&3))return Cc(this),this.sb.kc&65280;yc(this);return a}function Vd(a,b){this.A-=14+(0>this.da?0:2);if(b&65528&&0<=this.sb.load(b,!0)&&(3072==(this.sb.kc&3072)||this.sb.uc>=(this.Ea.ua&3))&&this.sb.uc>=(b&3))return Cc(this),this.sb.$c;yc(this);return a} +function Wd(a,b){if(0>this.da){switch(this.Tf&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.vi}else this.Ba=this.da,this.Q(a),this.A-=this.ui;return b} +function Xd(a,b){if(0>this.da){switch(this.Tf&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.X=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.vi}else this.Ba=this.da,this.R(a),this.A-=this.ui;return b}function Jc(a,b,c){ic(this,a)&&(K(this,cc(this)),this.Ga&=this.qc.mg,K(this,this.Ea.ua),K(this,this.qa),null!=b&&K(this,b),$b(this,this.qc.zi,this.qc.ua),this.A-=this.$j+c)} +function Dd(){I(this,this.zg-this.Ea.eb);Jc.call(this,0,null,2)}function Ab(a,b){this.Ha&&this.Ha.message("Fault 0x"+aa(a)+(null!=b?" (0x"+h(b,4)+")":"")+" on opcode 0x"+aa(Oa(this.ma,this.Ca))+" at "+da(this.qa,this.Ea.ua));80186<=this.Da&&(I(this,this.zg-this.Ea.eb),Jc.call(this,a,b,0))}function G(){Ab.call(this,6);gb(this)}function N(){I(this,this.zg-this.Ea.eb);Fa(this,"Undefined opcode 0x"+aa(Oa(this.ma,this.Ca))+" at "+da(this.qa,this.Ea.ua));gb(this)} +function Yd(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}function Zd(a){a=a.call(this,this.G&255,this.I&255);this.G=this.G&-256|a}function $d(a){a=a.call(this,this.G&255,this.J&255);this.G=this.G&-256|a}function ae(a){a=a.call(this,this.G&255,this.B&255);this.G=this.G&-256|a}function be(a){a=a.call(this,this.G&255,this.G>>8);this.G=this.G&-256|a}function ce(a){a=a.call(this,this.G&255,this.I>>8);this.G=this.G&-256|a} +function de(a){a=a.call(this,this.G&255,this.J>>8);this.G=this.G&-256|a}function ee(a){a=a.call(this,this.G&255,this.B>>8);this.G=this.G&-256|a}function fe(a){a=a.call(this,this.I&255,this.G&255);this.I=this.I&-256|a}function ge(a){a=a.call(this,this.I&255,this.I&255);this.I=this.I&-256|a}function he(a){a=a.call(this,this.I&255,this.J&255);this.I=this.I&-256|a}function ie(a){a=a.call(this,this.I&255,this.B&255);this.I=this.I&-256|a} +function je(a){a=a.call(this,this.I&255,this.G>>8);this.I=this.I&-256|a}function ke(a){a=a.call(this,this.I&255,this.I>>8);this.I=this.I&-256|a}function le(a){a=a.call(this,this.I&255,this.J>>8);this.I=this.I&-256|a}function me(a){a=a.call(this,this.I&255,this.B>>8);this.I=this.I&-256|a}function ne(a){a=a.call(this,this.J&255,this.G&255);this.J=this.J&-256|a}function oe(a){a=a.call(this,this.J&255,this.I&255);this.J=this.J&-256|a} +function pe(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function qe(a){a=a.call(this,this.J&255,this.B&255);this.J=this.J&-256|a}function re(a){a=a.call(this,this.J&255,this.G>>8);this.J=this.J&-256|a}function se(a){a=a.call(this,this.J&255,this.I>>8);this.J=this.J&-256|a}function te(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function ue(a){a=a.call(this,this.J&255,this.B>>8);this.J=this.J&-256|a} +function ve(a){a=a.call(this,this.B&255,this.G&255);this.B=this.B&-256|a}function we(a){a=a.call(this,this.B&255,this.I&255);this.B=this.B&-256|a}function xe(a){a=a.call(this,this.B&255,this.J&255);this.B=this.B&-256|a}function ye(a){a=a.call(this,this.B&255,this.B&255);this.B=this.B&-256|a}function ze(a){a=a.call(this,this.B&255,this.G>>8);this.B=this.B&-256|a}function Ae(a){a=a.call(this,this.B&255,this.I>>8);this.B=this.B&-256|a} +function Be(a){a=a.call(this,this.B&255,this.J>>8);this.B=this.B&-256|a}function Ce(a){a=a.call(this,this.B&255,this.B>>8);this.B=this.B&-256|a}function De(a){a=a.call(this,this.G>>8,this.G&255);this.G=this.G&255|a<<8}function Ee(a){a=a.call(this,this.G>>8,this.I&255);this.G=this.G&255|a<<8}function Fe(a){a=a.call(this,this.G>>8,this.J&255);this.G=this.G&255|a<<8}function Ge(a){a=a.call(this,this.G>>8,this.B&255);this.G=this.G&255|a<<8} +function He(a){a=a.call(this,this.G>>8,this.G>>8);this.G=this.G&255|a<<8}function Ie(a){a=a.call(this,this.G>>8,this.I>>8);this.G=this.G&255|a<<8}function Je(a){a=a.call(this,this.G>>8,this.J>>8);this.G=this.G&255|a<<8}function Ke(a){a=a.call(this,this.G>>8,this.B>>8);this.G=this.G&255|a<<8}function Le(a){a=a.call(this,this.I>>8,this.G&255);this.I=this.I&255|a<<8}function Me(a){a=a.call(this,this.I>>8,this.I&255);this.I=this.I&255|a<<8} +function Ne(a){a=a.call(this,this.I>>8,this.J&255);this.I=this.I&255|a<<8}function Oe(a){a=a.call(this,this.I>>8,this.B&255);this.I=this.I&255|a<<8}function Pe(a){a=a.call(this,this.I>>8,this.G>>8);this.I=this.I&255|a<<8}function Qe(a){a=a.call(this,this.I>>8,this.I>>8);this.I=this.I&255|a<<8}function Re(a){a=a.call(this,this.I>>8,this.J>>8);this.I=this.I&255|a<<8}function Se(a){a=a.call(this,this.I>>8,this.B>>8);this.I=this.I&255|a<<8} +function Te(a){a=a.call(this,this.J>>8,this.G&255);this.J=this.J&255|a<<8}function Ue(a){a=a.call(this,this.J>>8,this.I&255);this.J=this.J&255|a<<8}function Ve(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function We(a){a=a.call(this,this.J>>8,this.B&255);this.J=this.J&255|a<<8}function Xe(a){a=a.call(this,this.J>>8,this.G>>8);this.J=this.J&255|a<<8}function Ye(a){a=a.call(this,this.J>>8,this.I>>8);this.J=this.J&255|a<<8} +function Ze(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function $e(a){a=a.call(this,this.J>>8,this.B>>8);this.J=this.J&255|a<<8}function af(a){a=a.call(this,this.B>>8,this.G&255);this.B=this.B&255|a<<8}function bf(a){a=a.call(this,this.B>>8,this.I&255);this.B=this.B&255|a<<8}function cf(a){a=a.call(this,this.B>>8,this.J&255);this.B=this.B&255|a<<8}function df(a){a=a.call(this,this.B>>8,this.B&255);this.B=this.B&255|a<<8} +function ef(a){a=a.call(this,this.B>>8,this.G>>8);this.B=this.B&255|a<<8}function ff(a){a=a.call(this,this.B>>8,this.I>>8);this.B=this.B&255|a<<8}function gf(a){a=a.call(this,this.B>>8,this.J>>8);this.B=this.B&255|a<<8}function hf(a){a=a.call(this,this.B>>8,this.B>>8);this.B=this.B&255|a<<8}function jf(a){this.G=a.call(this,this.G,this.G)}function kf(a){this.G=a.call(this,this.G,this.I)}function lf(a){this.G=a.call(this,this.G,this.J)}function mf(a){this.G=a.call(this,this.G,this.B)} +function nf(a){this.G=a.call(this,this.G,this.X)}function of(a){this.G=a.call(this,this.G,this.H)}function pf(a){this.G=a.call(this,this.G,this.F)}function qf(a){this.G=a.call(this,this.G,this.D)}function rf(a){this.I=a.call(this,this.I,this.G)}function sf(a){this.I=a.call(this,this.I,this.I)}function tf(a){this.I=a.call(this,this.I,this.J)}function uf(a){this.I=a.call(this,this.I,this.B)}function vf(a){this.I=a.call(this,this.I,this.X)}function wf(a){this.I=a.call(this,this.I,this.H)} +function xf(a){this.I=a.call(this,this.I,this.F)}function yf(a){this.I=a.call(this,this.I,this.D)}function zf(a){this.J=a.call(this,this.J,this.G)}function Af(a){this.J=a.call(this,this.J,this.I)}function Bf(a){this.J=a.call(this,this.J,this.J)}function Cf(a){this.J=a.call(this,this.J,this.B)}function Df(a){this.J=a.call(this,this.J,this.X)}function Ef(a){this.J=a.call(this,this.J,this.H)}function Ff(a){this.J=a.call(this,this.J,this.F)}function Gf(a){this.J=a.call(this,this.J,this.D)} +function Hf(a){this.B=a.call(this,this.B,this.G)}function If(a){this.B=a.call(this,this.B,this.I)}function Jf(a){this.B=a.call(this,this.B,this.J)}function Kf(a){this.B=a.call(this,this.B,this.B)}function Lf(a){this.B=a.call(this,this.B,this.X)}function Mf(a){this.B=a.call(this,this.B,this.H)}function Nf(a){this.B=a.call(this,this.B,this.F)}function Of(a){this.B=a.call(this,this.B,this.D)}function Pf(a){this.X=a.call(this,this.X,this.G)}function Qf(a){this.X=a.call(this,this.X,this.I)} +function Rf(a){this.X=a.call(this,this.X,this.J)}function Sf(a){this.X=a.call(this,this.X,this.B)}function Tf(a){this.X=a.call(this,this.X,this.X)}function Uf(a){this.X=a.call(this,this.X,this.H)}function Vf(a){this.X=a.call(this,this.X,this.F)}function Wf(a){this.X=a.call(this,this.X,this.D)}function Xf(a){this.H=a.call(this,this.H,this.G)}function Yf(a){this.H=a.call(this,this.H,this.I)}function Zf(a){this.H=a.call(this,this.H,this.J)}function $f(a){this.H=a.call(this,this.H,this.B)} +function ag(a){this.H=a.call(this,this.H,this.X)}function bg(a){this.H=a.call(this,this.H,this.H)}function cg(a){this.H=a.call(this,this.H,this.F)}function dg(a){this.H=a.call(this,this.H,this.D)}function eg(a){this.F=a.call(this,this.F,this.G)}function fg(a){this.F=a.call(this,this.F,this.I)}function gg(a){this.F=a.call(this,this.F,this.J)}function hg(a){this.F=a.call(this,this.F,this.B)}function ig(a){this.F=a.call(this,this.F,this.X)}function jg(a){this.F=a.call(this,this.F,this.H)} +function kg(a){this.F=a.call(this,this.F,this.F)}function lg(a){this.F=a.call(this,this.F,this.D)}function mg(a){this.D=a.call(this,this.D,this.G)}function ng(a){this.D=a.call(this,this.D,this.I)}function og(a){this.D=a.call(this,this.D,this.J)}function pg(a){this.D=a.call(this,this.D,this.B)}function qg(a){this.D=a.call(this,this.D,this.X)}function rg(a){this.D=a.call(this,this.D,this.H)}function sg(a){this.D=a.call(this,this.D,this.F)}function tg(a){this.D=a.call(this,this.D,this.D)} +var ug=[function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.G&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.F),this.G&255);this.Q(a);this.A-=this.Z},function(a){a= a.call(this,this.N(this.C,this.D),this.G&255);this.Q(a);this.A-=this.Z},function(a){a=a.call(this,this.N(this.C,this.K()),this.G&255);this.Q(a);this.A-=this.na},function(a){a=a.call(this,this.N(this.C,this.B),this.G&255);this.Q(a);this.A-=this.Z},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.I&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.I&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.F& 65535),this.I&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.I&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.F),this.I&255);this.Q(a);this.A-=this.Z},function(a){a=a.call(this,this.N(this.C,this.D),this.I&255);this.Q(a);this.A-=this.Z},function(a){a=a.call(this,this.N(this.C,this.K()),this.I&255);this.Q(a);this.A-=this.na},function(a){a=a.call(this,this.N(this.C,this.B),this.I&255);this.Q(a);this.A-=this.Z},function(a){a= a.call(this,this.N(this.C,this.B+this.F&65535),this.J&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.J&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.J&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.J&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.F),this.J&255);this.Q(a);this.A-=this.Z},function(a){a=a.call(this,this.N(this.C, @@ -141,7 +141,7 @@ this.U},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.I>>8 this.U},function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.U},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.K()&65535),this.J>>8); this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.F+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.U},function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.K()& 65535),this.B>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.U},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.K()& -65535),this.B>>8);this.Q(a);this.A-=this.P},ce,ke,se,Ae,Ie,Qe,Ye,ff,de,le,te,Be,Je,Re,Ze,gf,ee,me,ue,Ce,Ke,Se,$e,hf,fe,ne,ve,De,Le,Te,af,jf,ge,oe,we,Ee,Me,Ue,bf,kf,he,pe,xe,Fe,Ne,Ve,cf,lf,ie,qe,ye,Ge,Oe,We,df,mf,je,re,ze,He,Pe,Xe,ef,nf],Ag=[function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.G);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.G);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.G); +65535),this.B>>8);this.Q(a);this.A-=this.P},Yd,fe,ne,ve,De,Le,Te,af,Zd,ge,oe,we,Ee,Me,Ue,bf,$d,he,pe,xe,Fe,Ne,Ve,cf,ae,ie,qe,ye,Ge,Oe,We,df,be,je,re,ze,He,Pe,Xe,ef,ce,ke,se,Ae,Ie,Qe,Ye,ff,de,le,te,Be,Je,Re,Ze,gf,ee,me,ue,Ce,Ke,Se,$e,hf],vg=[function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.G);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.G);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.G); this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.G);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.F),this.G);this.R(a);this.A-=this.Z},function(a){a=a.call(this,this.O(this.C,this.D),this.G);this.R(a);this.A-=this.Z},function(a){a=a.call(this,this.O(this.C,this.K()),this.G);this.R(a);this.A-=this.na},function(a){a=a.call(this,this.O(this.C,this.B),this.G);this.R(a);this.A-=this.Z},function(a){a=a.call(this,this.O(this.C,this.B+ this.F&65535),this.I);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.I);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.I);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.I);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.F),this.I);this.R(a);this.A-=this.Z},function(a){a=a.call(this,this.O(this.C,this.D),this.I);this.R(a);this.A-=this.Z}, function(a){a=a.call(this,this.O(this.C,this.K()),this.I);this.R(a);this.A-=this.na},function(a){a=a.call(this,this.O(this.C,this.B),this.I);this.R(a);this.A-=this.Z},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.J);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.J);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.J);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+ @@ -178,7 +178,7 @@ this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.M,this.H+this.D+ this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.K()&65535),this.F);this.R(a);this.A-=this.U},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.K()&65535),this.F);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.K()&65535),this.F);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.K()&65535),this.F);this.R(a);this.A-=this.U},function(a){a=a.call(this,this.O(this.C,this.F+this.K()&65535),this.F); this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.K()&65535),this.D);this.R(a);this.A-=this.U},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.K()&65535),this.D);this.R(a); this.A-=this.V},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.K()&65535),this.D);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.K()&65535),this.D);this.R(a);this.A-=this.U},function(a){a=a.call(this,this.O(this.C,this.F+this.K()&65535),this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.K()&65535),this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.K()&65535),this.D);this.R(a);this.A-= -this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.D);this.R(a);this.A-=this.P},of,wf,Ef,Mf,Uf,bg,jg,rg,pf,xf,Ff,Nf,Vf,cg,kg,sg,qf,yf,Gf,Of,Wf,dg,lg,tg,rf,zf,Hf,Pf,Xf,eg,mg,ug,sf,Af,If,Qf,Yf,fg,ng,vg,tf,Bf,Jf,Rf,Zf,gg,og,wg,uf,Cf,Kf,Sf,$f,hg,pg,xg,vf,Df,Lf,Tf,ag,ig,qg,yg],Bg=[function(a){a=a.call(this,this.G&255,this.S(this.C,this.B+this.F&65535));this.G=this.G&-256|a;this.A-=this.ba},function(a){a=a.call(this,this.G&255,this.S(this.C,this.B+this.D&65535));this.G=this.G&-256| +this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.D);this.R(a);this.A-=this.P},jf,rf,zf,Hf,Pf,Xf,eg,mg,kf,sf,Af,If,Qf,Yf,fg,ng,lf,tf,Bf,Jf,Rf,Zf,gg,og,mf,uf,Cf,Kf,Sf,$f,hg,pg,nf,vf,Df,Lf,Tf,ag,ig,qg,of,wf,Ef,Mf,Uf,bg,jg,rg,pf,xf,Ff,Nf,Vf,cg,kg,sg,qf,yf,Gf,Of,Wf,dg,lg,tg],wg=[function(a){a=a.call(this,this.G&255,this.S(this.C,this.B+this.F&65535));this.G=this.G&-256|a;this.A-=this.ba},function(a){a=a.call(this,this.G&255,this.S(this.C,this.B+this.D&65535));this.G=this.G&-256| a;this.A-=this.ca},function(a){a=a.call(this,this.G&255,this.S(this.M,this.H+this.F&65535));this.G=this.G&-256|a;this.A-=this.ca},function(a){a=a.call(this,this.G&255,this.S(this.M,this.H+this.D&65535));this.G=this.G&-256|a;this.A-=this.ba},function(a){a=a.call(this,this.G&255,this.S(this.C,this.F));this.G=this.G&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.G&255,this.S(this.C,this.D));this.G=this.G&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.G&255,this.S(this.C,this.K()));this.G= this.G&-256|a;this.A-=this.na},function(a){a=a.call(this,this.G&255,this.S(this.C,this.B));this.G=this.G&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.I&255,this.S(this.C,this.B+this.F&65535));this.I=this.I&-256|a;this.A-=this.ba},function(a){a=a.call(this,this.I&255,this.S(this.C,this.B+this.D&65535));this.I=this.I&-256|a;this.A-=this.ca},function(a){a=a.call(this,this.I&255,this.S(this.M,this.H+this.F&65535));this.I=this.I&-256|a;this.A-=this.ca},function(a){a=a.call(this,this.I&255,this.S(this.M, this.H+this.D&65535));this.I=this.I&-256|a;this.A-=this.ba},function(a){a=a.call(this,this.I&255,this.S(this.C,this.F));this.I=this.I&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.I&255,this.S(this.C,this.D));this.I=this.I&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.I&255,this.S(this.C,this.K()));this.I=this.I&-256|a;this.A-=this.na},function(a){a=a.call(this,this.I&255,this.S(this.C,this.B));this.I=this.I&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.J&255,this.S(this.C, @@ -221,7 +221,7 @@ this.P},function(a){a=a.call(this,this.G>>8,this.S(this.C,this.D+this.K()&65535) this.V},function(a){a=a.call(this,this.J>>8,this.S(this.M,this.H+this.F+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.J>>8,this.S(this.M,this.H+this.D+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.U},function(a){a=a.call(this,this.J>>8,this.S(this.C,this.F+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>>8,this.S(this.C,this.D+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>> 8,this.S(this.M,this.H+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>>8,this.S(this.C,this.B+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.S(this.C,this.B+this.F+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.U},function(a){a=a.call(this,this.B>>8,this.S(this.C,this.B+this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.B>>8,this.S(this.M,this.H+this.F+this.K()& 65535));this.B=this.B&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.B>>8,this.S(this.M,this.H+this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.U},function(a){a=a.call(this,this.B>>8,this.S(this.C,this.F+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.S(this.C,this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.S(this.M,this.H+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P}, -function(a){a=a.call(this,this.B>>8,this.S(this.C,this.B+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},ce,de,ee,fe,ge,he,ie,je,ke,le,me,ne,oe,pe,qe,re,se,te,ue,ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf],O=[function(a){this.G=a.call(this,this.G,this.T(this.C,this.B+this.F&65535));this.A-=this.ba},function(a){this.G=a.call(this,this.G,this.T(this.C,this.B+this.D&65535));this.A-=this.ca},function(a){this.G= +function(a){a=a.call(this,this.B>>8,this.S(this.C,this.B+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},Yd,Zd,$d,ae,be,ce,de,ee,fe,ge,he,ie,je,ke,le,me,ne,oe,pe,qe,re,se,te,ue,ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf],O=[function(a){this.G=a.call(this,this.G,this.T(this.C,this.B+this.F&65535));this.A-=this.ba},function(a){this.G=a.call(this,this.G,this.T(this.C,this.B+this.D&65535));this.A-=this.ca},function(a){this.G= a.call(this,this.G,this.T(this.M,this.H+this.F&65535));this.A-=this.ca},function(a){this.G=a.call(this,this.G,this.T(this.M,this.H+this.D&65535));this.A-=this.ba},function(a){this.G=a.call(this,this.G,this.T(this.C,this.F));this.A-=this.Z},function(a){this.G=a.call(this,this.G,this.T(this.C,this.D));this.A-=this.Z},function(a){this.G=a.call(this,this.G,this.T(this.C,this.K()));this.A-=this.na},function(a){this.G=a.call(this,this.G,this.T(this.C,this.B));this.A-=this.Z},function(a){this.I=a.call(this, this.I,this.T(this.C,this.B+this.F&65535));this.A-=this.ba},function(a){this.I=a.call(this,this.I,this.T(this.C,this.B+this.D&65535));this.A-=this.ca},function(a){this.I=a.call(this,this.I,this.T(this.M,this.H+this.F&65535));this.A-=this.ca},function(a){this.I=a.call(this,this.I,this.T(this.M,this.H+this.D&65535));this.A-=this.ba},function(a){this.I=a.call(this,this.I,this.T(this.C,this.F));this.A-=this.Z},function(a){this.I=a.call(this,this.I,this.T(this.C,this.D));this.A-=this.Z},function(a){this.I= a.call(this,this.I,this.T(this.C,this.K()));this.A-=this.na},function(a){this.I=a.call(this,this.I,this.T(this.C,this.B));this.A-=this.Z},function(a){this.J=a.call(this,this.J,this.T(this.C,this.B+this.F&65535));this.A-=this.ba},function(a){this.J=a.call(this,this.J,this.T(this.C,this.B+this.D&65535));this.A-=this.ca},function(a){this.J=a.call(this,this.J,this.T(this.M,this.H+this.F&65535));this.A-=this.ca},function(a){this.J=a.call(this,this.J,this.T(this.M,this.H+this.D&65535));this.A-=this.ba}, @@ -256,7 +256,7 @@ a.call(this,this.H,this.T(this.C,this.B+this.D+this.K()&65535));this.A-=this.V}, this.H+this.K()&65535));this.A-=this.P},function(a){this.H=a.call(this,this.H,this.T(this.C,this.B+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.T(this.C,this.B+this.F+this.K()&65535));this.A-=this.U},function(a){this.F=a.call(this,this.F,this.T(this.C,this.B+this.D+this.K()&65535));this.A-=this.V},function(a){this.F=a.call(this,this.F,this.T(this.M,this.H+this.F+this.K()&65535));this.A-=this.V},function(a){this.F=a.call(this,this.F,this.T(this.M,this.H+this.D+this.K()& 65535));this.A-=this.U},function(a){this.F=a.call(this,this.F,this.T(this.C,this.F+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.T(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.T(this.M,this.H+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.T(this.C,this.B+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.T(this.C,this.B+this.F+this.K()&65535));this.A-=this.U},function(a){this.D= a.call(this,this.D,this.T(this.C,this.B+this.D+this.K()&65535));this.A-=this.V},function(a){this.D=a.call(this,this.D,this.T(this.M,this.H+this.F+this.K()&65535));this.A-=this.V},function(a){this.D=a.call(this,this.D,this.T(this.M,this.H+this.D+this.K()&65535));this.A-=this.U},function(a){this.D=a.call(this,this.D,this.T(this.C,this.F+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.T(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.T(this.M, -this.H+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.T(this.C,this.B+this.K()&65535));this.A-=this.P},of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf,Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg],Cg=[function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.D& +this.H+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.T(this.C,this.B+this.K()&65535));this.A-=this.P},jf,kf,lf,mf,nf,of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf,Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg,rg,sg,tg],xg=[function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.D& 65535),b.call(this));this.Q(c);this.A-=this.ca},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ca},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c=a[0].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c=a[0].call(this,this.N(this.C, this.K()),b.call(this));this.Q(c);this.A-=this.na},function(a,b){var c=a[0].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ba},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ca},function(a,b){var c=a[1].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ca},function(a,b){var c= a[1].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ba},function(a,b){var c=a[1].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.na},function(a,b){var c=a[1].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c= @@ -309,7 +309,7 @@ this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[4].call(th 255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[5].call(this,this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[5].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[5].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[5].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[5].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8},function(a,b){var c=a[6].call(this,this.G&255,b.call(this)); this.G=this.G&-256|c},function(a,b){var c=a[6].call(this,this.I&255,b.call(this));this.I=this.I&-256|c},function(a,b){var c=a[6].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[6].call(this,this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[6].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[6].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[6].call(this,this.J>>8,b.call(this));this.J=this.J& 255|c<<8},function(a,b){var c=a[6].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8},function(a,b){var c=a[7].call(this,this.G&255,b.call(this));this.G=this.G&-256|c},function(a,b){var c=a[7].call(this,this.I&255,b.call(this));this.I=this.I&-256|c},function(a,b){var c=a[7].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[7].call(this,this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[7].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<< -8},function(a,b){var c=a[7].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8}],Dg=[function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ca},function(a,b){var c=a[0].call(this, +8},function(a,b){var c=a[7].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8}],yg=[function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ca},function(a,b){var c=a[0].call(this, this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ca},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[0].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[0].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.na},function(a,b){var c= a[0].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ba},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ca},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ca},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c); this.A-=this.ba},function(a,b){var c=a[1].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.na},function(a,b){var c=a[1].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[2].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c); @@ -359,270 +359,271 @@ a[3].call(this,this.B,b.call(this))},function(a,b){this.X=a[3].call(this,this.X, function(a,b){this.X=a[4].call(this,this.X,b.call(this))},function(a,b){this.H=a[4].call(this,this.H,b.call(this))},function(a,b){this.F=a[4].call(this,this.F,b.call(this))},function(a,b){this.D=a[4].call(this,this.D,b.call(this))},function(a,b){this.G=a[5].call(this,this.G,b.call(this))},function(a,b){this.I=a[5].call(this,this.I,b.call(this))},function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.B=a[5].call(this,this.B,b.call(this))},function(a,b){this.X=a[5].call(this,this.X, b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.D=a[5].call(this,this.D,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.J=a[6].call(this,this.J,b.call(this))},function(a,b){this.B=a[6].call(this,this.B,b.call(this))},function(a,b){this.Y|=512;this.X=a[6].call(this,this.X,b.call(this))},function(a, b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.D=a[6].call(this,this.D,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a,b){this.B=a[7].call(this,this.B,b.call(this))},function(a,b){this.X=a[7].call(this,this.X,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))}, -function(a,b){this.F=a[7].call(this,this.F,b.call(this))},function(a,b){this.D=a[7].call(this,this.D,b.call(this))}],Fg=[function(){var a=this.aa();16>(a&56)&&(this.Y|=1);Dg[a].call(this,jc,Ad)},function(){var a=this.aa();a&16||(this.Y|=1);Dg[a].call(this,Eg,Ad)},function(){O[this.aa()].call(this,Zd)},function(){O[this.aa()].call(this,$d)},N,N,N,N,N,N,N,G,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N, -N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N],kc=[function(){this.A-=2+(0>this.da?0:1);return this.ze.ua},function(){this.A-=2+(0>this.da?0:1);return this.Eg.ua},function(a){this.Y|=2;this.ze.load(a);this.A-= -17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.Eg.load(a);this.A-=17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.rb.load(a,!0)&&2048!=(this.rb.ic&2560)&&(3072==(this.rb.ic&3072)||this.rb.sc>=(this.Da.ua&3)&&this.rb.sc>=(a&3)))return Hc(this),a;Dc(this);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.rb.load(a,!0)&&512==(this.rb.ic&2560)&&this.rb.sc>=(this.Da.ua&3)&&this.rb.sc>=(a&3))return Hc(this),a;Dc(this);return a},M,M], -lc=[Zb,Zb,Zb,Zb,Zb,Zb,M,M],jc=lc,Eg=[function(a){0>this.da?G.call(this):(Mc(this,this.da+2,this.Pc),Lc(this,this.da+4,this.Pc>>16),a=this.Ie-this.Pc,this.A-=11);return a},function(a){0>this.da?G.call(this):(Mc(this,this.da+2,this.Qc),Lc(this,this.da+4,this.Qc>>16),a=this.ke-this.Qc,this.A-=12);return a},function(a){0>this.da?G.call(this):(this.Pc=F(this,this.da+2)|Kc(this,this.da+4)<<16,this.Ie=this.Pc+a,this.Y|=2,this.A-=11);return a},function(a){0>this.da?G.call(this):(this.Qc=F(this,this.da+2)| -Kc(this,this.da+4)<<16,this.ke=this.Qc+a,this.Y|=2,this.A-=12);return a},function(){this.A-=2+(0>this.da?0:1);return this.cd},M,function(a){this.cd=this.cd&65520|a&-65521;this.A-=3+(0>this.da?0:3);this.cd&1&&gc(this,!0);this.Y|=2;return a},M];function ac(){Fg[this.aa()].call(this)}function cc(){K(this,this.X);this.A-=this.Xb}function Ib(){var a=this.X;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.rk} -function Jb(){this.D=this.za();this.F=this.za();this.H=this.za();this.X+=2;this.B=this.za();this.J=this.za();this.I=this.za();this.G=this.za();this.A-=this.pk}function Kb(){O[this.aa()].call(this,Xd)}function bc(){Ag[this.aa()].call(this,Yd)}function Lb(){K(this,this.K());this.A-=this.Xb}function Mb(){O[this.aa()].call(this,Sd)}function Nb(){K(this,this.aa());this.A-=this.Xb}function Ob(){O[this.aa()].call(this,Rd)} -function Pb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=$a(this.ma,this.J,this.Ba-b-1);Lc(this,this.fb.Nb(this.D,0),d);this.D=this.D+(this.Fa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}} -function Qb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=this.Ba-b-1,d=$a(this.ma,this.J,d)|$a(this.ma,this.J,d)<<8;Mc(this,this.fb.Nb(this.D,1),d);this.D=this.D+(this.Fa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}} -function Rb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=Kc(this,this.Zb.Gc(this.F,0));this.F=this.F+(this.Fa&1024?-1:1)&65535;this.A-=c;this.I-=b;bb(this.ma,this.J,d,this.Ba-b-1);a&&(J(this,-2),this.Y|=256)}} -function Sb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=F(this,this.Zb.Gc(this.F,1));this.F=this.F+(this.Fa&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Ba-b-1;bb(this.ma,this.J,d&255,b);bb(this.ma,this.J,d>>8,b);a&&(J(this,-2),this.Y|=256)}}function Gg(){var a=this.L();Ac(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Hg(){var a=this.L();Ac(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)} -function Ig(){var a=this.L();vc(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Jg(){var a=this.L();vc(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)}function Kg(){var a=this.L();yc(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Lg(){var a=this.L();yc(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)}function Mg(){var a=this.L();vc(this)||yc(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb} -function Ng(){var a=this.L();vc(this)||yc(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)}function Og(){var a=this.L();zc(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Pg(){var a=this.L();zc(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)}function Qg(){var a=this.L();wc(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Rg(){var a=this.L();wc(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)} -function Sg(){var a=this.L();!zc(this)!=!Ac(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Tg(){var a=this.L();!zc(this)==!Ac(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Ug(){var a=this.L();yc(this)||!zc(this)!=!Ac(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Vg(){var a=this.L();yc(this)||!zc(this)!=!Ac(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)} -function Wg(){Cg[this.aa()].call(this,Cd,this.aa);this.A-=0>this.Aa?1:this.sg}function Tb(){Cg[this.aa()].call(this,Ld,zd)}function Ub(){Dg[this.aa()].call(this,Md,zd)}function Xg(){var a=this.K();I(this,this.za());this.X=this.X+a&65535;this.A-=this.wk}function Yg(){I(this,this.za());this.A-=this.tk} -function Vb(){var a=this.K(),b=this.aa()&31;this.A-=11;K(this,this.H);var c=this.X;if(0>8,c,d=xc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?Gc(this):Cc(this);this.A-=this.Zd},function(){zg[this.aa()].call(this,Xc)},function(){Ag[this.aa()].call(this,ed)},function(){Bg[this.aa()].call(this,Xc)},function(){O[this.aa()].call(this,ed)},function(){this.G=this.G&-256|Xc.call(this,this.G&255,this.aa());this.A--},function(){this.G=ed.call(this,this.G,this.K());this.A--},function(){this.Y|= -20;this.C=this.M=this.Zb;this.A-=this.qb},function(){var a=this.G&255,b=this.G>>8,c,d=xc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?Gc(this):Cc(this);this.A-=this.Zd},function(){this.ha=this.G;this.G=(this.fa=this.G+1)&65535;this.W=this.G|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.I;this.I=(this.fa=this.I+1)&65535;this.W=this.I|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.J; +function(a,b){this.F=a[7].call(this,this.F,b.call(this))},function(a,b){this.D=a[7].call(this,this.D,b.call(this))}],Ag=[function(){var a=this.aa();16>(a&56)&&(this.Y|=1);yg[a].call(this,ec,vd)},function(){var a=this.aa();a&16||(this.Y|=1);yg[a].call(this,zg,vd)},function(){O[this.aa()].call(this,Ud)},function(){O[this.aa()].call(this,Vd)},N,N,N,N,N,N,N,G,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N, +N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N],fc=[function(){this.A-=2+(0>this.da?0:1);return this.Be.ua},function(){this.A-=2+(0>this.da?0:1);return this.Ig.ua},function(a){this.Y|=2;this.Be.load(a);this.A-= +17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.Ig.load(a);this.A-=17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.sb.load(a,!0)&&2048!=(this.sb.kc&2560)&&(3072==(this.sb.kc&3072)||this.sb.uc>=(this.Ea.ua&3)&&this.sb.uc>=(a&3)))return Cc(this),a;yc(this);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.sb.load(a,!0)&&512==(this.sb.kc&2560)&&this.sb.uc>=(this.Ea.ua&3)&&this.sb.uc>=(a&3))return Cc(this),a;yc(this);return a},M,M], +gc=[Ub,Ub,Ub,Ub,Ub,Ub,M,M],ec=gc,zg=[function(a){0>this.da?G.call(this):(Hc(this,this.da+2,this.Rc),Gc(this,this.da+4,this.Rc>>16),a=this.Ke-this.Rc,this.A-=11);return a},function(a){0>this.da?G.call(this):(Hc(this,this.da+2,this.Sc),Gc(this,this.da+4,this.Sc>>16),a=this.me-this.Sc,this.A-=12);return a},function(a){0>this.da?G.call(this):(this.Rc=F(this,this.da+2)|Fc(this,this.da+4)<<16,this.Ke=this.Rc+a,this.Y|=2,this.A-=11);return a},function(a){0>this.da?G.call(this):(this.Sc=F(this,this.da+2)| +Fc(this,this.da+4)<<16,this.me=this.Sc+a,this.Y|=2,this.A-=12);return a},function(){this.A-=2+(0>this.da?0:1);return this.ed},M,function(a){this.ed=this.ed&65520|a&-65521;this.A-=3+(0>this.da?0:3);this.ed&1&&bc(this,!0);this.Y|=2;return a},M];function Wb(){Ag[this.aa()].call(this)}function Yb(){K(this,this.X);this.A-=this.Zb}function Db(){var a=this.X;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.vk} +function Eb(){this.D=this.Aa();this.F=this.Aa();this.H=this.Aa();this.X+=2;this.B=this.Aa();this.J=this.Aa();this.I=this.Aa();this.G=this.Aa();this.A-=this.tk}function Fb(){O[this.aa()].call(this,Sd)}function Xb(){vg[this.aa()].call(this,Td)}function Gb(){K(this,this.K());this.A-=this.Zb}function Hb(){O[this.aa()].call(this,Nd)}function Ib(){K(this,this.aa());this.A-=this.Zb}function Jb(){O[this.aa()].call(this,Md)} +function Kb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=Va(this.ma,this.J,this.Ca-b-1);Gc(this,this.gb.Ob(this.D,0),d);this.D=this.D+(this.Ga&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}} +function Lb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=this.Ca-b-1,d=Va(this.ma,this.J,d)|Va(this.ma,this.J,d)<<8;Hc(this,this.gb.Ob(this.D,1),d);this.D=this.D+(this.Ga&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}} +function Mb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=Fc(this,this.bc.Jc(this.F,0));this.F=this.F+(this.Ga&1024?-1:1)&65535;this.A-=c;this.I-=b;Xa(this.ma,this.J,d,this.Ca-b-1);a&&(J(this,-2),this.Y|=256)}} +function Nb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=F(this,this.bc.Jc(this.F,1));this.F=this.F+(this.Ga&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Ca-b-1;Xa(this.ma,this.J,d&255,b);Xa(this.ma,this.J,d>>8,b);a&&(J(this,-2),this.Y|=256)}}function Bg(){var a=this.L();vc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Cg(){var a=this.L();vc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)} +function Dg(){var a=this.L();qc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Eg(){var a=this.L();qc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Fg(){var a=this.L();tc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Gg(){var a=this.L();tc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Hg(){var a=this.L();qc(this)||tc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db} +function Ig(){var a=this.L();qc(this)||tc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Jg(){var a=this.L();uc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Kg(){var a=this.L();uc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Lg(){var a=this.L();rc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Mg(){var a=this.L();rc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)} +function Ng(){var a=this.L();!uc(this)!=!vc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Og(){var a=this.L();!uc(this)==!vc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Pg(){var a=this.L();tc(this)||!uc(this)!=!vc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Qg(){var a=this.L();tc(this)||!uc(this)!=!vc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)} +function Rg(){xg[this.aa()].call(this,xd,this.aa);this.A-=0>this.Ba?1:this.wg}function Ob(){xg[this.aa()].call(this,Gd,ud)}function Pb(){yg[this.aa()].call(this,Hd,ud)}function Sg(){var a=this.K();I(this,this.Aa());this.X=this.X+a&65535;this.A-=this.Ak}function Tg(){I(this,this.Aa());this.A-=this.xk} +function Qb(){var a=this.K(),b=this.aa()&31;this.A-=11;K(this,this.H);var c=this.X;if(0>8,c,d=sc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?Bc(this):xc(this);this.A-=this.ae},function(){ug[this.aa()].call(this,Sc)},function(){vg[this.aa()].call(this,$c)},function(){wg[this.aa()].call(this,Sc)},function(){O[this.aa()].call(this,$c)},function(){this.G=this.G&-256|Sc.call(this,this.G&255,this.aa());this.A--},function(){this.G=$c.call(this,this.G,this.K());this.A--},function(){this.Y|= +20;this.C=this.M=this.bc;this.A-=this.rb},function(){var a=this.G&255,b=this.G>>8,c,d=sc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?Bc(this):xc(this);this.A-=this.ae},function(){this.ha=this.G;this.G=(this.fa=this.G+1)&65535;this.W=this.G|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.I;this.I=(this.fa=this.I+1)&65535;this.W=this.I|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.J; this.J=(this.fa=this.J+1)&65535;this.W=this.J|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.B;this.B=(this.fa=this.B+1)&65535;this.W=this.B|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.X;this.X=(this.fa=this.X+1)&65535;this.W=this.X|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.H;this.H=(this.fa=this.H+1)&65535;this.W=this.H|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.F;this.F=(this.fa=this.F+ 1)&65535;this.W=this.F|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.D;this.D=(this.fa=this.D+1)&65535;this.W=this.D|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.G;this.G=(this.fa=this.G-1)&65535;this.W=this.G|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.I;this.I=(this.fa=this.I-1)&65535;this.W=this.I|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.J;this.J=(this.fa=this.J-1)&65535;this.W=this.J| (this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.B;this.B=(this.fa=this.B-1)&65535;this.W=this.B|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.X;this.X=(this.fa=this.X-1)&65535;this.W=this.X|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.H;this.H=(this.fa=this.H-1)&65535;this.W=this.H|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.F;this.F=(this.fa=this.F-1)&65535;this.W=this.F|(this.W&this.$?1:0)<< -16;this.$=65536;this.A-=2},function(){this.ha=this.D;this.D=(this.fa=this.D-1)&65535;this.W=this.D|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){K(this,this.G);this.A-=this.Xb},function(){K(this,this.I);this.A-=this.Xb},function(){K(this,this.J);this.A-=this.Xb},function(){K(this,this.B);this.A-=this.Xb},function(){K(this,this.X-2&65535);this.A-=this.Xb},function(){K(this,this.H);this.A-=this.Xb},function(){K(this,this.F);this.A-=this.Xb},function(){K(this,this.D);this.A-=this.Xb},function(){this.G= -this.za();this.A-=this.Qb},function(){this.I=this.za();this.A-=this.Qb},function(){this.J=this.za();this.A-=this.Qb},function(){this.B=this.za();this.A-=this.Qb},function(){this.X=this.za();this.A-=this.Qb},function(){this.H=this.za();this.A-=this.Qb},function(){this.F=this.za();this.A-=this.Qb},function(){this.D=this.za();this.A-=this.Qb},Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Wg,function(){Dg[this.aa()].call(this,Dd,this.K);this.A-=0>this.Aa? -1:this.sg},Wg,function(){Dg[this.aa()].call(this,Dd,this.L);this.A-=0>this.Aa?1:this.sg},function(){zg[this.aa()].call(this,Pd)},function(){Ag[this.aa()].call(this,Qd)},function(){Bg[this.Pf=this.aa()].call(this,ae)},function(){O[this.Pf=this.aa()].call(this,be)},function(){this.Y|=1;zg[this.aa()].call(this,Nd)},function(){this.Y|=1;Ag[this.aa()].call(this,Nd)},function(){Bg[this.aa()].call(this,Nd)},function(){O[this.aa()].call(this,Nd)},function(){var a=this.aa();switch((a&56)>>3){case 0:this.lb= -this.fb.ua;break;case 1:this.lb=this.Da.ua;break;case 2:this.lb=this.Sb.ua;break;case 3:this.lb=this.Zb.ua;break;default:N.call(this);return}this.Y|=1;Ag[a].call(this,Od)},function(){this.Y|=1;this.C=this.M=this.Mk;O[this.aa()].call(this,Ud)},function(){var a,b=this.aa(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Ca){G.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.X;break;case 5:a=this.H;break;case 6:a=this.F;break; -case 7:a=this.D}}O[b].call(this,Nd);switch(c){case 0:uc(this,this.G);this.G=a;break;case 1:rc(this,this.I);this.I=a;break;case 2:tc(this,this.J);this.J=a;break;case 3:sc(this,this.B);this.B=a;break;case 4:uc(this,this.X);this.X=a;break;case 5:rc(this,this.H);this.H=a;break;case 6:tc(this,this.F);this.F=a;break;case 7:sc(this,this.D),this.D=a}},function(){this.Y|=1;Dg[this.aa()].call(this,Ed,this.za)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a;this.A-=3},function(){var a= -this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.X;this.X=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Dj},function(){var a=this.K(),b=this.K();K(this,this.Da.ua);K(this,this.qa); -ec(this,a,b);this.A-=this.Gj},function(){N.call(this)},function(){K(this,hc(this));this.A-=this.Xb},function(){fc(this,this.za());this.A-=this.Qb},function(){var a=this.G>>8;a&1?Fc(this):Bc(this);a&4?wc(this)||(this.fa^=1):wc(this)&&(this.fa^=1);a&16?Gc(this):Cc(this);a&64?Hc(this):Dc(this);a&128?Ic(this):zc(this)&&(this.fa^=this.$>>1|this.$>>2,this.ha^=32896);this.A-=this.kb},function(){this.G=this.G&255|(hc(this)&213)<<8;this.A-=this.kb},function(){this.G=this.G&-256|this.S(this.C,this.K());this.A-= -this.Xh},function(){this.G=this.T(this.C,this.K());this.A-=this.Xh},function(){var a=this.K(),b=this.G;Lc(this,this.C.Nb(a,0),b);this.A-=this.Yh},function(){var a=this.K(),b=this.G;Mc(this,this.C.Nb(a,1),b);this.A-=this.Yh},function(){var a=1,b=0,c=this.Zh;this.pa&192&&(a=this.I,b=1,c=this.ai,this.pa&256||(this.A-=this.$h));if(a--){var d=this.Fa&1024?-1:1,e=this.S(this.C,this.F);Lc(this,this.fb.Nb(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3: --2),this.Y|=256)}},function(){var a=1,b=0,c=this.Zh;this.pa&192&&(a=this.I,b=1,c=this.ai,this.pa&256||(this.A-=this.$h));if(a--){var d=this.Fa&1024?-2:2,e=this.T(this.C,this.F);Mc(this,this.fb.Nb(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Jh;this.pa&192&&(a=this.I,b=1,c=this.Lh,this.pa&256||(this.A-=this.Kh));if(a--){var d=this.Fa&1024?-1:1,e=this.S(this.C,this.F),f=this.N(this.fb,this.D);Xc.call(this, -e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.$a;this.I-=b;a&&yc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Jh;this.pa&192&&(a=this.I,b=1,c=this.Lh,this.pa&256||(this.A-=this.Kh));if(a--){var d=this.Fa&1024?-2:2,e=this.T(this.C,this.F),f=this.O(this.fb,this.D);ed.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.$a;this.I-=b;a&&yc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){this.W= -this.fa=this.ha=this.G&255&this.aa();this.$=256;this.A-=this.Zd},function(){this.W=this.fa=this.ha=this.G&this.K();this.$=65536;this.A-=this.Zd},function(){var a=1,b=0,c=this.ji;this.pa&192&&(a=this.I,b=1,c=this.li,this.pa&256||(this.A-=this.ki));if(a--){var d=this.G;Lc(this,this.fb.Nb(this.D,0),d);this.D=this.D+(this.Fa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.ji;this.pa&192&&(a=this.I,b=1,c=this.li,this.pa&256||(this.A-=this.ki));if(a--){var d= -this.G;Mc(this,this.fb.Nb(this.D,1),d);this.D=this.D+(this.Fa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Rh;this.pa&192&&(a=this.I,b=1,c=this.Th,this.pa&256||(this.A-=this.Sh));a--&&(this.G=this.G&-256|this.S(this.C,this.F),this.F=this.F+(this.Fa&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.Rh;this.pa&192&&(a=this.I,b=1,c=this.Th,this.pa&256||(this.A-=this.Sh));a--&&(this.G=this.T(this.C, -this.F),this.F=this.F+(this.Fa&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.di;this.pa&192&&(a=this.I,b=1,c=this.fi,this.pa&256||(this.A-=this.ei));a--&&(Xc.call(this,this.G&255,this.N(this.fb,this.D)),this.D=this.D+(this.Fa&1024?-1:1)&65535,this.A-=c-this.$a,this.I-=b,a&&yc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){var a=1,b=0,c=this.di;this.pa&192&&(a=this.I,b=1,c=this.fi,this.pa&256||(this.A-=this.ei));a--&&(ed.call(this, -this.G,this.O(this.fb,this.D)),this.D=this.D+(this.Fa&1024?-2:2)&65535,this.A-=c-this.$a,this.I-=b,a&&yc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){this.G=this.G&-256|this.aa();this.A-=this.kb},function(){this.I=this.I&-256|this.aa();this.A-=this.kb},function(){this.J=this.J&-256|this.aa();this.A-=this.kb},function(){this.B=this.B&-256|this.aa();this.A-=this.kb},function(){this.G=this.G&255|this.aa()<<8;this.A-=this.kb},function(){this.I=this.I&255|this.aa()<<8;this.A-=this.kb},function(){this.J= -this.J&255|this.aa()<<8;this.A-=this.kb},function(){this.B=this.B&255|this.aa()<<8;this.A-=this.kb},function(){this.G=this.K();this.A-=this.kb},function(){this.I=this.K();this.A-=this.kb},function(){this.J=this.K();this.A-=this.kb},function(){this.B=this.K();this.A-=this.kb},function(){this.X=this.K();this.A-=this.kb},function(){this.H=this.K();this.A-=this.kb},function(){this.F=this.K();this.A-=this.kb},function(){this.D=this.K();this.A-=this.kb},Xg,Yg,Xg,Yg,function(){O[this.aa()].call(this,Wd)}, -function(){O[this.aa()].call(this,Vd)},function(){this.Y|=1;Cg[this.aa()].call(this,Fd,this.aa)},function(){this.Y|=1;Dg[this.aa()].call(this,Fd,this.K)},Zg,$g,Zg,$g,function(){Oc.call(this,3,null,this.Xj)},function(){var a=this.aa(),b;a:{b=this.Uk[a];if(void 0!==b)for(var c=0;c>8)*a+this.G&255;this.$=256;this.A-=this.zj},function(){this.G=this.G&-256|(vc(this)?255:0);this.A-=2},function(){this.G= -this.G&-256|this.S(this.C,this.B+(this.G&255)&65535);this.A-=this.yk},ah,ah,ah,ah,ah,ah,ah,ah,function(){var a=this.L();(this.I=this.I-1&65535)&&this.W&this.$-1?(I(this,this.qa+a),this.A-=this.fk):this.A-=this.Uh},function(){var a=this.L();!(this.I=this.I-1&65535)||this.W&this.$-1?this.A-=this.Wh:(I(this,this.qa+a),this.A-=this.Vh)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.qa+a),this.A-=this.ek):this.A-=this.Uh},function(){var a=this.L();this.I?this.A-=this.Wh:(I(this,this.qa+ -a),this.A-=this.Vh)},function(){var a=this.aa();this.G=this.G&-256|$a(this.ma,a,this.Ba-2);this.A-=this.Oh},function(){var a=this.aa();this.G=$a(this.ma,a,this.Ba-1)|$a(this.ma,a+1&65535,this.Ba-2)<<8;this.A-=this.Oh},function(){var a=this.aa();bb(this.ma,a,this.G&255,this.Ba-2);this.A-=this.ci},function(){var a=this.aa();bb(this.ma,a,this.G&255,this.Ba-2);bb(this.ma,a+1&65535,this.G>>8,this.Ba-2);this.A-=this.ci},function(){var a=this.K();K(this,this.qa);I(this,this.qa+a);this.A-=this.Ej},function(){var a= -this.K();I(this,this.qa+a);this.A-=this.Ph},function(){ec(this,this.K(),this.K());this.A-=this.ak},function(){var a=this.L();I(this,this.qa+a);this.A-=this.Ph},function(){this.G=this.G&-256|$a(this.ma,this.J,this.Ba-1);this.A-=this.Nh},function(){this.G=$a(this.ma,this.J,this.Ba-1)|$a(this.ma,this.J+1&65535,this.Ba-1)<<8;this.A-=this.Nh},function(){bb(this.ma,this.J,this.G&255,this.Ba-1);this.A-=this.bi},function(){bb(this.ma,this.J,this.G&255,this.Ba-1);bb(this.ma,this.J+1&65535,this.G>>8,this.Ba- -1);this.A-=this.bi},bh,bh,function(){this.Y|=132;this.A-=this.qb},function(){this.Y|=68;this.A-=this.qb},function(){this.Ta|=4;this.A-=2;this.Fa&512||lb(this)},function(){vc(this)?Bc(this):Fc(this);this.A-=2},function(){this.lb=-1;Cg[this.aa()].call(this,Jd,Ad);0<=this.lb&&(this.G=this.lb)},function(){this.lb=-1;Dg[this.aa()].call(this,Kd,Ad);0<=this.lb&&(this.G=this.lb,this.J=this.wf)},function(){this.W&=~this.$;this.A-=2},function(){this.W|=this.$;this.A-=2},function(){this.Fa&=-513;this.A-=this.Cj}, -function(){this.Fa|=512;this.Y|=4;this.A-=2},function(){this.Fa&=-1025;this.A-=2},function(){this.Fa|=1024;this.A-=2},function(){Cg[this.aa()].call(this,Yb,Ad)},function(){Dg[this.aa()].call(this,$b,Ad)}]; -function P(a){v.call(this,"ChipSet",a,P);this.Ca=a.model;this.Ca=void 0!==this.Ca?parseInt(this.Ca,10):ch;this.Db=0;var b=a.sw1;if(b)this.Db=dh(b,eh|fh.Tk);else if(b=a.fdrives||2,this.Db|=Q.Jg,b--,this.Db|=(b&3)<=gh&&(this.Pe=this.Qe=2);this.cg=a.scaleTimers||!1;this.Bn=a.rtcDate;this.kj=!1;a.sound&&window&&"webkitAudioContext"in window&& -(this.Xg=new webkitAudioContext);this.reset();this.Ma()}y(v,P);var ch=5150,gh=5170,hh={none:0,tv:1,color:2,mono:3,ega:0},Q={Jg:1},eh=12,fh={Qn:16,Kn:32,Tk:48,Ee:48,Fe:4};Q.ONE=0;Q.Rn=64;Q.Pn=128;Q.Mn=192;Q.Ee=192;Q.Fe=6;g=P.prototype; -g.sb=function(a,b,c,d){switch(c){case "sw1":return this.oa[c]=d,ih(this,c,d,this.Db,{0:this.Ca==ch?"Bootable Floppy Drive":"Loop on POST",1:this.Ca==ch?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ca==ch)return this.oa[c]=d,ih(this,c,d,this.Ed,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.oa[c]=d,!0}return!1}; -g.dc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ga=d;this.Ea=a;this.Za=D(a,"Keyboard");this.zk=Math.round(c.ad/1193181);Za(b,this,jh);ab(b,this,kh);this.Ca=gh){this.Xa=16;this.Rc=0;this.jc=16;this.Lf=0;this.Kd=160;512<=th(this)&&(this.Kd|=16);3==uh(this)&&(this.Kd|=64);this.Pg=3;this.Of=0;this.Gb=Array(7);this.le=0;this.ka||(this.ka=Array(64), -vh(this,this.Bn));for(a=14;46>a;a++)void 0===this.ka[a]&&(this.ka[a]=0);this.ka[20]=this.Ec&(fh.Ee|2|Q.Jg|Q.Ee);this.ka[16]=wh(this,0)<<4|wh(this,1);xh(this)}}; -function vh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,Ga(a,"CMOS date invalid ("+b+"), using "+c)):b&&Ga(a,"CMOS date: "+c);a.ka[0]=c.getSeconds();a.ka[1]=0;a.ka[2]=c.getMinutes();a.ka[3]=0;a.ka[4]=c.getHours();a.ka[5]=0;a.ka[6]=c.getDay()+1;a.ka[7]=c.getDate();a.ka[8]=c.getMonth()+1;c=c.getFullYear();a.ka[9]=c%100;c/=100;a.ka[50]=c%10|c/10<<4;a.df=-1;a.ka[10]=38;a.ka[11]=2;a.ka[12]=0;a.ka[13]=128} -function xh(a){for(var b=0,c=16;46>c;c++)b+=a.ka[c];a.ka[47]=b&255;a.ka[46]=b>>8} -g.save=function(){var a=new H(this);a.set(0,[this.Db,this.Ed,this.Ec,this.ee]);for(var b=[],c=0;c=gh&&(a.set(5,[this.Xa,this.Rc,this.jc,this.Lf,this.Kd,this.Pg]),a.set(6,[this.Of,this.Gb,this.le,this.ka,this.df]));return a.data()}; -g.restore=function(a){var b,c;b=a[0];this.Db=b[0];this.Ed=b[1];this.Ec=b[2];this.ee=b[3];b=a[1];this.va=Array(this.Pe);for(c=0;c>2)+1)*a.gm+32*((b?a.Ed:a.ee)&15)}function Ah(a,b){var c=b?a.Db:a.Ec;return a.Ca!=ch||c&Q.Jg?((c&Q.Ee)>>Q.Fe)+1:0}function wh(a,b){return b>fh.Fe} -function ih(a,b,c,d,e){for(var f="",l=1;8>=l;l++){var k="pcjs-bitCell";l||(k+=" pcjs-bitCellLeft");f+='
'+l+"
\n"}c.innerHTML=f;b=B(c,"pcjs-bitCell");c=null;for(l=0;l>2].Ia[b&3],c,d,e)}function Jh(a,b,c){b=a.va[b>>2].Ia[b&3];b.Vf&&b.rh&&b.ug?(c&&(b.Wf=c),b.Zc||Pc(a,b,!0)):c&&c(!0)} -function Pc(a,b,c){c&&(b.count=b.Ob[1]<<8|b.Ob[0],b.Qk=b.mode&12,b.lj=b.Vc=!1);for(var d=!1;0<=b.count&&(c=b.xc<<16|b.tb[1]<<8|b.tb[0],4==b.Qk?(d=!0,function(c){b.rh.call(b.Vf,b.ug,-1,function(f,l){0>f&&(b.lj||(b.lj=!0),f=255);b.Zc||Wa(a.ma,c,f);(d=l)&&setTimeout(function(){Mh(b)||Pc(a,b)},0)})}(c)):8==b.Qk?(c=Ua(a.ma,c),0>b.rh.call(b.Vf,b.ug,c)&&(b.Vc=!0)):b.Vc=!0),!d&&!Mh(b););} -function Mh(a){if(!a.Vc&&0<=--a.count&&(a.mode&32?(a.tb[0]--,0>a.tb[0]&&(a.tb[0]=255,a.tb[1]--,0>a.tb[1]&&(a.tb[1]=255))):(a.tb[0]++,255>3,e=a.mb[d];e.vb|=1<<(b&7);e.lf=c||0;1==d&&(a.mb[0].vb|=4);Ph(a,d)}function Vh(a,b){var c=b>>3,d=a.mb[c],e=1<<(b&7);d.vb&e&&(d.vb&=~e,1!=c||d.vb||(a.mb[0].vb&=-5),Ph(a,c))} -function Nc(a,b){void 0===b&&(b=0);var c=-1,d=a.mb[b];if(d.lf)c=-2,d.lf--;else for(var e=d.vb&((d.wc|d.kd)^255),f=d.Ld+1;;){var f=f&7,l=1<>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var l=this.Fb[c];l.xf=f;l.mode=e;l.Yi=d;l.nc=[0,0];l.Ob=[0,0];l.Ue=[0,0];l.Hc=!1;l.Ze=!1;l.oe=!1;Xh(this,c);0==c&&Vh(this,0);2==c&&255==this.mb[0].kd&&77==this.Lb&&(c=this.Fb[0],c.Bc[0]=c.nc[0],c.Bc[1]=c.nc[1],c.Ad=qb(this.ja,this.cg))}else Yh(this,c),d=this.Fb[c],d.Ue[0]=d.Ob[0],d.Ue[1]=d.Ob[1],d.Ze=!0,Xh(this,c)}};function $h(a,b){var c=a.Fb[b],d=c.nc[1]<<8|c.nc[0];d||(d=1==c.Td?256:65536);return d} -function Xh(a,b){var c=a.Fb[b];c.pd=32==c.xf?1:0;c.Td=48==c.xf?2:1} -function Yh(a,b,c){var d=a.Fb[b];if(d.oe&&(2!=b||a.Lb&1)){var e=qb(a.ja,a.cg),f=(e-d.Ad)/a.zk|0;0>f&&(d.Ad=e,f=0);var l=$h(a,b),k=a.Fb[b],m=k.Bc[1]<<8|k.Bc[0];m||(m=1==k.Td?256:65536);k=m-f;0==d.mode?(0>=k&&(k=0),k||(d.Hc=!0,d.oe=!1,b||R(a,0))):4==d.mode?(d.Hc=1!=k,0>=k&&(k=l+k,0>=k&&(k=l),d.Bc[0]=k&255,d.Bc[1]=k>>8,d.Ad=e,!b&&d.Hc&&R(a,0))):6==d.mode&&(k-=f,0>=k&&(d.Hc=!d.Hc,k=l+k,0>=k&&(k=l),d.Bc[0]=k&255,d.Bc[1]=k>>8,d.Ad=e,!b&&d.Hc&&R(a,0)));d.Ob[0]=k&255;d.Ob[1]=k>>8;c&&(a.Ad=0)}return d} -function tb(a,b){for(var c=0;c=gh){var c=0,d=a.ja.ad,e=qb(a.ja,a.cg);if(0<=a.df&&(c=e-a.df,Math.floor(c/d)&&60<=++a.ka[0]&&(a.ka[0]=0,60<=++a.ka[2]&&(a.ka[2]=0,24<=++a.ka[4])))){a.ka[4]=0;a.ka[6]=a.ka[6]%7+1;var f=a.ka[9],l=ka[a.ka[8]-1];28==l&&0===f%4&&(f%100||0===f%400)&&l++;++a.ka[7]>l&&(a.ka[7]=1,12<++a.ka[8]&&(a.ka[8]=1,a.ka[9]=(a.ka[9]+1)%100))}a.df=e-c%d}}g.Vl=function(){var a=this.Rf;this.Oe&16&&(this.Lb&128?a=this.Ec:this.Za&&(a=ai(this.Za)));return a}; -g.en=function(a,b){this.Rf=b};g.Wl=function(){return this.Lb};g.fn=function(a,b){bi(this,b);if(this.Za){var c=this.Za,d=b&128?!1:!0,e=b&64?!0:!1;c.hh!==e&&(c.hh=c.ij=e);c.jh!==d&&(c.jh=d)&&(c.ij?(ci(c),c.ij=!1):di(c))}};function bi(a,b){var c=!!(b&2),d=!!(a.Lb&2);a.Lb=b;c!=d&&sb(a,c)}g.Xl=function(){var a=0,a=this.Ca==ch?this.Lb&4?a|this.ee&15:a|this.ee>>4&1:this.Lb&8?a|this.Ec>>4:a|this.Ec&15;this.Lb&1&&Yh(this,2).Hc&&(a=this.Lb&2?a|32:a|16);return a};g.gn=function(a,b){this.Rg=b};g.Yl=function(){return this.Oe}; -g.hn=function(a,b){this.Oe=b};g.ll=function(){var a=this.Lf;this.Xa&=-258;var b=this.Za&&ai(this.Za,!0);b&&ei(this,b);return a};g.zm=function(a,b){if(this.Xa&8)switch(this.Rc){case 96:this.jc=b;this.Xa=this.Xa&-5|b&4;break;case 209:fi(this,b);break;default:if(this.jc&=-17,this.Za){var c=-1;switch(b){case 255:c=250,ci(this.Za)}ei(this,c)}}this.Rc=b;this.Xa&=-9};g.ml=function(){var a=this.Lb&-193;this.Lb^=16;return a};g.Am=function(a,b){bi(this,b)}; -g.nl=function(){var a=this.Xa&255;this.Xa&256&&(this.Xa|=1,this.Xa&=-257);return a};g.ym=function(a,b){this.Rc=b;this.Xa|=8;var c=0;240<=this.Rc&&(c=this.Rc^15,this.Rc=240);switch(this.Rc){case 192:ei(this,this.Kd);break;case 173:this.jc|=16;break;case 174:this.jc&=-17;break;case 170:this.Za&&di(this.Za,!0);this.jc|=16;ei(this,85);fi(this,3);break;case 224:ei(this,this.jc&16?0:1);break;case 240:c&1&&dc(this.ja)}};function ei(a,b){0<=b&&(a.Lf=b,a.Xa&=-2,a.Xa|=256)} -function fi(a,b){a.Pg=b;Pa(a.ma,!!(b&2));b&1||dc(a.ja)}g.Bl=function(){return this.le};g.Nm=function(a,b){this.le=b;this.Qf=b&128?0:128};g.Cl=function(){var a=this.le&63;if(13>=a){var b=this.ka[a];if(10>a){var c=!1;4!=a&&5!=a||this.ka[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.ka[11]&4||(c&&128=c){if(e=b,10>c){var f=!1;this.ka[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};g.Tl=function(){return this.Of};g.bn=function(a,b){this.Of=b};g.dn=function(a,b){this.Qf=b};function dh(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;ec||2E4>8&255,this.gb[c++]=f[b]>>16&255,this.gb[c++]=f[b]>>24&255;else this.gb=d;this.Og=d.symbols;if(!this.gb.length){this.error("Empty ROM: "+a);return}if(1==this.gb.length){this.error(this.gb[0]);return}}catch(l){C(this, -"ROM data error: "+l.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.gb=Array(a.length),d=0;dthis.Kf?21:23,c=a.ka[b]|a.ka[b+1]<<8,c=c+(this.ed>>10);a.ka[b]=c&255;a.ka[b+1]=c>>8;xh(a)}}else this.error("No RAM allocated")}; -u(function(){for(var a=B(window.document,"pcjs","ram"),b=0;bthis.Ba? +1:this.wg},Rg,function(){yg[this.aa()].call(this,yd,this.L);this.A-=0>this.Ba?1:this.wg},function(){ug[this.aa()].call(this,Kd)},function(){vg[this.aa()].call(this,Ld)},function(){wg[this.Tf=this.aa()].call(this,Wd)},function(){O[this.Tf=this.aa()].call(this,Xd)},function(){this.Y|=1;ug[this.aa()].call(this,Id)},function(){this.Y|=1;vg[this.aa()].call(this,Id)},function(){wg[this.aa()].call(this,Id)},function(){O[this.aa()].call(this,Id)},function(){var a=this.aa();switch((a&56)>>3){case 0:this.nb= +this.gb.ua;break;case 1:this.nb=this.Ea.ua;break;case 2:this.nb=this.Tb.ua;break;case 3:this.nb=this.bc.ua;break;default:N.call(this);return}this.Y|=1;vg[a].call(this,Jd)},function(){this.Y|=1;this.C=this.M=this.Qk;O[this.aa()].call(this,Pd)},function(){var a,b=this.aa(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Da){G.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.X;break;case 5:a=this.H;break;case 6:a=this.F;break; +case 7:a=this.D}}O[b].call(this,Id);switch(c){case 0:pc(this,this.G);this.G=a;break;case 1:jc(this,this.I);this.I=a;break;case 2:oc(this,this.J);this.J=a;break;case 3:nc(this,this.B);this.B=a;break;case 4:pc(this,this.X);this.X=a;break;case 5:jc(this,this.H);this.H=a;break;case 6:oc(this,this.F);this.F=a;break;case 7:nc(this,this.D),this.D=a}},function(){this.Y|=1;yg[this.aa()].call(this,zd,this.Aa)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a;this.A-=3},function(){var a= +this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.X;this.X=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Hj},function(){var a=this.K(),b=this.K();K(this,this.Ea.ua);K(this,this.qa); +$b(this,a,b);this.A-=this.Kj},function(){N.call(this)},function(){K(this,cc(this));this.A-=this.Zb},function(){ac(this,this.Aa());this.A-=this.Rb},function(){var a=this.G>>8;a&1?Ac(this):wc(this);a&4?rc(this)||(this.fa^=1):rc(this)&&(this.fa^=1);a&16?Bc(this):xc(this);a&64?Cc(this):yc(this);a&128?Dc(this):uc(this)&&(this.fa^=this.$>>1|this.$>>2,this.ha^=32896);this.A-=this.mb},function(){this.G=this.G&255|(cc(this)&213)<<8;this.A-=this.mb},function(){this.G=this.G&-256|this.S(this.C,this.K());this.A-= +this.bi},function(){this.G=this.T(this.C,this.K());this.A-=this.bi},function(){var a=this.K(),b=this.G;Gc(this,this.C.Ob(a,0),b);this.A-=this.ci},function(){var a=this.K(),b=this.G;Hc(this,this.C.Ob(a,1),b);this.A-=this.ci},function(){var a=1,b=0,c=this.di;this.pa&192&&(a=this.I,b=1,c=this.fi,this.pa&256||(this.A-=this.ei));if(a--){var d=this.Ga&1024?-1:1,e=this.S(this.C,this.F);Gc(this,this.gb.Ob(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3: +-2),this.Y|=256)}},function(){var a=1,b=0,c=this.di;this.pa&192&&(a=this.I,b=1,c=this.fi,this.pa&256||(this.A-=this.ei));if(a--){var d=this.Ga&1024?-2:2,e=this.T(this.C,this.F);Hc(this,this.gb.Ob(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Oh;this.pa&192&&(a=this.I,b=1,c=this.Qh,this.pa&256||(this.A-=this.Ph));if(a--){var d=this.Ga&1024?-1:1,e=this.S(this.C,this.F),f=this.N(this.gb,this.D);Sc.call(this, +e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.bb;this.I-=b;a&&tc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Oh;this.pa&192&&(a=this.I,b=1,c=this.Qh,this.pa&256||(this.A-=this.Ph));if(a--){var d=this.Ga&1024?-2:2,e=this.T(this.C,this.F),f=this.O(this.gb,this.D);$c.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.bb;this.I-=b;a&&tc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){this.W= +this.fa=this.ha=this.G&255&this.aa();this.$=256;this.A-=this.ae},function(){this.W=this.fa=this.ha=this.G&this.K();this.$=65536;this.A-=this.ae},function(){var a=1,b=0,c=this.oi;this.pa&192&&(a=this.I,b=1,c=this.qi,this.pa&256||(this.A-=this.pi));if(a--){var d=this.G;Gc(this,this.gb.Ob(this.D,0),d);this.D=this.D+(this.Ga&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.oi;this.pa&192&&(a=this.I,b=1,c=this.qi,this.pa&256||(this.A-=this.pi));if(a--){var d= +this.G;Hc(this,this.gb.Ob(this.D,1),d);this.D=this.D+(this.Ga&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Wh;this.pa&192&&(a=this.I,b=1,c=this.Yh,this.pa&256||(this.A-=this.Xh));a--&&(this.G=this.G&-256|this.S(this.C,this.F),this.F=this.F+(this.Ga&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.Wh;this.pa&192&&(a=this.I,b=1,c=this.Yh,this.pa&256||(this.A-=this.Xh));a--&&(this.G=this.T(this.C, +this.F),this.F=this.F+(this.Ga&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.ii;this.pa&192&&(a=this.I,b=1,c=this.ki,this.pa&256||(this.A-=this.ji));a--&&(Sc.call(this,this.G&255,this.N(this.gb,this.D)),this.D=this.D+(this.Ga&1024?-1:1)&65535,this.A-=c-this.bb,this.I-=b,a&&tc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){var a=1,b=0,c=this.ii;this.pa&192&&(a=this.I,b=1,c=this.ki,this.pa&256||(this.A-=this.ji));a--&&($c.call(this, +this.G,this.O(this.gb,this.D)),this.D=this.D+(this.Ga&1024?-2:2)&65535,this.A-=c-this.bb,this.I-=b,a&&tc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){this.G=this.G&-256|this.aa();this.A-=this.mb},function(){this.I=this.I&-256|this.aa();this.A-=this.mb},function(){this.J=this.J&-256|this.aa();this.A-=this.mb},function(){this.B=this.B&-256|this.aa();this.A-=this.mb},function(){this.G=this.G&255|this.aa()<<8;this.A-=this.mb},function(){this.I=this.I&255|this.aa()<<8;this.A-=this.mb},function(){this.J= +this.J&255|this.aa()<<8;this.A-=this.mb},function(){this.B=this.B&255|this.aa()<<8;this.A-=this.mb},function(){this.G=this.K();this.A-=this.mb},function(){this.I=this.K();this.A-=this.mb},function(){this.J=this.K();this.A-=this.mb},function(){this.B=this.K();this.A-=this.mb},function(){this.X=this.K();this.A-=this.mb},function(){this.H=this.K();this.A-=this.mb},function(){this.F=this.K();this.A-=this.mb},function(){this.D=this.K();this.A-=this.mb},Sg,Tg,Sg,Tg,function(){O[this.aa()].call(this,Rd)}, +function(){O[this.aa()].call(this,Qd)},function(){this.Y|=1;xg[this.aa()].call(this,Ad,this.aa)},function(){this.Y|=1;yg[this.aa()].call(this,Ad,this.K)},Ug,Vg,Ug,Vg,function(){Jc.call(this,3,null,this.ak)},function(){var a=this.aa(),b;a:{b=this.Yk[a];if(void 0!==b)for(var c=0;c>8)*a+this.G&255;this.$=256;this.A-=this.Dj},function(){this.G=this.G&-256|(qc(this)?255:0);this.A-=2},function(){this.G= +this.G&-256|this.S(this.C,this.B+(this.G&255)&65535);this.A-=this.Ck},Wg,Wg,Wg,Wg,Wg,Wg,Wg,Wg,function(){var a=this.L();(this.I=this.I-1&65535)&&this.W&this.$-1?(I(this,this.qa+a),this.A-=this.jk):this.A-=this.Zh},function(){var a=this.L();!(this.I=this.I-1&65535)||this.W&this.$-1?this.A-=this.ai:(I(this,this.qa+a),this.A-=this.$h)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.qa+a),this.A-=this.ik):this.A-=this.Zh},function(){var a=this.L();this.I?this.A-=this.ai:(I(this,this.qa+ +a),this.A-=this.$h)},function(){var a=this.aa();this.G=this.G&-256|Va(this.ma,a,this.Ca-2);this.A-=this.Th},function(){var a=this.aa();this.G=Va(this.ma,a,this.Ca-1)|Va(this.ma,a+1&65535,this.Ca-2)<<8;this.A-=this.Th},function(){var a=this.aa();Xa(this.ma,a,this.G&255,this.Ca-2);this.A-=this.hi},function(){var a=this.aa();Xa(this.ma,a,this.G&255,this.Ca-2);Xa(this.ma,a+1&65535,this.G>>8,this.Ca-2);this.A-=this.hi},function(){var a=this.K();K(this,this.qa);I(this,this.qa+a);this.A-=this.Ij},function(){var a= +this.K();I(this,this.qa+a);this.A-=this.Uh},function(){$b(this,this.K(),this.K());this.A-=this.ek},function(){var a=this.L();I(this,this.qa+a);this.A-=this.Uh},function(){this.G=this.G&-256|Va(this.ma,this.J,this.Ca-1);this.A-=this.Sh},function(){this.G=Va(this.ma,this.J,this.Ca-1)|Va(this.ma,this.J+1&65535,this.Ca-1)<<8;this.A-=this.Sh},function(){Xa(this.ma,this.J,this.G&255,this.Ca-1);this.A-=this.gi},function(){Xa(this.ma,this.J,this.G&255,this.Ca-1);Xa(this.ma,this.J+1&65535,this.G>>8,this.Ca- +1);this.A-=this.gi},Xg,Xg,function(){this.Y|=132;this.A-=this.rb},function(){this.Y|=68;this.A-=this.rb},function(){this.Va|=4;this.A-=2;this.Ga&512||gb(this)},function(){qc(this)?wc(this):Ac(this);this.A-=2},function(){this.nb=-1;xg[this.aa()].call(this,Ed,vd);0<=this.nb&&(this.G=this.nb)},function(){this.nb=-1;yg[this.aa()].call(this,Fd,vd);0<=this.nb&&(this.G=this.nb,this.J=this.Af)},function(){this.W&=~this.$;this.A-=2},function(){this.W|=this.$;this.A-=2},function(){this.Ga&=-513;this.A-=this.Gj}, +function(){this.Ga|=512;this.Y|=4;this.A-=2},function(){this.Ga&=-1025;this.A-=2},function(){this.Ga|=1024;this.A-=2},function(){xg[this.aa()].call(this,Tb,vd)},function(){yg[this.aa()].call(this,Vb,vd)}]; +function P(a){v.call(this,"ChipSet",a,P);this.Da=a.model;this.Da=void 0!==this.Da?parseInt(this.Da,10):Yg;this.Eb=0;var b=a.sw1;if(b)this.Eb=Zg(b,$g|ah.Xk);else if(b=a.fdrives||2,this.Eb|=Q.Ng,b--,this.Eb|=(b&3)<=bh&&(this.Se=this.Te=2);this.gg=a.scaleTimers||!1;this.Fn=a.rtcDate;this.oj=!1;a.sound&&window&&"webkitAudioContext"in window&& +(this.ah=new webkitAudioContext);this.reset();this.Oa()}y(v,P);var Yg=5150,bh=5170,ch={none:0,tv:1,color:2,mono:3,ega:0},Q={Ng:1},$g=12,ah={Un:16,On:32,Xk:48,Ge:48,He:4};Q.ONE=0;Q.Vn=64;Q.Tn=128;Q.Qn=192;Q.Ge=192;Q.He=6;g=P.prototype; +g.tb=function(a,b,c,d){switch(c){case "sw1":return this.oa[c]=d,dh(this,c,d,this.Eb,{0:this.Da==Yg?"Bootable Floppy Drive":"Loop on POST",1:this.Da==Yg?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Da==Yg)return this.oa[c]=d,dh(this,c,d,this.Gd,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.oa[c]=d,!0}return!1}; +g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.Fa=a;this.ab=C(a,"Keyboard");this.Dk=Math.round(c.cd/1193181);Ua(b,this,eh);Wa(b,this,fh);this.Da=bh){this.Za=16;this.Tc=0;this.lc=16;this.Pf=0;this.Md=160;512<=oh(this)&&(this.Md|=16);3==ph(this)&&(this.Md|=64);this.Tg=3;this.Sf=0;this.Hb=Array(7);this.ne=0;this.ka||(this.ka=Array(64), +qh(this,this.Fn));for(a=14;46>a;a++)void 0===this.ka[a]&&(this.ka[a]=0);this.ka[20]=this.Hc&(ah.Ge|2|Q.Ng|Q.Ge);this.ka[16]=rh(this,0)<<4|rh(this,1);sh(this)}}; +function qh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ac("CMOS date invalid ("+b+"), using "+c)):b&&a.ac("CMOS date: "+c);a.ka[0]=c.getSeconds();a.ka[1]=0;a.ka[2]=c.getMinutes();a.ka[3]=0;a.ka[4]=c.getHours();a.ka[5]=0;a.ka[6]=c.getDay()+1;a.ka[7]=c.getDate();a.ka[8]=c.getMonth()+1;c=c.getFullYear();a.ka[9]=c%100;c/=100;a.ka[50]=c%10|c/10<<4;a.gf=-1;a.ka[10]=38;a.ka[11]=2;a.ka[12]=0;a.ka[13]=128} +function sh(a){for(var b=0,c=16;46>c;c++)b+=a.ka[c];a.ka[47]=b&255;a.ka[46]=b>>8} +g.save=function(){var a=new H(this);a.set(0,[this.Eb,this.Gd,this.Hc,this.ge]);for(var b=[],c=0;c=bh&&(a.set(5,[this.Za,this.Tc,this.lc,this.Pf,this.Md,this.Tg]),a.set(6,[this.Sf,this.Hb,this.ne,this.ka,this.gf]));return a.data()}; +g.restore=function(a){var b,c;b=a[0];this.Eb=b[0];this.Gd=b[1];this.Hc=b[2];this.ge=b[3];b=a[1];this.va=Array(this.Se);for(c=0;c>2)+1)*a.km+32*((b?a.Gd:a.ge)&15)}function vh(a,b){var c=b?a.Eb:a.Hc;return a.Da!=Yg||c&Q.Ng?((c&Q.Ge)>>Q.He)+1:0}function rh(a,b){return b>ah.He} +function dh(a,b,c,d,e){for(var f="",l=1;8>=l;l++){var k="pcjs-bitCell";l||(k+=" pcjs-bitCellLeft");f+='
'+l+"
\n"}c.innerHTML=f;b=B(c,"pcjs-bitCell");c=null;for(l=0;l>2].Ja[b&3],c,d,e)}function Eh(a,b,c){b=a.va[b>>2].Ja[b&3];b.Zf&&b.wh&&b.yg?(c&&(b.$f=c),b.ad||Kc(a,b,!0)):c&&c(!0)} +function Kc(a,b,c){c&&(b.count=b.Pb[1]<<8|b.Pb[0],b.Uk=b.mode&12,b.pj=b.Xc=!1);for(var d=!1;0<=b.count&&(c=b.zc<<16|b.ub[1]<<8|b.ub[0],4==b.Uk?(d=!0,function(c){b.wh.call(b.Zf,b.yg,-1,function(f,l){0>f&&(b.pj||(b.pj=!0),f=255);b.ad||Ra(a.ma,c,f);(d=l)&&setTimeout(function(){Hh(b)||Kc(a,b)},0)})}(c)):8==b.Uk?(c=Oa(a.ma,c),0>b.wh.call(b.Zf,b.yg,c)&&(b.Xc=!0)):b.Xc=!0),!d&&!Hh(b););} +function Hh(a){if(!a.Xc&&0<=--a.count&&(a.mode&32?(a.ub[0]--,0>a.ub[0]&&(a.ub[0]=255,a.ub[1]--,0>a.ub[1]&&(a.ub[1]=255))):(a.ub[0]++,255>3,e=a.ob[d];e.wb|=1<<(b&7);e.of=c||0;1==d&&(a.ob[0].wb|=4);Kh(a,d)}function Qh(a,b){var c=b>>3,d=a.ob[c],e=1<<(b&7);d.wb&e&&(d.wb&=~e,1!=c||d.wb||(a.ob[0].wb&=-5),Kh(a,c))} +function Ic(a,b){void 0===b&&(b=0);var c=-1,d=a.ob[b];if(d.of)c=-2,d.of--;else for(var e=d.wb&((d.yc|d.md)^255),f=d.Nd+1;;){var f=f&7,l=1<>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var l=this.Gb[c];l.Bf=f;l.mode=e;l.bj=d;l.pc=[0,0];l.Pb=[0,0];l.Xe=[0,0];l.Kc=!1;l.bf=!1;l.qe=!1;Sh(this,c);0==c&&Qh(this,0);2==c&&255==this.ob[0].md&&77==this.Mb&&(c=this.Gb[0],c.Dc[0]=c.pc[0],c.Dc[1]=c.pc[1],c.Cd=lb(this.ja,this.gg))}else Th(this,c),d=this.Gb[c],d.Xe[0]=d.Pb[0],d.Xe[1]=d.Pb[1],d.bf=!0,Sh(this,c)}};function Vh(a,b){var c=a.Gb[b],d=c.pc[1]<<8|c.pc[0];d||(d=1==c.Vd?256:65536);return d} +function Sh(a,b){var c=a.Gb[b];c.rd=32==c.Bf?1:0;c.Vd=48==c.Bf?2:1} +function Th(a,b,c){var d=a.Gb[b];if(d.qe&&(2!=b||a.Mb&1)){var e=lb(a.ja,a.gg),f=(e-d.Cd)/a.Dk|0;0>f&&(d.Cd=e,f=0);var l=Vh(a,b),k=a.Gb[b],m=k.Dc[1]<<8|k.Dc[0];m||(m=1==k.Vd?256:65536);k=m-f;0==d.mode?(0>=k&&(k=0),k||(d.Kc=!0,d.qe=!1,b||R(a,0))):4==d.mode?(d.Kc=1!=k,0>=k&&(k=l+k,0>=k&&(k=l),d.Dc[0]=k&255,d.Dc[1]=k>>8,d.Cd=e,!b&&d.Kc&&R(a,0))):6==d.mode&&(k-=f,0>=k&&(d.Kc=!d.Kc,k=l+k,0>=k&&(k=l),d.Dc[0]=k&255,d.Dc[1]=k>>8,d.Cd=e,!b&&d.Kc&&R(a,0)));d.Pb[0]=k&255;d.Pb[1]=k>>8;c&&(a.Cd=0)}return d} +function nb(a,b){for(var c=0;c=bh){var c=0,d=a.ja.cd,e=lb(a.ja,a.gg);if(0<=a.gf&&(c=e-a.gf,Math.floor(c/d)&&60<=++a.ka[0]&&(a.ka[0]=0,60<=++a.ka[2]&&(a.ka[2]=0,24<=++a.ka[4])))){a.ka[4]=0;a.ka[6]=a.ka[6]%7+1;var f=a.ka[9],l=ka[a.ka[8]-1];28==l&&0===f%4&&(f%100||0===f%400)&&l++;++a.ka[7]>l&&(a.ka[7]=1,12<++a.ka[8]&&(a.ka[8]=1,a.ka[9]=(a.ka[9]+1)%100))}a.gf=e-c%d}}g.Zl=function(){var a=this.Vf;this.Re&16&&(this.Mb&128?a=this.Hc:this.ab&&(a=Wh(this.ab)));return a}; +g.jn=function(a,b){this.Vf=b};g.$l=function(){return this.Mb};g.kn=function(a,b){Xh(this,b);if(this.ab){var c=this.ab,d=b&128?!1:!0,e=b&64?!0:!1;c.mh!==e&&(c.mh=c.mj=e);c.oh!==d&&(c.oh=d)&&(c.mj?(Yh(c),c.mj=!1):Zh(c))}};function Xh(a,b){var c=!!(b&2),d=!!(a.Mb&2);a.Mb=b;c!=d&&mb(a,c)}g.am=function(){var a=0,a=this.Da==Yg?this.Mb&4?a|this.ge&15:a|this.ge>>4&1:this.Mb&8?a|this.Hc>>4:a|this.Hc&15;this.Mb&1&&Th(this,2).Kc&&(a=this.Mb&2?a|32:a|16);return a};g.ln=function(a,b){this.Vg=b};g.bm=function(){return this.Re}; +g.mn=function(a,b){this.Re=b};g.pl=function(){var a=this.Pf;this.Za&=-258;var b=this.ab&&Wh(this.ab,!0);b&&$h(this,b);return a};g.Dm=function(a,b){if(this.Za&8)switch(this.Tc){case 96:this.lc=b;this.Za=this.Za&-5|b&4;break;case 209:ai(this,b);break;default:if(this.lc&=-17,this.ab){var c=-1;switch(b){case 255:c=250,Yh(this.ab)}$h(this,c)}}this.Tc=b;this.Za&=-9};g.ql=function(){var a=this.Mb&-193;this.Mb^=16;return a};g.Em=function(a,b){Xh(this,b)}; +g.rl=function(){var a=this.Za&255;this.Za&256&&(this.Za|=1,this.Za&=-257);return a};g.Cm=function(a,b){this.Tc=b;this.Za|=8;var c=0;240<=this.Tc&&(c=this.Tc^15,this.Tc=240);switch(this.Tc){case 192:$h(this,this.Md);break;case 173:this.lc|=16;break;case 174:this.lc&=-17;break;case 170:this.ab&&Zh(this.ab,!0);this.lc|=16;$h(this,85);ai(this,3);break;case 224:$h(this,this.lc&16?0:1);break;case 240:c&1&&Zb(this.ja)}};function $h(a,b){0<=b&&(a.Pf=b,a.Za&=-2,a.Za|=256)} +function ai(a,b){a.Tg=b;Ka(a.ma,!!(b&2));b&1||Zb(a.ja)}g.Fl=function(){return this.ne};g.Rm=function(a,b){this.ne=b;this.Uf=b&128?0:128};g.Gl=function(){var a=this.ne&63;if(13>=a){var b=this.ka[a];if(10>a){var c=!1;4!=a&&5!=a||this.ka[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.ka[11]&4||(c&&128=c){if(e=b,10>c){var f=!1;this.ka[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};g.Xl=function(){return this.Sf};g.fn=function(a,b){this.Sf=b};g.hn=function(a,b){this.Uf=b};function Zg(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;ec||2E4>8&255,this.hb[c++]=f[b]>>16&255,this.hb[c++]=f[b]>>24&255;else this.hb=d;this.Sg=d.symbols;if(!this.hb.length){t("Empty ROM: "+a);return}if(1==this.hb.length){t(this.hb[0]);return}}catch(l){this.xa("ROM data error: "+ +l.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.hb=Array(a.length),d=0;dthis.Of?21:23,c=a.ka[b]|a.ka[b+1]<<8,c=c+(this.gd>>10);a.ka[b]=c&255;a.ka[b+1]=c>>8;sh(a)}}else t("No RAM allocated")}; +u(function(){for(var a=B(window.document,"pcjs","ram"),b=0;ba.cc.length){if(!(!d&&!a.Ng[c]||d&&a.Ng[c])){a.Ng[c]=d;a.cc.push(b);1==a.cc.length&&a.ga&&R(a.ga,1);for(var e in mi)if(mi[e]==c){(c=a.oa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.cc.length&&a.cc.push(255)}function ri(a,b){var c=b?a.mm:a.lm;a.ja&&a.ja.Ic&&(c/=a.ja.Ic);return c}function si(a,b){!a.ce||void 0!==b&&b==a.ce||(clearTimeout(a.Nc[a.ce]),ti(a,a.ce,!1))} -function oi(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Dk=f);240==f+224?(a.wa&=-2,c&&(a.wa|=1),f+=224,e=!1):241==f+224?(a.wa&=-5,c&&(a.wa|=4),f+=224,e=!1):242==f+224?(a.wa&=-9,c&&(a.wa|=8),f+=224,e=!1):244==f+224?(a.wa&=-17,c&&(a.wa|=16),f+=224,d=pi(a,f)):91==f?(a.wa&=-33,c&&(a.wa|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.wa&12)&&(f=254),d=c?!pi(a,f):!1):void 0!==S[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.wa&=-33,a.bl||f!=a.Dk||si(a));void 0===d&&(d=!ti(a,f,c));return d} -function pi(a,b,c){var d=!1;si(a,b);ti(a,b,!0)&&(c?ti(a,b,!1):(c=!1,a.Nc[b]&&(clearTimeout(a.Nc[b]),c=!0),c=ri(a,c),a.Nc[a.ce=b]=setTimeout(function(a){return function(){ti(a,b,!1)}}(a),c)),d=!0);return d} -function ti(a,b,c){var d=!1;c||(a.Nc[b]=null,a.ce==b&&(a.ce=0));var e=S[b];void 0===e&&1<=b&&26>=b&&(e=S[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.wa&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.wa&17||(d=42):224==f?a.wa&18||(d=54):241==f?a.wa&4||(d=29):242==f&&(a.wa&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;cc.length)c=[!1,0,null,null,0,Array(Fi)];this.fg=b;this.Wa=e[2];this.$b=e[3];this.zc=d||e[4];65536<=this.zc&&720896<=this.Wa&&(this.$b=Math.min(this.zc>>2,32768));this.Wb=c[0];this.ec=c[1];this.Se=c[2];this.Bf=c[3];this.qc=c[4]&255;this.eg=c[4]>>8&255;this.Tb=c[5];this.zh=Fi;if(5==b){this.zh=Gi;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,this.zc,Array(this.zc>>2),771,0,4294967295, -0,4294967295,0,4294967295,0]);this.sd=b[0];this.Xd=b[1];this.Gd=b[2];this.Gi=b[3];this.kg=b[4];this.ph=b[5];this.te=b[6];this.If=b[7];this.sh=b[8];this.th=b[9];this.se=b[10];this.he=b[11];this.ib=b[12];d=this.zc>>2;if((this.Jd=b[14])&&this.Jd.length>8&255)}var Y=[,,function(a){a+=this.offset;return(this.ea.ib=this.la[a])>>this.ea.ri&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.la[b]>>8:this.la[b])&255}]; -Y[16]=function(a){a+=this.offset;a=this.la[a];for(var b=this.ea.Bh&this.ea.Ch,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.la[c]&~this.ea.Ra|(b|b<<8|b<<16|b<<24)&this.ea.Ra;d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Jc|b<<8-this.ea.Jc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.zd|this.ea.$d;d=d&this.ea.Ra|this.la[c]&~this.ea.Ra;d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Jc|b<<8-this.ea.Jc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.zd|this.ea.$d;d&=this.ea.ib;d=d&this.ea.Ra|this.la[c]&~this.ea.Ra;d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Jc|b<<8-this.ea.Jc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.zd|this.ea.$d;d|=this.ea.ib;d=d&this.ea.Ra|this.la[c]&~this.ea.Ra;d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Jc|b<<8-this.ea.Jc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.zd|this.ea.$d;d^=this.ea.ib;d=d&this.ea.Ra|this.la[c]&~this.ea.Ra;d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.Ra&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.la[d]&~c;c=c&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[d]!=c&&(this.la[d]=c,this.Na=!0)}; -Y[4096]=function(a){a+=this.offset;var b=this.la[a]&~this.ea.Ra|this.ea.ib&this.ea.Ra;this.la[a]!=b&&(this.la[a]=b,this.Na=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=Ci[b&15],d=d&this.ea.Ra|this.la[c]&~this.ea.Ra,d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=Ci[b&15],d=d&this.ea.ib,d=d&this.ea.Ra|this.la[c]&~this.ea.Ra,d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -Y[40960]=function(a,b){var c=a+this.offset,d=Ci[b&15],d=d|this.ea.ib,d=d&this.ea.Ra|this.la[c]&~this.ea.Ra,d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=Ci[b&15],d=d^this.ea.ib,d=d&this.ea.Ra|this.la[c]&~this.ea.Ra,d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -function Ji(a){var b=[];if(void 0!==a.fg){b[0]=a.Wb;b[1]=a.ec;b[2]=a.Se;b[3]=a.Bf;b[4]=a.qc|a.eg<<8;b[5]=a.Tb;if(5==a.fg){var c=[];c[0]=a.sd;c[1]=a.Xd;c[2]=a.Gd;c[3]=a.Gi;c[4]=a.kg;c[5]=a.ph;c[6]=a.te;c[7]=a.If;c[8]=a.sh;c[9]=a.th;c[10]=a.se;c[11]=a.he;c[12]=a.ib;c[13]=a.zc;var d;a:if(d=a.Jd){var e=0,f=[];if(void 0!==d[0])for(var l=0;2>l;l++)for(var k=l;k>1;f[e++]=m;k=n}if(f.length>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),Xa(this.ma,b,c|d<<8);hb(this,!0)}};function Qi(a){a.ia.kg&1?(a.yc=a.Vg,a.Mb=a.ia):(a.yc=a.ia,a.Mb=a.Uf)}g.save=function(){var a=new H(this);a.set(0,Ji(this.Vg));a.set(1,Ji(this.Uf));a.set(2,[this.xd,this.Kc,this.wd]);a.set(3,Ji(this.ia));return a.data()}; -g.restore=function(a){var b=a[2];this.xd=b[0];this.Kc=b[1];this.wd=b[2];this.ya=null;this.yc=this.Vg=new Di(this,1,a[0]);this.Mb=this.Uf=new Di(this,3,a[1]);this.ia=new Di(this,5,a[3],this.zc);this.ia.Wb&&Qi(this);Ri(this);if(!Ti(this))return!1;Ui(this);return!0}; -g.um=function(a,b,c){if(c)C(this,"Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){this.error("Empty font ROM image: "+a);return}if(1==d.length){this.error(d[0]);return}if(8192==d.length)ji(this,d,[0,6144]);else{C(this,"Unrecognized font data length ("+d.length+")");return}}catch(e){C(this,"Font ROM data error: "+e.message);return}this.Ma()}}; -function Vi(a,b){if(1==b)return a.Oc[0]=W[0],a.Oc[1]=W[7],a.Oc;if(2==b){var c=a.ya.Se;if(a.ya===a.ia){var d=a.ia.Gd[0],c=d&7;d&16&&(c|=8);18!=a.ia.Gd[1]&&(c|=32)}a.Oc[0]=W[c&15];c=c&32?Ai:zi;for(d=0;dgb||!ca?gb:8,ld=Rh.createImageData(n.Ub,n.Vb),ua=0;256>ua;ua++){for(Sa= -0;Sa=gb-2,Vj=mc[Sa>(8<=rb&&176<=ua&&223>=ua?7:rb)?r:kd;Yi(ld,Sh,Th,Uh);L&&Yi(ld,Sh+1,Th,Uh)}Rh.putImageData(ld,(ua&15)*n.Ub,(ua>>4)*n.Vb)}n.ge[x]="#"+aa(r[0])+aa(r[1])+aa(r[2]);n.Ni[x]=r;n.Kg[x]=nc;n=!0}}a.gd[b]=s;return n}function Zi(a){0a.Qd&&(a.Qd=0):a.Qd=-1} -function Ui(a){if(a.zb){for(var b=10;15>=b;b++)if(null==a.ya.Tb[b])return;var c=a.ya.Tb[10],b=c&31,d=a.ya.Tb[11]&31,e=a.ya.Tb[9]&31,f=!1;a.ya===a.ia&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)$i(a);else{c=a.ya.Tb[15]+((a.ya.Tb[14]&63)<<8);a.rc!=c&&($i(a),a.rc=c);d=d-b+1;if(a.Rk!=b||a.cj!=d)a.Rk=b,a.cj=d;a.qd=e+1;Zi(a)}}} -function $i(a){if(0<=a.rc){if(void 0!==a.Kb){var b=a.Kb[a.rc];if(b&131072){var b=b&-131073,c=a.rc%a.jb,d=Math.floor(a.rc/a.jb);a.zb&&a.gd[a.zb]&&(a.ne&&aj(a,c,d,b,a.ne),aj(a,c,d,b));a.Kb[a.rc]=b}}a.rc=-1}} -function bj(a){var b;a=a.ya;var c=a.he[5];if(null!=c){b=2;var d=512,e=a.he[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.Jc=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}g.Dd=function(a){var b=this.ya;null!=a&&b&&a!=b.yh&&(b.Fg(a),this.ma.Fg(b.Wa,b.$b,b.Ke))}; -function Ti(a,b){var c,d=a.wd,e=a.ya;if(e)if(1==e.fg)d=ui;else if(5==e.fg){var d=null,f=e.zc>>2,l=32768f&&(d=c?13:14):c&&(d-=2));c=bj(a)}}else e.ec&8&&(e.ec&2?(d=e.ec&16?6:5,e.ec&4||(d-=1)):(d=e.ec&1?3:1,e.ec&4&&(d-= -1)));else a.wd=null,null==d&&(d=a.Kc);if(!Si(a,d,b))return!1;a.Dd(c);return!0} -function Si(a,b,c){if(null!=b&&(b!=a.wd||c)){a.Wk=0;a.wd=b;b=a.ya||(b==ui?a.yc:a.Mb);if(b!=a.ya||b.Wa!=a.Wa||b.$b!=a.$b){$i(a);if(a.Wa){if(!Ta(a.ma,a.Wa,a.$b))return!1;a.ya&&(a.ya.Wb=!1)}a.ya=b;b.Wb=!0;a.Wa=b.Wa;a.$b=b.$b;if(!Qa(a.ma,b.Wa,b.$b,!1,b===a.ia?b:null))return!1}a.zb=0;a.jb=a.qg;a.Yb=a.Fh;a.Ah=U[ui][2];b=0;var d=U[a.wd];d&&(a.jb=d[0],a.Yb=d[1],a.Ah=d[2],b=d[3]||0,a.zb=d[4],4==a.xd&&a.ya===a.ia&&3==a.zb&&(7==a.ia.Tb[9]?a.Yb=43:a.zb=5));a.vj=a.jb*a.Yb;a.ng=a.vj/a.Ah;a.Wg=(a.ng<<1)+b;a.aj= -b?a.Wg+b>>1:0;13<=a.wd&&(a.ng<<=1);a.gd.length&&(a.Tc=Math.floor(a.Sc/a.jb),a.Uc=Math.floor(a.rd/a.Yb),a.zb?(b=a.gd[a.zb],d=a.gd[a.zb<<1],a.cl&&80==a.jb?d&&a.Tc>=3*d.Ub>>2&&(a.zb<<=1,b=d):(d&&a.Tc>=d.Ub&&(a.zb<<=1,b=d),b&&(a.Tc=b.Ub,a.Uc=b.Vb)),a.Ve=a.We=0,b&&(a.Ve=a.jb*b.Ub,a.We=a.Yb*b.Vb)):(a.Tc=a.Uc=1,a.Ve=a.jb,a.We=a.Yb),a.hg=a.Ac.createImageData(a.Ve,a.We),a.me=window.document.createElement("canvas"),a.me.width=a.Ve,a.me.height=a.We,a.ne=a.me.getContext("2d"),a.Ji=a.Ki=0,a.Yg=a.Sc,a.Zg=a.rd, -b=a.Sc-a.jb*a.Tc,d=a.rd-a.Yb*a.Uc,0>1,a.Yg-=b),0>1,a.Zg-=d),b||d)&&(a.Ac.fillStyle=a.pb.style.backgroundColor,a.Ac.fillRect(0,0,a.Sc,a.rd));!1!==c?hb(a,!0):cj(a,!0)}return!0}function Yi(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function cj(a,b){var c;if(b){if(c=a.ng,void 0===a.Kb||a.Kb.length!=c)a.Kb=Array(c)}else{if(void 0===a.Kb)return;c=a.Kb.length}for(var d=0;d>8;d=l&15;var k=a.gd[a.zb];k.Ge&&(d=k.Ge[d]);var m=l>>4&15;k.Ge&&(m=k.Ge[m]);e?(b*=k.Ub,c*=k.Vb,e.fillStyle=k.ge[m],e.fillRect(b,c,k.Ub,k.Vb)):(b=b*a.Tc+a.Ji,c=c*a.Uc+a.Ki,a.Ac.fillStyle=k.ge[m],a.Ac.fillRect(b,c,a.Tc,a.Uc));l&256&&(m=(f&15)*k.Ub,f=(f>>4)*k.Vb,e?e.drawImage(k.Kg[d],m,f,k.Ub,k.Vb,b,c,k.Ub,k.Vb):a.Ac.drawImage(k.Kg[d],m,f,k.Ub,k.Vb,b,c,a.Tc,a.Uc));l&512&&(f=a.Rk,l=a.cj,e?(a.qd&&a.qd!==k.Vb&&(f=Math.floor(f*k.Vb/a.qd),l=Math.floor(l*k.Vb/a.qd)), -e.fillStyle=k.ge[d],e.fillRect(b,c+f,k.Ub,l)):(a.qd&&a.qd!==a.Uc&&(f=Math.floor(f*a.Uc/a.qd),l=Math.floor(l*a.Uc/a.qd)),a.Ac.fillStyle=k.ge[d],a.Ac.fillRect(b,c+f,a.Tc,l)))} -function hb(a,b){if(a.yb){var c=!1;a.ya&&(a.ya===a.ia?a.ia.Xd&32&&(c=!0):a.ya.ec&8&&(c=!0));if(c||b){if(b)cj(a,!0);else if(void 0===a.Kb)return;var d=!1;!(b||++a.Wk&15)&&0<=a.Qd&&(a.Qd++,d=!0);var e=0,f=a.vj,c=a.ya.Wa,l=c+a.ya.$b,k=(a.ya.Tb[12]<<8)+a.ya.Tb[13];a.zb&&(k<<=1);var c=c+k,m=a.Wg;c+m>l&&(m=l-c,0>m&&(m=0));l=c+m;if(k=!b){for(var k=a.ma,n=!0,q=c>>k.Hb;0a.rc)return;e=a.rc;f=e+1}}if(a.zb){if(a.gd[a.zb]){d= -0;k=a.Pd=0;m=1048575;a.ya.ec&32&&(k=32768,m&=~k,a.Qd&2||(m&=-65537));for(c+=e<<1;c>8| -(s&255)<<8;r=k;var gb=16;q>=m))>>(gb-=m);Yi(a.hg,q++,x,n[kd])}q>V&&(V=q);x=da&&(da=x+1)}e+=2;l++;if(q>=a.jb){q=0;x+=2;if(x>a.Yb)break;x==a.Yb&&(x=1,e=c+a.aj)}}Lca;ca++)da=V&2155905152, -0>da&&(da=-da),da=X[da]||0,Yi(a.hg,k++,m,l[da]),V<<=1;k>q&&(q=k);m=L&&(L=m+1)}e++;if(k>=a.jb&&(k=0,++m>a.Yb))break}n>2),a=this.ia.Gi&-17|(this.Mf&1<e&&(e=0);e%b.Dh>b.om&&(c|=1);e%=b.yj;e>b.qm&&(c|=8);b.Ih=d-e;b===a.ia?(c|=b.Bf&48^48,b.sd=!1):c=(b.Bf^=9)|240;return b.Bf=c} -var Ki={948:T.prototype.Ql,949:T.prototype.Pl,952:T.prototype.Rl,954:T.prototype.Sl,980:T.prototype.yl,981:T.prototype.xl,984:T.prototype.zl,985:T.prototype.wl,986:T.prototype.Al},Li={948:T.prototype.$m,949:T.prototype.Zm,952:T.prototype.an,980:T.prototype.Lm,981:T.prototype.Km,984:T.prototype.Mm,985:T.prototype.Jm},Mi={960:T.prototype.rj,961:T.prototype.rj,962:T.prototype.bm,964:T.prototype.am,965:T.prototype.$l,970:T.prototype.Jl,972:T.prototype.Il,974:T.prototype.Hl,975:T.prototype.Gl},Ni={954:T.prototype.Bk, -960:T.prototype.Ak,961:T.prototype.Ak,962:T.prototype.cn,964:T.prototype.kn,965:T.prototype.jn,970:T.prototype.Vm,972:T.prototype.Um,974:T.prototype.Tm,975:T.prototype.Sm,986:T.prototype.Bk}; +S[339]=62;S[340]=63;S[341]=64;S[342]=65;S[343]=66;S[344]=67;S[345]=68;S[261]=75;S[262]=72;S[263]=77;S[264]=80;S[254]=61766;S[255]=15921491;g=gi.prototype; +g.tb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.oa[a])switch(c){case "kbd":return this.oa[a]=d,d.onkeydown=function(a){return ji(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.wa&32?e.wa&=-33:b=e.wa&12?!1:!ki(e,a);return b},d.onkeyup=function(a){return ji(e,a,!1)},!0;default:if(void 0!==ii[c]&&"button"==b)return this.oa[a]=d,d.onclick=function(a,b,c){return function(){a.ja&&a.ja.Ce();return!ki(a,c)}}(this,c,ii[c]),!0;if(void 0!==hi[c])return this.oa[a]= +d,b=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]),c=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.Fa=a;this.ga=C(a,"ChipSet")};g.Oa=function(){this.fl=(this.ol=oa("iOS"))||oa("Android");return v.prototype.Oa.call(this)};function Yh(a){a.fc=[170];a.ga&&R(a.ga,1,4)} +function Wh(a,b){var c=0;a.fc.length&&(c=a.fc[0],b&&Zh(a));return c}function Zh(a,b){0a.fc.length){if(!(!d&&!a.Rg[c]||d&&a.Rg[c])){a.Rg[c]=d;a.fc.push(b);1==a.fc.length&&a.ga&&R(a.ga,1);for(var e in hi)if(hi[e]==c){(c=a.oa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.fc.length&&a.fc.push(255)}function mi(a,b){var c=b?a.qm:a.pm;a.ja&&a.ja.Lc&&(c/=a.ja.Lc);return c}function ni(a,b){!a.ee||void 0!==b&&b==a.ee||(clearTimeout(a.Pc[a.ee]),oi(a,a.ee,!1))} +function ji(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Hk=f);240==f+224?(a.wa&=-2,c&&(a.wa|=1),f+=224,e=!1):241==f+224?(a.wa&=-5,c&&(a.wa|=4),f+=224,e=!1):242==f+224?(a.wa&=-9,c&&(a.wa|=8),f+=224,e=!1):244==f+224?(a.wa&=-17,c&&(a.wa|=16),f+=224,d=ki(a,f)):91==f?(a.wa&=-33,c&&(a.wa|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.wa&12)&&(f=254),d=c?!ki(a,f):!1):void 0!==S[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.wa&=-33,a.fl||f!=a.Hk||ni(a));void 0===d&&(d=!oi(a,f,c));return d} +function ki(a,b,c){var d=!1;ni(a,b);oi(a,b,!0)&&(c?oi(a,b,!1):(c=!1,a.Pc[b]&&(clearTimeout(a.Pc[b]),c=!0),c=mi(a,c),a.Pc[a.ee=b]=setTimeout(function(a){return function(){oi(a,b,!1)}}(a),c)),d=!0);return d} +function oi(a,b,c){var d=!1;c||(a.Pc[b]=null,a.ee==b&&(a.ee=0));var e=S[b];void 0===e&&1<=b&&26>=b&&(e=S[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.wa&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.wa&17||(d=42):224==f?a.wa&18||(d=54):241==f?a.wa&4||(d=29):242==f&&(a.wa&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;cc.length)c=[!1,0,null,null,0,Array(Ai)];this.jg=b;this.Ya=e[2];this.cc=e[3];this.Bc=d||e[4];65536<=this.Bc&&720896<=this.Ya&&(this.cc=Math.min(this.Bc>>2,32768));this.Xb=c[0];this.hc=c[1];this.Ve=c[2];this.Ff=c[3];this.sc=c[4]&255;this.ig=c[4]>>8&255;this.Ub=c[5];this.Eh=Ai;if(5==b){this.Eh=Bi;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,this.Bc,Array(this.Bc>>2),771,0,4294967295, +0,4294967295,0,4294967295,0]);this.ud=b[0];this.Zd=b[1];this.Id=b[2];this.Li=b[3];this.og=b[4];this.uh=b[5];this.ve=b[6];this.Mf=b[7];this.xh=b[8];this.yh=b[9];this.ue=b[10];this.je=b[11];this.kb=b[12];d=this.Bc>>2;if((this.Ld=b[14])&&this.Ld.length>8&255)}var Y=[,,function(a){a+=this.offset;return(this.ea.kb=this.la[a])>>this.ea.wi&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.la[b]>>8:this.la[b])&255}]; +Y[16]=function(a){a+=this.offset;a=this.la[a];for(var b=this.ea.Gh&this.ea.Hh,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.la[c]&~this.ea.Ta|(b|b<<8|b<<16|b<<24)&this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Bd|this.ea.be;d=d&this.ea.Ta|this.la[c]&~this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Bd|this.ea.be;d&=this.ea.kb;d=d&this.ea.Ta|this.la[c]&~this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Bd|this.ea.be;d|=this.ea.kb;d=d&this.ea.Ta|this.la[c]&~this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Bd|this.ea.be;d^=this.ea.kb;d=d&this.ea.Ta|this.la[c]&~this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.Ta&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.la[d]&~c;c=c&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[d]!=c&&(this.la[d]=c,this.Qa=!0)}; +Y[4096]=function(a){a+=this.offset;var b=this.la[a]&~this.ea.Ta|this.ea.kb&this.ea.Ta;this.la[a]!=b&&(this.la[a]=b,this.Qa=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d&this.ea.Ta|this.la[c]&~this.ea.Ta,d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d&this.ea.kb,d=d&this.ea.Ta|this.la[c]&~this.ea.Ta,d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +Y[40960]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d|this.ea.kb,d=d&this.ea.Ta|this.la[c]&~this.ea.Ta,d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d^this.ea.kb,d=d&this.ea.Ta|this.la[c]&~this.ea.Ta,d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +function Ei(a){var b=[];if(void 0!==a.jg){b[0]=a.Xb;b[1]=a.hc;b[2]=a.Ve;b[3]=a.Ff;b[4]=a.sc|a.ig<<8;b[5]=a.Ub;if(5==a.jg){var c=[];c[0]=a.ud;c[1]=a.Zd;c[2]=a.Id;c[3]=a.Li;c[4]=a.og;c[5]=a.uh;c[6]=a.ve;c[7]=a.Mf;c[8]=a.xh;c[9]=a.yh;c[10]=a.ue;c[11]=a.je;c[12]=a.kb;c[13]=a.Bc;var d;a:if(d=a.Ld){var e=0,f=[];if(void 0!==d[0])for(var l=0;2>l;l++)for(var k=l;k>1;f[e++]=m;k=n}if(f.length>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),Sa(this.ma,b,c|d<<8);bb(this,!0)}};function Li(a){a.ia.og&1?(a.Ac=a.Zg,a.Nb=a.ia):(a.Ac=a.ia,a.Nb=a.Yf)}g.save=function(){var a=new H(this);a.set(0,Ei(this.Zg));a.set(1,Ei(this.Yf));a.set(2,[this.zd,this.Nc,this.yd]);a.set(3,Ei(this.ia));return a.data()}; +g.restore=function(a){var b=a[2];this.zd=b[0];this.Nc=b[1];this.yd=b[2];this.za=null;this.Ac=this.Zg=new yi(this,1,a[0]);this.Nb=this.Yf=new yi(this,3,a[1]);this.ia=new yi(this,5,a[3],this.Bc);this.ia.Xb&&Li(this);Mi(this);if(!Oi(this))return!1;Pi(this);return!0}; +g.ym=function(a,b,c){if(c)this.xa("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){t("Empty font ROM image: "+a);return}if(1==d.length){t(d[0]);return}if(8192==d.length)ei(this,d,[0,6144]);else{this.xa("Unrecognized font data length ("+d.length+")");return}}catch(e){this.xa("Font ROM data error: "+e.message);return}this.Oa()}}; +function Qi(a,b){if(1==b)return a.Qc[0]=W[0],a.Qc[1]=W[7],a.Qc;if(2==b){var c=a.za.Ve;if(a.za===a.ia){var d=a.ia.Id[0],c=d&7;d&16&&(c|=8);18!=a.ia.Id[1]&&(c|=32)}a.Qc[0]=W[c&15];c=c&32?vi:ui;for(d=0;deb||!ba?eb:8,id=Mh.createImageData(n.Vb,n.Wb),sa=0;256>sa;sa++){for(Qa= +0;Qa=eb-2,Pj=kc[Qa>(8<=qb&&176<=sa&&223>=sa?7:qb)?r:hd;Ti(id,Nh,Oh,Ph);L&&Ti(id,Nh+1,Oh,Ph)}Mh.putImageData(id,(sa&15)*n.Vb,(sa>>4)*n.Wb)}n.ie[x]="#"+aa(r[0])+aa(r[1])+aa(r[2]);n.Si[x]=r;n.Og[x]=lc;n=!0}}a.jd[b]=s;return n}function Ui(a){0a.Sd&&(a.Sd=0):a.Sd=-1} +function Pi(a){if(a.Ab){for(var b=10;15>=b;b++)if(null==a.za.Ub[b])return;var c=a.za.Ub[10],b=c&31,d=a.za.Ub[11]&31,e=a.za.Ub[9]&31,f=!1;a.za===a.ia&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Vi(a);else{c=a.za.Ub[15]+((a.za.Ub[14]&63)<<8);a.tc!=c&&(Vi(a),a.tc=c);d=d-b+1;if(a.Vk!=b||a.gj!=d)a.Vk=b,a.gj=d;a.sd=e+1;Ui(a)}}} +function Vi(a){if(0<=a.tc){if(void 0!==a.Lb){var b=a.Lb[a.tc];if(b&131072){var b=b&-131073,c=a.tc%a.lb,d=Math.floor(a.tc/a.lb);a.Ab&&a.jd[a.Ab]&&(a.pe&&Wi(a,c,d,b,a.pe),Wi(a,c,d,b));a.Lb[a.tc]=b}}a.tc=-1}} +function Xi(a){var b;a=a.za;var c=a.je[5];if(null!=c){b=2;var d=512,e=a.je[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.Mc=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}g.Fd=function(a){var b=this.za;null!=a&&b&&a!=b.Dh&&(b.Jg(a),this.ma.Jg(b.Ya,b.cc,b.Ne))}; +function Oi(a,b){var c,d=a.yd,e=a.za;if(e)if(1==e.jg)d=pi;else if(5==e.jg){var d=null,f=e.Bc>>2,l=32768f&&(d=c?13:14):c&&(d-=2));c=Xi(a)}}else e.hc&8&&(e.hc&2?(d=e.hc&16?6:5,e.hc&4||(d-=1)):(d=e.hc&1?3:1,e.hc&4&&(d-= +1)));else a.yd=null,null==d&&(d=a.Nc);if(!Ni(a,d,b))return!1;a.Fd(c);return!0} +function Ni(a,b,c){if(null!=b&&(b!=a.yd||c)){a.$k=0;a.yd=b;b=a.za||(b==pi?a.Ac:a.Nb);if(b!=a.za||b.Ya!=a.Ya||b.cc!=a.cc){Vi(a);if(a.Ya){if(!Na(a.ma,a.Ya,a.cc))return!1;a.za&&(a.za.Xb=!1)}a.za=b;b.Xb=!0;a.Ya=b.Ya;a.cc=b.cc;if(!La(a.ma,b.Ya,b.cc,!1,b===a.ia?b:null))return!1}a.Ab=0;a.lb=a.ug;a.$b=a.Kh;a.Fh=U[pi][2];b=0;var d=U[a.yd];d&&(a.lb=d[0],a.$b=d[1],a.Fh=d[2],b=d[3]||0,a.Ab=d[4],4==a.zd&&a.za===a.ia&&3==a.Ab&&(7==a.ia.Ub[9]?a.$b=43:a.Ab=5));a.zj=a.lb*a.$b;a.rg=a.zj/a.Fh;a.$g=(a.rg<<1)+b;a.ej= +b?a.$g+b>>1:0;13<=a.yd&&(a.rg<<=1);a.jd.length&&(a.Vc=Math.floor(a.Uc/a.lb),a.Wc=Math.floor(a.td/a.$b),a.Ab?(b=a.jd[a.Ab],d=a.jd[a.Ab<<1],a.gl&&80==a.lb?d&&a.Vc>=3*d.Vb>>2&&(a.Ab<<=1,b=d):(d&&a.Vc>=d.Vb&&(a.Ab<<=1,b=d),b&&(a.Vc=b.Vb,a.Wc=b.Wb)),a.Ye=a.Ze=0,b&&(a.Ye=a.lb*b.Vb,a.Ze=a.$b*b.Wb)):(a.Vc=a.Wc=1,a.Ye=a.lb,a.Ze=a.$b),a.lg=a.Cc.createImageData(a.Ye,a.Ze),a.oe=window.document.createElement("canvas"),a.oe.width=a.Ye,a.oe.height=a.Ze,a.pe=a.oe.getContext("2d"),a.Oi=a.Pi=0,a.dh=a.Uc,a.eh=a.td, +b=a.Uc-a.lb*a.Vc,d=a.td-a.$b*a.Wc,0>1,a.dh-=b),0>1,a.eh-=d),b||d)&&(a.Cc.fillStyle=a.qb.style.backgroundColor,a.Cc.fillRect(0,0,a.Uc,a.td));!1!==c?bb(a,!0):Yi(a,!0)}return!0}function Ti(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Yi(a,b){var c;if(b){if(c=a.rg,void 0===a.Lb||a.Lb.length!=c)a.Lb=Array(c)}else{if(void 0===a.Lb)return;c=a.Lb.length}for(var d=0;d>8;d=l&15;var k=a.jd[a.Ab];k.Ie&&(d=k.Ie[d]);var m=l>>4&15;k.Ie&&(m=k.Ie[m]);e?(b*=k.Vb,c*=k.Wb,e.fillStyle=k.ie[m],e.fillRect(b,c,k.Vb,k.Wb)):(b=b*a.Vc+a.Oi,c=c*a.Wc+a.Pi,a.Cc.fillStyle=k.ie[m],a.Cc.fillRect(b,c,a.Vc,a.Wc));l&256&&(m=(f&15)*k.Vb,f=(f>>4)*k.Wb,e?e.drawImage(k.Og[d],m,f,k.Vb,k.Wb,b,c,k.Vb,k.Wb):a.Cc.drawImage(k.Og[d],m,f,k.Vb,k.Wb,b,c,a.Vc,a.Wc));l&512&&(f=a.Vk,l=a.gj,e?(a.sd&&a.sd!==k.Wb&&(f=Math.floor(f*k.Wb/a.sd),l=Math.floor(l*k.Wb/a.sd)), +e.fillStyle=k.ie[d],e.fillRect(b,c+f,k.Vb,l)):(a.sd&&a.sd!==a.Wc&&(f=Math.floor(f*a.Wc/a.sd),l=Math.floor(l*a.Wc/a.sd)),a.Cc.fillStyle=k.ie[d],a.Cc.fillRect(b,c+f,a.Vc,l)))} +function bb(a,b){if(a.zb){var c=!1;a.za&&(a.za===a.ia?a.ia.Zd&32&&(c=!0):a.za.hc&8&&(c=!0));if(c||b){if(b)Yi(a,!0);else if(void 0===a.Lb)return;var d=!1;!(b||++a.$k&15)&&0<=a.Sd&&(a.Sd++,d=!0);var e=0,f=a.zj,c=a.za.Ya,l=c+a.za.cc,k=(a.za.Ub[12]<<8)+a.za.Ub[13];a.Ab&&(k<<=1);var c=c+k,m=a.$g;c+m>l&&(m=l-c,0>m&&(m=0));l=c+m;if(k=!b){for(var k=a.ma,n=!0,q=c>>k.Ib;0a.tc)return;e=a.tc;f=e+1}}if(a.Ab){if(a.jd[a.Ab]){d= +0;k=a.Rd=0;m=1048575;a.za.hc&32&&(k=32768,m&=~k,a.Sd&2||(m&=-65537));for(c+=e<<1;c>8| +(s&255)<<8;r=k;var eb=16;q>=m))>>(eb-=m);Ti(a.lg,q++,x,n[hd])}q>V&&(V=q);x=ca&&(ca=x+1)}e+=2;l++;if(q>=a.lb){q=0;x+=2;if(x>a.$b)break;x==a.$b&&(x=1,e=c+a.ej)}}Lba;ba++)ca=V&2155905152, +0>ca&&(ca=-ca),ca=X[ca]||0,Ti(a.lg,k++,m,l[ca]),V<<=1;k>q&&(q=k);m=L&&(L=m+1)}e++;if(k>=a.lb&&(k=0,++m>a.$b))break}n>2),a=this.ia.Li&-17|(this.Qf&1<e&&(e=0);e%b.Ih>b.sm&&(c|=1);e%=b.Cj;e>b.um&&(c|=8);b.Nh=d-e;b===a.ia?(c|=b.Ff&48^48,b.ud=!1):c=(b.Ff^=9)|240;return b.Ff=c} +var Fi={948:T.prototype.Ul,949:T.prototype.Tl,952:T.prototype.Vl,954:T.prototype.Wl,980:T.prototype.Cl,981:T.prototype.Bl,984:T.prototype.Dl,985:T.prototype.Al,986:T.prototype.El},Gi={948:T.prototype.dn,949:T.prototype.cn,952:T.prototype.en,980:T.prototype.Pm,981:T.prototype.Om,984:T.prototype.Qm,985:T.prototype.Nm},Hi={960:T.prototype.vj,961:T.prototype.vj,962:T.prototype.fm,964:T.prototype.em,965:T.prototype.dm,970:T.prototype.Nl,972:T.prototype.Ml,974:T.prototype.Ll,975:T.prototype.Kl},Ii={954:T.prototype.Fk, +960:T.prototype.Ek,961:T.prototype.Ek,962:T.prototype.gn,964:T.prototype.on,965:T.prototype.nn,970:T.prototype.Zm,972:T.prototype.Ym,974:T.prototype.Xm,975:T.prototype.Wm,986:T.prototype.Fk}; u(function(){for(var a=B(window.document,"pcjs","video"),b=0;bMissing <canvas> support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new T(d,e,f);A(d,c)}}); -function Z(a){this.oj=a.adapter;switch(this.oj){case 1:this.yi=1016;this.mf=4;break;case 2:this.yi=760;this.mf=3;break;default:t("Unrecognized serial adapter #"+this.oj);return}this.od=null;v.call(this,"SerialPort",a,Z);var b=a.binding,c;a=gj;b&&(void 0===c&&(c="Panel"),(c=Fa(c,this.id))&&(b=c.oa[b])&&this.sb(null,null,a,b))}y(v,Z);var gj="buffer";g=Z.prototype;g.Ri=function(a,b){return a==this.vh?(this.sj=b,this):null}; -g.sb=function(a,b,c,d){var e=this;switch(c){case gj:return this.oa[c]=this.od=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),hj(e,[b]))},d.onkeypress=function(a){a=a||window.event;hj(e,[a.which||a.keyCode])},!0}return!1};g.dc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ga=d;this.ga=D(a,"ChipSet");Za(b,this,ij,this.yi);ab(b,this,jj,this.yi);this.Ma()}; -g.Rb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};g.Ib=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.ud()};g.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.Sg;c[b++]=this.Wi;c[b++]=this.fe;c[b++]=this.Nf;c[b++]=this.jd;c[b++]=this.Md;c[b++]=this.Fc;c[b++]=this.kc;c[b++]=this.Ui;c[b]=this.He;a.set(0,c);return a.data()};g.restore=function(a){return this.ud(a[0])}; -g.ud=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.Sg=a[b++];this.Wi=a[b++];this.fe=a[b++];this.Nf=a[b++];this.jd=a[b++];this.Md=a[b++];this.Fc=a[b++];this.kc=a[b++];this.Ui=a[b++];this.He=a[b];return!0};function hj(a,b){a.He=a.He.concat(b);kj(a)}function kj(a){0>8:this.Nf};g.Ll=function(){return this.jd};g.Ml=function(){return this.Md};g.Ol=function(){return this.Fc};g.Nl=function(){return this.kc};g.Ul=function(){return this.Ui}; -g.ln=function(a,b){if(this.Md&128)this.fe=this.fe&-256|b;else{this.Wi=b;this.kc&=-97;var c;this.od?(13!=b&&(8==b?this.od.value=this.od.value.slice(0,-1):(this.od.value+=String.fromCharCode(b),this.od.scrollTop=this.od.scrollHeight)),c=!0):c=!1;c&&(this.kc|=96)}};g.Wm=function(a,b){this.Md&128?this.fe=this.fe&255|b<<8:this.Nf=b};g.Xm=function(a,b){this.Md=b}; -g.Ym=function(a,b){var c=this.Fc;this.Fc=b;if(this.sj&&(c^b)&3){var c=this.sj,d=this.Fc,e=3==(d&3);if(e){if(!c.Wb){var f=!1;c.Fc&2||(c.reset(),f=!0);c.Fc&1||(f=!0);f&&hj(c.Te,[77]);lj(c,c.pb);c.Wb=e}}else c.Wb&&(mj(c.pb),c.Wb=e);c.Fc=d}};var ij={0:Z.prototype.Zl,1:Z.prototype.Kl,2:Z.prototype.Ll,3:Z.prototype.Ml,4:Z.prototype.Ol,5:Z.prototype.Nl,6:Z.prototype.Ul},jj={0:Z.prototype.ln,1:Z.prototype.Wm,3:Z.prototype.Xm,4:Z.prototype.Ym}; -u(function(){for(var a=B(window.document,"pcjs","serial"),b=0;ba.Cf||0>a.Df)a.Cf=b.clientX,a.Df=b.clientY;a.Ce=b.clientX-a.Cf;a.De=b.clientY-a.Df;(a.Ce||a.De)&&oj(a);a.Cf=b.clientX;a.Df=b.clientY}},!1),b.addEventListener("mousedown",function(b){pj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){pj(a,b.button,!1)},!1),a.gh=!0),b.style.cursor="none")}function mj(a){a&&(a.style.cursor="auto")} -function pj(a,b,c){if(a.Wb&&a.ja&&a.ja.pc)switch(b){case 0:a.Zf!=c&&(a.Zf=c,oj(a));break;case 2:a.$f!=c&&(a.$f=c,oj(a))}}function oj(a){hj(a.Te,[64|(a.Zf?32:0)|(a.$f?16:0)|(a.De&192)>>4|(a.Ce&192)>>6,a.Ce&63,a.De&63]);a.Ce=a.De=0}u(function(){for(var a=B(window.document,"pcjs","mouse"),b=0;bb.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.fc+":"+this.gc+":"+this.Lc+":"+this.xb,a+="&machine="+this.ea.re(),a+="&user="+this.ea.td(),d=la()+"/api/v1/disk?"+a,this.mh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"): --1!==b.indexOf("/",b.length-1)&&(c="dir"),d=la()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.pe?"":d)+"&format=json"));p(d,!0,null,this,this.rm,b)}; -g.rm=function(a,b,c,d){var e=null;this.qe=!1;var f=0>c&&this.Ea&&!this.Ea.yb;if(this.mh)c?C(this,'Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Wc=!0,e=this);else if(c)C(this,'Unable to load disk "'+this.dd+'" (error '+c+")",f);else try{if(0l&&0b.indexOf("0x")&&'["'!= -b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(k.length)if(1==k.length)this.error(k[0]);else{for(b=a=0;b>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var s=m.data;if(void 0===s){var r=m.bytes;if(void 0!==r&&r.length){for(var f=n<<2,x=r.length;xb&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=l>>16&255;c[d++]=l>>24&255}return c}function yj(a,b){var c=-1;if(b>2,c=(d>((b&3)<<3)&255;return c} -g.write=function(a,b,c){if(this.qe)return!1;if(b>2;b=(b&3)<<3;for(var l=d.length;l<=f;l++)d[l]=e;a.mc?f=a.Dc+a.mc&&(a.mc+=f-(a.Dc+a.mc)+1):(a.Dc=f,a.mc=1);d[f]=d[f]&~(255<=this.Eb.length||m>=this.Eb[k].length||n>=this.Eb[k][m].length){c="sector "+k+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.qe){c="unable to modify write-protected disk";b=-1;break}e= -l[f++];f=l[f++];l=e+f.length;k=this.Eb[k][m][n];for(m=k.data.length;mb&&C(this,"unable to restore disk '"+this.dd+": "+c);return b}; -function zj(a){v.call(this,"FDC",a,zj);this.dmaRead=this.$g;this.dmaWrite=this.ah;this.dmaFormat=this.Xk;this.be=null;if(a.autoMount&&(this.be=a.autoMount,"string"==typeof this.be))try{this.be=eval("("+a.autoMount+")")}catch(b){this.error("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.be=null}this.ac=[];this.Xc();this.Le()||this.Ma()}y(v,zj); -var Aj={3:{nd:3,Sd:0,name:"SPECIFY"},4:{nd:2,Sd:1,name:"DRIVE_STATUS"},5:{nd:9,Sd:7,name:"WRITE_DATA"},6:{nd:9,Sd:7,name:"READ_DATA"},7:{nd:2,Sd:0,name:"RECALIBRATE"},8:{nd:1,Sd:2,name:"INT_STATUS"},13:{nd:6,Sd:7,name:"FORMAT"},15:{nd:3,Sd:0,name:"SEEK"}};g=zj.prototype; -g.sb=function(a,b,c,d){switch(c){case "listDisks":return this.oa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.oa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){a.error("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d=''+d+""); -c.innerHTML=d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.oa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||Bj(a,c)}}(this,d),!0;case "loadDrive":return this.oa[c]=d,d.onclick=function(a){return function(){var b,c=a.oa.listDisks,d=a.oa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&ba.ra.restore(f)&&(e=!1);e&&a.ra&&void 0!==a.Qa&&(a.Ka=a.ra.seek(a.nb,a.bb,a.Pa));return e};g.Ei=function(){for(var a=0,b=[],c=0;ca.fc&&(C(this,'Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.hb)),b=null);b&&(a.ra=b,a.Jk=c,a.de=d,Ij(this,c,d,b),this.Cd|=128,C(this,'Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.hb),a.Wd));a.Wd&&(a.Wd=!1,--this.Od||this.Ma());Bj(this,a.hb)}; -function Bj(a,b){if(0<=b&&b=this.Sa&&(this.ta&=-81,this.eb=this.Sa=0);return a}; -g.Qm=function(a,b){this.Sa=Aj[c].nd){var d=!1;this.eb=0;var e,f,c=this.Ha()&31;switch(c){case 3:this.Ha("SRT");this.Ha("HLT");this.ob();break;case 4:f=this.Ha("DS");this.hb=f&3;e=this.sa[this.hb];this.ob();this.ab((e.Oa&4278190080)>>>24,"ST3");break;case 5:case 6:f=this.Ha("DS");this.hb=f&3;e=this.sa[this.hb];e.bb=f>>2&1;e.nb=this.Ha("C");this.Ha("H");e.Pa=this.Ha("R");d=this.Ha("N");e.Va=128<>>8,"ST1");this.ab((e.Oa&16711680)>>>16,"ST2");this.ab(e.nb,"C");this.ab(e.bb,"H");this.ab(e.Pa,"R");this.ab(d,"N");d=!0;break;case 7:f=this.Ha("DS");this.hb=f&3;e=this.sa[this.hb];e.nb=e.hd=0;e.Oa=268435488;this.ob();d=!0;break;case 8:e=this.sa[this.hb];e.bb=0;this.ob();Jj(this,e);this.ab(e.nb,"PCN");break;case 13:f=this.Ha("DS");this.hb=f&3;e=this.sa[this.hb];e.bb=f>>2&1;d=this.Ha("N");e.Va=128<>>8,"ST1");this.ab((e.Oa&16711680)>>>16,"ST2");this.ab(e.nb,"C");this.ab(e.bb,"H");this.ab(e.Pa,"R");this.ab(d,"N");d=!0;break;case 15:f=this.Ha("DS"),this.hb=f&3,e=this.sa[this.hb],e.bb=f>>2&1,c=this.Ha("NCN"),e.nb+=c-e.hd,0>e.nb&&(e.nb=0),e.nb>=e.fc&&(e.nb=e.fc-1),e.hd=c,e.Oa=32,0==e.nb&&(e.Oa|=268435456),this.ob(),d=!0}0b?this.tc(a,c):c(-1,!1)};g.ah=function(a,b){return void 0!==b&&0<=b?this.vc(a,b):-1};g.Xk=function(a,b){return void 0!==b&&0<=b?this.Ii(a,b):-1}; -g.bh=function(a){a.Oa=72;a.ra&&(a.Ka=null,a.Oa=0,this.ga&&(Lh(this.ga,2,this,"dmaRead",a),Jh(this.ga,2)))};g.dh=function(a){a.Oa=72;a.ra&&(a.ra.qe?a.Oa=576:(a.Ka=null,a.Oa=0,this.ga&&(Lh(this.ga,2,this,"dmaWrite",a),Jh(this.ga,2))))};g.dj=function(a){a.Oa=72;a.ra&&(a.Ka=null,a.Oa=0,this.ga&&(a.Rd=0,a.bc=Array(4),a.Me=!0,a.Re=0,Lh(this.ga,2,this,"dmaFormat",a),Jh(this.ga,2),a.Me=!1))}; -g.tc=function(a,b){var c=-1;if(!a.Oa&&a.ra){do{if(a.Ka&&0<=(c=yj(a.Ka,a.Qa++)))break;a.Ka=a.ra.seek(a.nb,a.bb,a.Pa);if(!a.Ka){a.Oa=1088;break}a.Qa=0;a.Pa++}while(1)}b(c,!1)};g.vc=function(a,b){if(a.Oa||!a.ra)return-1;do{if(a.Ka&&a.ra.write(a.Ka,a.Qa++,b))break;a.Ka=a.ra.seek(a.nb,a.bb,a.Pa);if(!a.Ka){a.Oa=8256;b=-1;break}a.Qa=0;a.Pa++}while(1);return b}; -g.Ii=function(a,b){if(a.Oa)return-1;a.bc[a.Rd++]=b;if(a.Rd==a.bc.length){a.nb=a.bc[0];a.bb=a.bc[1];a.Pa=a.bc[2];a.Va=128<this.vc(a,a.Si))return-1;a.Re++}a.Re>=a.ld&&(b=-1);return b};var Ej={1012:zj.prototype.Fl,1013:zj.prototype.Dl,1015:zj.prototype.El},Fj={1010:zj.prototype.Rm,1013:zj.prototype.Qm,1015:zj.prototype.Pm};u(function(){for(var a=B(window.document,"pcjs","fdc"),b=0;b=e&&(this.uf|=(f.type&3)<<(1-e<<1))}return d}; -g.Ci=function(){var a=0,b=[];this.Vd?(b[a++]=this.Bd,b[a++]=this.Ik,b[a++]=this.Ag,b[a++]=this.Bg,b[a++]=this.zg,b[a++]=this.yg,b[a++]=this.vf,b[a++]=this.ta,b[a++]=this.Ai):(b[a++]=this.uf,b[a++]=this.ta,b[a++]=this.Jb,b[a++]=this.eb,b[a++]=this.Sa,b[a++]=this.Hk,b[a++]=this.Gk,b[a++]=this.Fk,b[a++]=this.$e);b[a]=this.Ei();return b}; -g.wh=function(a,b,c,d,e){var f=0,l=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.hb=a;b.errorCode=d[f++];b.Nk=d[f++];b.pe=d[f++];b.ie=d[f++];b.je=d[f++];b.bb=d[f++];b.gc=d[f++];b.Fd=d[f++];b.Pa=d[f++];b.ld=d[f++];b.Va=d[f++];b.Sf=this.Vd?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.td()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Kj[this.af][b.type])b.type=this.il;c=Kj[this.af][b.type]; -b.Lc=c[2]||17;b.xb=c[3]||512;if(e&&this.ga&&(e=this.ga,c=b.type,e.ka)){var k=e.ka[18],k=a?k&240|c:k&15|c<<4;e.ka&&(e.ka[18]=k,xh(e))}void 0===b.ra&&(b.ra=null,C(this,"Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Pj(this,b);b.Qa=d[f++];b.Ka=null;b.ra&&(a=d[f],void 0!==a&&0>b.ra.restore(a)&&(l=!1),l&&void 0!==b.Qa&&(b.Ka=b.ra.seek(b.Fd,b.bb,b.Pa+b.Sf)));return l};g.Ei=function(){for(var a=0,b=[],c=0;c=this.Sa&&(this.eb=this.Sa=0,this.ta&=-15);return a};g.nn=function(a,b){this.Sa=c&&(this.ta|=2,this.ta&=-2,Qj(this))};g.fm=function(){var a=this.ta;this.eb=this.La.xb){var b=this;this.tc(this.La,function(a){0<=a?b.ga&&R(b.ga,14):(b.ta=1,b.Bd=16)},!1)}else this.ta=80;return a}; -g.Em=function(a,b){this.La&&this.La.Va>=this.La.xb&&(0>this.vc(this.La,b)?(this.ta=1,this.Bd=16):this.La.Qa==this.La.xb&&(this.La.Va-=this.La.xb,this.ga&&R(this.ga,14),this.La.Va>=this.La.xb||(this.ta=80)))};g.sl=function(){return this.Bd};g.Im=function(a,b){this.Ik=b};g.tl=function(){return this.Ag};g.Gm=function(a,b){this.Ag=b};g.ul=function(){return this.Bg};g.Hm=function(a,b){this.Bg=b};g.pl=function(){return this.zg};g.Dm=function(a,b){this.zg=b};g.ol=function(){return this.yg}; -g.Cm=function(a,b){this.yg=b};g.rl=function(){return this.vf};g.Fm=function(a,b){this.vf=b};g.vl=function(){return this.ta};g.Bm=function(a,b){this.Ai=b;this.ga&&Vh(this.ga,14);Rj(this)}; -function Rj(a){var b=!1,c=a.Ai,d=a.vf&16?1:0,e=a.vf&15,f=a.zg|(a.yg&3)<<8,l=a.Bg,k=a.Ag;a.La=null;a.Bd=0;a.ta=80;(d=a.sa[d])?(d.Fd=f,d.bb=e,d.Pa=l,d.Va=k*d.xb,c=144<=c?c:c&240,d.Ka=null,d.errorCode=0,a.La=d):c=-1;switch(c&240){case 32:a.tc(d,function(b){0<=b&&a.ga?(R(a.ga,14),a.ta=136):(a.ta=1,a.Bd=16)},!1);break;case 48:a.ga?(R(a.ga,14),a.ta=136):(a.ta=1,a.Bd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Bd=1;b=!0;break;case 145:d.gc=e+1,d.Lc=k,b=!0}b&&a.ga&&R(a.ga,14)} -function Qj(a){a.eb=0;var b=a.Ha(),c=a.Ha(),d=c&32,e=d>>5,f=c&31,l=a.Ha(),k=a.Ha(),m=l<<2&768|k,n=l&63,q=a.Ha(),s=a.Ha(),r=a.sa[e];r&&(r.Fd=m,r.bb=f,r.Pa=n,r.Va=q*r.xb);switch(b){case 3:a.ob(r?r.errorCode:4);a.ab(c);a.ab(l);a.ab(k);a.ab(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ha());)r&&cb?this.tc(a,c):c(-1,!1)}; -g.ah=function(a,b){return void 0!==b&&0<=b?this.vc(a,b):-1};g.Yk=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Qa=a.Lc+b&&(a.Pa=b,a.Ti++,a.Ti>=a.gc&&(a.Ti=0,a.Fd++))}g.Ii=function(a,b){if(a.errorCode)return-1;a.bc[a.Rd++]=b;if(a.Rd==a.bc.length){a.Fd=a.bc[0];a.bb=a.bc[1];a.Pa=a.bc[2];a.Va=128<this.vc(a,a.Si))return-1;a.Re++}a.Re>=a.ld&&(b=-1);return b}; -var Mj={800:$.prototype.em,801:$.prototype.fm,802:$.prototype.dm},Lj={496:$.prototype.ql,497:$.prototype.sl,498:$.prototype.tl,499:$.prototype.ul,500:$.prototype.pl,501:$.prototype.ol,502:$.prototype.rl,503:$.prototype.vl},Oj={800:$.prototype.nn,801:$.prototype.qn,802:$.prototype.pn,803:$.prototype.on,807:$.prototype.vi,811:$.prototype.vi,815:$.prototype.vi},Nj={496:$.prototype.Em,497:$.prototype.Im,498:$.prototype.Gm,499:$.prototype.Hm,500:$.prototype.Dm,501:$.prototype.Cm,502:$.prototype.Fm,503:$.prototype.Bm}; -u(function(){for(var a=B(window.document,"pcjs","hdc"),b=0;bak){if(d.load(this.zf)){this.Be=new H(this,"1.15.4","failsafe");this.Be.load()&&(ek(this,d),a=2);this.Be.set("timestamp",ja());Yj(this.Be);var e=this.hc&&!this.dg;if(1==a||ma("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),l=d.get("data");f&&("ok"==f?d.load(l):("error"==f&&"no machine state"!=l?(C(this,"Error: "+l),"unable to verify user"== -l&&(na(""),this.uc=null)):Ga(this,f+": "+l),Xj(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&dk(this,c?d:null)}else 2==a&&d.clear()}else dk(this);delete this.zf;delete this.Hg}e=Da(this.id);for(f=0;fa[1];a=a[2];this.yb=!0;this.gj||(Ga(this,"PCjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons \nLicense: GPL version 3 or later "),this.gj=!0);this.ja&&fk(this,this.ja,b,c,a);this.jj&&(ek(this,b),b.clear());!c&&this.Be&&(this.Be.clear(),delete this.Be)}; -function ek(a,b){if(ma("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.td(),d=b.toString(),e={app:"PCjs",ver:"1.15.4"};e.url=a.url;e.user=c;e.type="bug";e.data=d;p("http://www.pcjs.org/api/v1/report",!0,e)}} -function gk(a,b,c){var d,e="none",f=new H(a,"1.15.4"),l=new H(a,"1.15.4","validate"),k=ja();l.set("timestamp",k);f.set("timestamp",k);f.set("version","1.15.4");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.ja&&a.ja.Ib&&(c&&lb(a.ja),d=a.ja.Ib(b,c),"object"===typeof d&&f.set(a.ja.id,d),c&&(a.ja.yb=!1,!1===d&&(e=null)));for(var k=Da(a.id),m=0;m/g;f=l.exec(a);){var k=f[2],m=p(k),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var q=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(q){for(var k=q[0],s,r=/( [a-z]+=)(['"])(.*?)\2/g;s=r.exec(m);)k=0>k.indexOf(s[1])?k.replace(">",s[0]+">"):k.replace(new RegExp(s[1]+"(['\"])(.*?)\\1"),s[0]);q[0]!=k&&(n=n.replace(q[0],k))}else throw c="missing <"+f[1]+"> in "+k,Error(c); +function Z(a){this.sj=a.adapter;switch(this.sj){case 1:this.Di=1016;this.pf=4;break;case 2:this.Di=760;this.pf=3;break;default:t("Unrecognized serial adapter #"+this.sj);return}this.qd=null;v.call(this,"SerialPort",a,Z);var b=a.binding,c;a=bj;b&&(void 0===c&&(c="Panel"),(c=Ca(c,this.id))&&(b=c.oa[b])&&this.tb(null,null,a,b))}y(v,Z);var bj="buffer";g=Z.prototype;g.Wi=function(a,b){return a==this.Ah?(this.wj=b,this):null}; +g.tb=function(a,b,c,d){var e=this;switch(c){case bj:return this.oa[c]=this.qd=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),cj(e,[b]))},d.onkeypress=function(a){a=a||window.event;cj(e,[a.which||a.keyCode])},!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.ga=C(a,"ChipSet");Ua(b,this,dj,this.Di);Wa(b,this,ej,this.Di);this.Oa()}; +g.Sb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.wd()};g.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.Wg;c[b++]=this.$i;c[b++]=this.he;c[b++]=this.Rf;c[b++]=this.ld;c[b++]=this.Od;c[b++]=this.Ic;c[b++]=this.mc;c[b++]=this.Yi;c[b]=this.Je;a.set(0,c);return a.data()};g.restore=function(a){return this.wd(a[0])}; +g.wd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.Wg=a[b++];this.$i=a[b++];this.he=a[b++];this.Rf=a[b++];this.ld=a[b++];this.Od=a[b++];this.Ic=a[b++];this.mc=a[b++];this.Yi=a[b++];this.Je=a[b];return!0};function cj(a,b){a.Je=a.Je.concat(b);fj(a)}function fj(a){0>8:this.Rf};g.Pl=function(){return this.ld};g.Ql=function(){return this.Od};g.Sl=function(){return this.Ic};g.Rl=function(){return this.mc};g.Yl=function(){return this.Yi}; +g.pn=function(a,b){if(this.Od&128)this.he=this.he&-256|b;else{this.$i=b;this.mc&=-97;var c;this.qd?(13!=b&&(8==b?this.qd.value=this.qd.value.slice(0,-1):(this.qd.value+=String.fromCharCode(b),this.qd.scrollTop=this.qd.scrollHeight)),c=!0):c=!1;c&&(this.mc|=96)}};g.$m=function(a,b){this.Od&128?this.he=this.he&255|b<<8:this.Rf=b};g.an=function(a,b){this.Od=b}; +g.bn=function(a,b){var c=this.Ic;this.Ic=b;if(this.wj&&(c^b)&3){var c=this.wj,d=this.Ic,e=3==(d&3);if(e){if(!c.Xb){var f=!1;c.Ic&2||(c.reset(),f=!0);c.Ic&1||(f=!0);f&&cj(c.We,[77]);gj(c,c.qb);c.Xb=e}}else c.Xb&&(hj(c.qb),c.Xb=e);c.Ic=d}};var dj={0:Z.prototype.cm,1:Z.prototype.Ol,2:Z.prototype.Pl,3:Z.prototype.Ql,4:Z.prototype.Sl,5:Z.prototype.Rl,6:Z.prototype.Yl},ej={0:Z.prototype.pn,1:Z.prototype.$m,3:Z.prototype.an,4:Z.prototype.bn}; +u(function(){for(var a=B(window.document,"pcjs","serial"),b=0;ba.Gf||0>a.Hf)a.Gf=b.clientX,a.Hf=b.clientY;a.Ee=b.clientX-a.Gf;a.Fe=b.clientY-a.Hf;(a.Ee||a.Fe)&&jj(a);a.Gf=b.clientX;a.Hf=b.clientY}},!1),b.addEventListener("mousedown",function(b){kj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){kj(a,b.button,!1)},!1),a.lh=!0),b.style.cursor="none")}function hj(a){a&&(a.style.cursor="auto")} +function kj(a,b,c){if(a.Xb&&a.ja&&a.ja.rc)switch(b){case 0:a.cg!=c&&(a.cg=c,jj(a));break;case 2:a.dg!=c&&(a.dg=c,jj(a))}}function jj(a){cj(a.We,[64|(a.cg?32:0)|(a.dg?16:0)|(a.Fe&192)>>4|(a.Ee&192)>>6,a.Ee&63,a.Fe&63]);a.Ee=a.Fe=0}u(function(){for(var a=B(window.document,"pcjs","mouse"),b=0;bb.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.ic+":"+this.Yb+":"+this.Gc+":"+this.yb,a+="&machine="+this.ea.te(),a+="&user="+this.ea.vd(),d=la()+"/api/v1/disk?"+a,this.rh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"): +-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=la()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.re?"":d)+"&format=json"));p(d,!0,null,this,this.vm,b)}; +g.vm=function(a,b,c,d){var e=null;this.se=!1;var f=0>c&&this.Fa&&!this.Fa.zb;if(this.rh)c?this.xa('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Yc=!0,e=this);else if(c)this.xa('Unable to load disk "'+this.fd+'" (error '+c+")",f);else try{if(0l&&0b.indexOf("0x")&&'["'!= +b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(k.length)if(1==k.length)t(k[0]);else{for(b=a=0;b>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var s=m.data;if(void 0===s){var r=m.bytes;if(void 0!==r&&r.length){for(var f=n<<2,x=r.length;xb&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=l>>16&255;c[d++]=l>>24&255}return c}function tj(a,b){var c=-1;if(b>2,c=(d>((b&3)<<3)&255;return c} +g.write=function(a,b,c){if(this.se)return!1;if(b>2;b=(b&3)<<3;for(var l=d.length;l<=f;l++)d[l]=e;a.oc?f=a.Fc+a.oc&&(a.oc+=f-(a.Fc+a.oc)+1):(a.Fc=f,a.oc=1);d[f]=d[f]&~(255<=this.Fb.length||m>=this.Fb[k].length||n>=this.Fb[k][m].length){c="sector "+k+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.se){c="unable to modify write-protected disk";b=-1;break}e= +l[f++];f=l[f++];l=e+f.length;k=this.Fb[k][m][n];for(m=k.data.length;mb&&this.xa("unable to restore disk '"+this.fd+": "+c);return b}; +function uj(a){v.call(this,"FDC",a,uj);this.dmaRead=this.fh;this.dmaWrite=this.gh;this.dmaFormat=this.al;this.de=null;if(a.autoMount&&(this.de=a.autoMount,"string"==typeof this.de))try{this.de=eval("("+a.autoMount+")")}catch(b){t("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.de=null}this.dc=[];this.Zc();this.Oe()||this.Oa()}y(v,uj); +var vj={3:{pd:3,Ud:0,name:"SPECIFY"},4:{pd:2,Ud:1,name:"DRIVE_STATUS"},5:{pd:9,Ud:7,name:"WRITE_DATA"},6:{pd:9,Ud:7,name:"READ_DATA"},7:{pd:2,Ud:0,name:"RECALIBRATE"},8:{pd:1,Ud:2,name:"INT_STATUS"},13:{pd:6,Ud:7,name:"FORMAT"},15:{pd:3,Ud:0,name:"SEEK"}};g=uj.prototype; +g.tb=function(a,b,c,d){switch(c){case "listDisks":return this.oa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.oa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){t("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d=''+d+"");c.innerHTML= +d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.oa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||wj(a,c)}}(this,d),!0;case "loadDrive":return this.oa[c]=d,d.onclick=function(a){return function(){var b,c=a.oa.listDisks,d=a.oa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&ba.ra.restore(f)&&(e=!1);e&&a.ra&&void 0!==a.Sa&&(a.Ma=a.ra.seek(a.ib,a.La,a.Pa));return e};g.Ji=function(){for(var a=0,b=[],c=0;ca.ic&&(this.xa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.jb)),b=null);b&&(a.ra=b,a.Nk=c,a.fe=d,Dj(this,c,d,b),this.Ed|=128,this.xa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.jb),a.Yd));a.Yd&&(a.Yd=!1,--this.Qd||this.Oa());wj(this,a.jb)}; +function wj(a,b){if(0<=b&&b=this.Ua&&(this.ta&=-81,this.fb=this.Ua=0);return a}; +g.Um=function(a,b){this.Ua=vj[c].pd){var d=!1;this.fb=0;var e,f,c=this.Ia()&31;switch(c){case 3:this.Ia("SRT");this.Ia("HLT");this.pb();break;case 4:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];this.pb();this.cb((e.Ra&4278190080)>>>24,"ST3");break;case 5:case 6:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];e.La=f>>2&1;e.ib=this.Ia("C");this.Ia("H");e.Pa=this.Ia("R");d=this.Ia("N");e.Xa=128<>>8,"ST1");this.cb((e.Ra&16711680)>>>16,"ST2");this.cb(e.ib,"C");this.cb(e.La,"H");this.cb(e.Pa,"R");this.cb(d,"N");d=!0;break;case 7:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];e.ib=e.kd=0;e.Ra=268435488;this.pb();d=!0;break;case 8:e=this.sa[this.jb];e.La=0;this.pb();Ej(this,e);this.cb(e.ib,"PCN");break;case 13:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];e.La=f>>2&1;d=this.Ia("N");e.Xa=128<>>8,"ST1");this.cb((e.Ra&16711680)>>>16,"ST2");this.cb(e.ib,"C");this.cb(e.La,"H");this.cb(e.Pa,"R");this.cb(d,"N");d=!0;break;case 15:f=this.Ia("DS"),this.jb=f&3,e=this.sa[this.jb],e.La=f>>2&1,c=this.Ia("NCN"),e.ib+=c-e.kd,0>e.ib&&(e.ib=0),e.ib>=e.ic&&(e.ib=e.ic-1),e.kd=c,e.Ra=32,0==e.ib&&(e.Ra|=268435456),this.pb(),d=!0}0b?this.vc(a,c):c(-1,!1)};g.gh=function(a,b){return void 0!==b&&0<=b?this.xc(a,b):-1};g.al=function(a,b){return void 0!==b&&0<=b?this.Ni(a,b):-1}; +g.hh=function(a){a.Ra=72;a.ra&&(a.Ma=null,a.Ra=0,this.ga&&(Gh(this.ga,2,this,"dmaRead",a),Eh(this.ga,2)))};g.ih=function(a){a.Ra=72;a.ra&&(a.ra.se?a.Ra=576:(a.Ma=null,a.Ra=0,this.ga&&(Gh(this.ga,2,this,"dmaWrite",a),Eh(this.ga,2))))};g.hj=function(a){a.Ra=72;a.ra&&(a.Ma=null,a.Ra=0,this.ga&&(a.Td=0,a.ec=Array(4),a.Pe=!0,a.Ue=0,Gh(this.ga,2,this,"dmaFormat",a),Eh(this.ga,2),a.Pe=!1))}; +g.vc=function(a,b){var c=-1;if(!a.Ra&&a.ra){do{if(a.Ma&&0<=(c=tj(a.Ma,a.Sa++)))break;a.Ma=a.ra.seek(a.ib,a.La,a.Pa);if(!a.Ma){a.Ra=1088;break}a.Sa=0;this.Me(a)}while(1)}b(c,!1)};g.xc=function(a,b){if(a.Ra||!a.ra)return-1;do{if(a.Ma&&a.ra.write(a.Ma,a.Sa++,b))break;a.Ma=a.ra.seek(a.ib,a.La,a.Pa);if(!a.Ma){a.Ra=8256;b=-1;break}a.Sa=0;this.Me(a)}while(1);return b};g.Me=function(a){a.Pa++;a.Pa>=a.Gc+1&&(a.Pa=1,a.La++,a.La>=a.Yb&&(a.La=0,a.ib++))}; +g.Ni=function(a,b){if(a.Ra)return-1;a.ec[a.Td++]=b;if(a.Td==a.ec.length){a.ib=a.ec[0];a.La=a.ec[1];a.Pa=a.ec[2];a.Xa=128<this.xc(a,a.Xi))return-1;a.Ue++}a.Ue>=a.nd&&(b=-1);return b};var zj={1012:uj.prototype.Jl,1013:uj.prototype.Hl,1015:uj.prototype.Il},Aj={1010:uj.prototype.Vm,1013:uj.prototype.Um,1015:uj.prototype.Tm};u(function(){for(var a=B(window.document,"pcjs","fdc"),b=0;b=e&&(this.yf|=(f.type&3)<<(1-e<<1))}return d}; +g.Hi=function(){var a=0,b=[];this.Xd?(b[a++]=this.Dd,b[a++]=this.Mk,b[a++]=this.Eg,b[a++]=this.Fg,b[a++]=this.Dg,b[a++]=this.Cg,b[a++]=this.zf,b[a++]=this.ta,b[a++]=this.Fi):(b[a++]=this.yf,b[a++]=this.ta,b[a++]=this.Kb,b[a++]=this.fb,b[a++]=this.Ua,b[a++]=this.Lk,b[a++]=this.Kk,b[a++]=this.Jk,b[a++]=this.cf);b[a]=this.Ji();return b}; +g.Bh=function(a,b,c,d,e){var f=0,l=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.jb=a;b.errorCode=d[f++];b.Rk=d[f++];b.re=d[f++];b.ke=d[f++];b.le=d[f++];b.La=d[f++];b.Yb=d[f++];b.Hd=d[f++];b.Pa=d[f++];b.nd=d[f++];b.Xa=d[f++];b.Wf=this.Xd?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.vd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Fj[this.df][b.type])b.type=this.ml;c=Fj[this.df][b.type]; +b.Gc=c[2]||17;b.yb=c[3]||512;if(e&&this.ga&&(e=this.ga,c=b.type,e.ka)){var k=e.ka[18],k=a?k&240|c:k&15|c<<4;e.ka&&(e.ka[18]=k,sh(e))}void 0===b.ra&&(b.ra=null,this.xa("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Kj(this,b);b.Sa=d[f++];b.Ma=null;b.ra&&(a=d[f],void 0!==a&&0>b.ra.restore(a)&&(l=!1),l&&void 0!==b.Sa&&(b.Ma=b.ra.seek(b.Hd,b.La,b.Pa+b.Wf)));return l};g.Ji=function(){for(var a=0,b=[],c=0;c=this.Ua&&(this.fb=this.Ua=0,this.ta&=-15);return a};g.rn=function(a,b){this.Ua=c&&(this.ta|=2,this.ta&=-2,Lj(this))};g.jm=function(){var a=this.ta;this.fb=this.Na.yb){var b=this;this.vc(this.Na,function(a){0<=a?b.ga&&R(b.ga,14):(b.ta=1,b.Dd=16)},!1)}else this.ta=80;return a}; +g.Im=function(a,b){this.Na&&this.Na.Xa>=this.Na.yb&&(0>this.xc(this.Na,b)?(this.ta=1,this.Dd=16):this.Na.Sa==this.Na.yb&&(this.Na.Xa-=this.Na.yb,this.ga&&R(this.ga,14),this.Na.Xa>=this.Na.yb||(this.ta=80)))};g.wl=function(){return this.Dd};g.Mm=function(a,b){this.Mk=b};g.xl=function(){return this.Eg};g.Km=function(a,b){this.Eg=b};g.yl=function(){return this.Fg};g.Lm=function(a,b){this.Fg=b};g.tl=function(){return this.Dg};g.Hm=function(a,b){this.Dg=b};g.sl=function(){return this.Cg}; +g.Gm=function(a,b){this.Cg=b};g.vl=function(){return this.zf};g.Jm=function(a,b){this.zf=b};g.zl=function(){return this.ta};g.Fm=function(a,b){this.Fi=b;this.ga&&Qh(this.ga,14);Mj(this)}; +function Mj(a){var b=!1,c=a.Fi,d=a.zf&16?1:0,e=a.zf&15,f=a.Dg|(a.Cg&3)<<8,l=a.Fg,k=a.Eg;a.Na=null;a.Dd=0;a.ta=80;(d=a.sa[d])?(d.Hd=f,d.La=e,d.Pa=l,d.Xa=k*d.yb,c=144<=c?c:c&240,d.Ma=null,d.errorCode=0,a.Na=d):c=-1;switch(c&240){case 32:a.vc(d,function(b){0<=b&&a.ga?(R(a.ga,14),a.ta=136):(a.ta=1,a.Dd=16)},!1);break;case 48:a.ga?(R(a.ga,14),a.ta=136):(a.ta=1,a.Dd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Dd=1;b=!0;break;case 145:d.Yb=e+1,d.Gc=k,b=!0}b&&a.ga&&R(a.ga,14)} +function Lj(a){a.fb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,l=a.Ia(),k=a.Ia(),m=l<<2&768|k,n=l&63,q=a.Ia(),s=a.Ia(),r=a.sa[e];r&&(r.Hd=m,r.La=f,r.Pa=n,r.Xa=q*r.yb);switch(b){case 3:a.pb(r?r.errorCode:4);a.cb(c);a.cb(l);a.cb(k);a.cb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)r&&cb?this.vc(a,c):c(-1,!1)}; +g.gh=function(a,b){return void 0!==b&&0<=b?this.xc(a,b):-1};g.bl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Sa=a.Gc+b&&(a.Pa=b,a.La++,a.La>=a.Yb&&(a.La=0,a.Hd++))}; +g.Ni=function(a,b){if(a.errorCode)return-1;a.ec[a.Td++]=b;if(a.Td==a.ec.length){a.Hd=a.ec[0];a.La=a.ec[1];a.Pa=a.ec[2];a.Xa=128<this.xc(a,a.Xi))return-1;a.Ue++}a.Ue>=a.nd&&(b=-1);return b}; +var Hj={800:$.prototype.im,801:$.prototype.jm,802:$.prototype.hm},Gj={496:$.prototype.ul,497:$.prototype.wl,498:$.prototype.xl,499:$.prototype.yl,500:$.prototype.tl,501:$.prototype.sl,502:$.prototype.vl,503:$.prototype.zl},Jj={800:$.prototype.rn,801:$.prototype.un,802:$.prototype.tn,803:$.prototype.sn,807:$.prototype.Ai,811:$.prototype.Ai,815:$.prototype.Ai},Ij={496:$.prototype.Im,497:$.prototype.Mm,498:$.prototype.Km,499:$.prototype.Lm,500:$.prototype.Hm,501:$.prototype.Gm,502:$.prototype.Jm,503:$.prototype.Fm}; +u(function(){for(var a=B(window.document,"pcjs","hdc"),b=0;bUj){if(d.load(this.Df)){this.De=new H(this,"1.15.4","failsafe");this.De.load()&&(Yj(this,d),a=2);this.De.set("timestamp",ja());Sj(this.De);var e=this.jc&&!this.hg;if(1==a||ma("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),l=d.get("data");f&&("ok"==f?d.load(l):("error"==f&&"no machine state"!=l?(this.xa("Error: "+l),"unable to verify user"== +l&&(na(""),this.wc=null)):this.ac(f+": "+l),Rj(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Xj(this,c?d:null)}else 2==a&&d.clear()}else Xj(this);delete this.Df;delete this.Lg}e=Aa(this.id);for(f=0;fa[1];a=a[2];this.zb=!0;this.kj||(this.ac("PCjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons \nLicense: GPL version 3 or later "),this.kj=!0);this.ja&&Zj(this,this.ja,b,c,a);this.nj&&(Yj(this,b),b.clear());!c&&this.De&&(this.De.clear(),delete this.De)}; +function Yj(a,b){if(ma("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.vd(),d=b.toString(),e={app:"PCjs",ver:"1.15.4"};e.url=a.url;e.user=c;e.type="bug";e.data=d;p("http://www.pcjs.org/api/v1/report",!0,e)}} +function ak(a,b,c){var d,e="none",f=new H(a,"1.15.4"),l=new H(a,"1.15.4","validate"),k=ja();l.set("timestamp",k);f.set("timestamp",k);f.set("version","1.15.4");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.ja&&a.ja.Jb&&(c&&gb(a.ja),d=a.ja.Jb(b,c),"object"===typeof d&&f.set(a.ja.id,d),c&&(a.ja.zb=!1,!1===d&&(e=null)));for(var k=Aa(a.id),m=0;m/g;f=l.exec(a);){var k=f[2],m=p(k),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var q=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(q){for(var k=q[0],s,r=/( [a-z]+=)(['"])(.*?)\2/g;s=r.exec(m);)k=0>k.indexOf(s[1])?k.replace(">",s[0]+">"):k.replace(new RegExp(s[1]+"(['\"])(.*?)\\1"),s[0]);q[0]!=k&&(n=n.replace(q[0],k))}else throw c="missing <"+f[1]+"> in "+k,Error(c); }n=n.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(f[0],n);l.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/\s*/g,"")),f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+ (255 entry for type="panel". + */ + var panel = Component.getComponentByID('panel', parmsComputer['id']); + if (panel) { + modules['panel'] = [panel]; + /* + * Iterate through all the other components and update their print methods if the Control Panel has provided overrides. + */ + if (panel.controlPrint) { + var aComponents = Component.getComponents(parmsComputer['id']); + for (var iComponent = 0; iComponent < aComponents.length; iComponent++) { + component = aComponents[iComponent]; + if (component == panel) continue; + component.notice = panel.notice; + component.println = panel.println; + component.controlPrint = panel.controlPrint; + } + } + } + var abMemory; var addrStart = 0, addrEnd = 0; @@ -326,15 +349,6 @@ C1PComputer.init = function() } } - /* - * Let's see if the Control Panel is installed (NOTE: its ID must be "panel", and only one per machine is supported); - * the Panel needs our setPower() notifications, and this relieves us from having an explicit entry for type="panel". - */ - component = Component.getComponentByID('panel', parmsComputer['id']); - if (component) { - modules['panel'] = [component]; - } - var computer = new C1PComputer(parmsComputer, modules); /* * We may eventually add a "Power" button, but for now, all we have is a "Reset" button diff --git a/my_modules/c1pjs-client/lib/disk.js b/my_modules/c1pjs-client/lib/disk.js index f042407b4..9699363bd 100644 --- a/my_modules/c1pjs-client/lib/disk.js +++ b/my_modules/c1pjs-client/lib/disk.js @@ -809,7 +809,7 @@ C1PDiskController.prototype.loadDisk = function(sDiskName, sDiskData, nErrorCode * to its trackNum index, but just in case that wasn't intended, we're going to mention it. */ if (iTrackNum != iTrack) { - this.warning("track " + iTrackNum + " out of order (expected " + iTrack + ")"); + Component.warning("track " + iTrackNum + " out of order (expected " + iTrack + ")"); } /* * For each track, we start with an empty trackData array and "push" (ie, append) all the diff --git a/my_modules/c1pjs-client/lib/panel.js b/my_modules/c1pjs-client/lib/panel.js index 08356e4c3..180999b35 100644 --- a/my_modules/c1pjs-client/lib/panel.js +++ b/my_modules/c1pjs-client/lib/panel.js @@ -56,19 +56,19 @@ Component.subclass(Component, C1PPanel); * component that doesn't recognize the specified binding should simply ignore it. * * @this {C1PPanel} - * @param {string|null} c is the class of the HTML control (eg, "input", "output") - * @param {string|null} t is the type of the HTML control (eg, "button", "list", "text", "submit", "textarea") - * @param {string} s is the value of the 'binding' parameter stored in the HTML control's "data-value" attribute (eg, "reset") - * @param {Object} e is the HTML control DOM object (eg, HTMLButtonElement) + * @param {string|null} sHTMLClass is the class of the HTML control (eg, "input", "output") + * @param {string|null} sHTMLType is the type of the HTML control (eg, "button", "list", "text", "submit", "textarea", "canvas") + * @param {string} sBinding is the value of the 'binding' parameter stored in the HTML control's "data-value" attribute (eg, "reset") + * @param {Object} control is the HTML control DOM object (eg, HTMLButtonElement) * @return {boolean} true if binding was successful, false if unrecognized binding request */ -C1PPanel.prototype.setBinding = function(c, t, s, e) +C1PPanel.prototype.setBinding = function(sHTMLClass, sHTMLType, sBinding, control) { - if (this.cmp && this.cmp.setBinding(c, t, s, e)) return true; - if (this.cpu && this.cpu.setBinding(c, t, s, e)) return true; - if (this.kbd && this.kbd.setBinding(c, t, s, e)) return true; - if (DEBUGGER && this.dbg && this.dbg.setBinding(c, t, s, e)) return true; - return Component.prototype.setBinding.call(this, c, t, s, e); + if (this.cmp && this.cmp.setBinding(sHTMLClass, sHTMLType, sBinding, control)) return true; + if (this.cpu && this.cpu.setBinding(sHTMLClass, sHTMLType, sBinding, control)) return true; + if (this.kbd && this.kbd.setBinding(sHTMLClass, sHTMLType, sBinding, control)) return true; + if (DEBUGGER && this.dbg && this.dbg.setBinding(sHTMLClass, sHTMLType, sBinding, control)) return true; + return Component.prototype.setBinding.call(this, sHTMLClass, sHTMLType, sBinding, control); }; /** diff --git a/my_modules/diskdump/lib/diskdump.js b/my_modules/diskdump/lib/diskdump.js index c6228ca6c..d1f28e3e4 100644 --- a/my_modules/diskdump/lib/diskdump.js +++ b/my_modules/diskdump/lib/diskdump.js @@ -731,7 +731,8 @@ DiskDump.readFile = function(sPath, sEncoding, done) /** * isExcluded(sName) - * + * + * @this {DiskDump} * @param {string} sName is the basename of a file under consideration * @return {boolean} is true if the file should be excluded, false if not */ @@ -752,6 +753,7 @@ DiskDump.prototype.isExcluded = function(sName) * object creation from any I/O that the object may perform, to ensure that a callback can never * be called before the caller has actually received the newly created object. * + * @this {DiskDump} * @param {function(Error)} done */ DiskDump.prototype.loadFile = function(done) @@ -774,6 +776,7 @@ DiskDump.prototype.loadFile = function(done) * * Records the loaded disk data buffer * + * @this {DiskDump} * @param {Error} err * @param {Buffer|string} buf * @param {function(Error)} done @@ -818,6 +821,7 @@ DiskDump.prototype.setData = function(err, buf, done) /** * dumpLine(nIndent, sLine, sComment) * + * @this {DiskDump} * @param {number} [nIndent] is the relative number of characters to indent the given line (0 if none) * @param {string} [sLine] is the given line * @param {string} [sComment] is an optional comment to append to the line, if comment output is enabled @@ -840,6 +844,7 @@ DiskDump.prototype.dumpLine = function(nIndent, sLine, sComment) /** * dumpProp(sKey, value, fLast) * + * @this {DiskDump} * @param {string} sKey * @param {number|string|null} value * @param {boolean} [fLast] @@ -857,6 +862,7 @@ DiskDump.prototype.dumpProp = function(sKey, value, fLast) /** * dumpBuffer(sKey, buf, len, cbItem, offData) * + * @this {DiskDump} * @param {string|null} sKey is name of buffer data element * @param {Buffer} buf is a Buffer containing the bytes to dump * @param {number} len is the number of bytes to dump @@ -908,6 +914,7 @@ DiskDump.prototype.dumpBuffer = function(sKey, buf, len, cbItem, offData) * * Dumps track data for an OSI disk track * + * @this {DiskDump} * @param {string} sTrackSig * @param {number} nTrackNum * @param {number} nTrackType @@ -932,6 +939,7 @@ DiskDump.prototype.dumpTrackOSI = function(sTrackSig, nTrackNum, nTrackType, nTr * * Dumps sector data for an OSI disk sector * + * @this {DiskDump} * @param {number|null} nSectorSig * @param {number} nSectorNum * @param {number} nSectorPages @@ -968,6 +976,7 @@ DiskDump.prototype.dumpSectorOSI = function(nSectorSig, nSectorNum, nSectorPages * NOTE: The C1Pjs Simulator doesn't support this feature (yet), which is why * trimSector() isn't used when dumping OSI disk images. * + * @this {DiskDump} * @param {Buffer} buf * @param {number} len * @return {Array} containing [dwPattern, cbBuffer] @@ -1018,7 +1027,8 @@ DiskDump.ATTR_ARCHIVE = 0x20; /** * validateTime(dateTime) - * + * + * @this {DiskDump} * @param {Date} dateTime * @return {boolean} true if date/time modified, false if not */ @@ -1062,6 +1072,7 @@ DiskDump.prototype.validateTime = function(dateTime) /** * buildData(cb) * + * @this {DiskDump} * @param {number} cb * @param {Array.} [abInit] * @return {Array.} of bytes zero-initialized @@ -1078,6 +1089,7 @@ DiskDump.prototype.buildData = function(cb, abInit) /** * copyData(ab) * + * @this {DiskDump} * @param {number} offDisk * @param {Array.} ab * @return {number} number of bytes written @@ -1091,7 +1103,8 @@ DiskDump.prototype.copyData = function(offDisk, ab) /** * addManifestInfo(fileInfo) - * + * + * @this {DiskDump} * @param {Object} fileInfo */ DiskDump.prototype.addManifestInfo = function(fileInfo) @@ -1105,6 +1118,7 @@ DiskDump.prototype.addManifestInfo = function(fileInfo) * Returns an array (aFiles) via the done() callback, where each entry is a fileInfo object. * If fileInfo refers to a subdirectory, then FILE_SIZE is -1 and FILE_DATA entry is another aFiles array. * + * @this {DiskDump} * @param {string} sDir is a fully-qualified directory name * @param {boolean} [fRoot] should be true for the first directory read * @param {function(Error,Array)} done @@ -1234,6 +1248,7 @@ DiskDump.prototype.readDir = function(sDir, fRoot, done) * NOTE: sPath begins fully-qualified (see this.sDiskPath), but if any of the intermediate entries contains paths, * it's our responsibility to join them with sServerRoot. * + * @this {DiskDump} * @param {string} sPath contains series of semi-colon-separated files (local or remote) * @param {function(Error,Array)} done */ @@ -1356,6 +1371,7 @@ DiskDump.prototype.readPath = function(sPath, done) /** * buildName(sFile) * + * @this {DiskDump} * @param {string} sFile is the basename of a file * @return {string} containing a corresponding FAT-compatible filename */ @@ -1391,6 +1407,7 @@ DiskDump.prototype.buildName = function(sFile) * NOTE: When fileInfo is returned, there will be no FILE_PATH property, which means * don't go looking for a corresponding entry in the host file system, because there isn't one. * + * @this {DiskDump} * @param {string} [sDir] * @return {Object|null} fileInfo (or null if no suitable volume label) */ @@ -1433,6 +1450,7 @@ DiskDump.prototype.buildVolLabel = function(sDir) /** * buildFAT(abFAT, aFiles, iCluster, cbCluster) * + * @this {DiskDump} * @param {Array.} abFAT * @param {Array} aFiles * @param {number} iCluster @@ -1476,6 +1494,7 @@ DiskDump.prototype.buildFAT = function(abFAT, aFiles, iCluster, cbCluster) /** * buildFATEntry(abFat, iFat, v) * + * @this {DiskDump} * @param {Array.} abFAT * @param {number} iFAT * @param {number} v @@ -1501,6 +1520,7 @@ DiskDump.prototype.buildFATEntry = function(abFAT, iFAT, v) /** * buildDir(abDir, aFiles, dateMod, iCluster, iParentCluster) * + * @this {DiskDump} * @param {Array.} abDir * @param {Array} aFiles * @param {Date} [dateMod] @@ -1537,6 +1557,7 @@ DiskDump.prototype.buildDir = function(abDir, aFiles, dateMod, iCluster, iParent * * TODO: Create constants that define the various directory entry fields, including the overall size (32 bytes). * + * @this {DiskDump} * @param {Array.} ab contains the bytes of a directory * @param {number} off is the offset within ab to build the next directory entry * @param {string} sFile is the file name @@ -1621,6 +1642,7 @@ DiskDump.prototype.buildDirEntry = function(ab, off, sFile, cbFile, bAttr, dateM /** * buildClusters(aFiles, offDisk, cbCluster, iParentCluster, done) * + * @this {DiskDump} * @param {Array} aFiles * @param {number} offDisk * @param {number} cbCluster @@ -1706,6 +1728,7 @@ DiskDump.prototype.buildClusters = function(aFiles, offDisk, cbCluster, iParentC /** * buildImage() * + * @this {DiskDump} * @param {boolean} fDir * @param {function(Error)} done */ @@ -1740,6 +1763,7 @@ DiskDump.prototype.buildImage = function(fDir, done) * calculated total data and found a BPB we think will accommodate it. So, the code below * will still have to be prepared for running out of disk space. This is just a good estimate. * + * @this {DiskDump} * @param {Array} aFiles * @return {number} of bytes required for all files, including all subdirectories */ @@ -1765,6 +1789,7 @@ DiskDump.prototype.calcFileSizes = function(aFiles) /** * buildMBR(cHeads, cSectorsPerTrack, cbSector, cTotalSectors) * + * @this {DiskDump} * @param {number} cHeads * @param {number} cSectorsPerTrack * @param {number} cbSector @@ -1835,6 +1860,7 @@ DiskDump.prototype.buildMBR = function(cHeads, cSectorsPerTrack, cbSector, cTota * Note, however, that even if this function returns true, you won't receive the buffer until * all the writes to have it have finished. * + * @this {DiskDump} * @param {Array} aFiles * @param {function(Error)} done * @return {boolean} true if disk allocation successful, false if not @@ -1996,6 +2022,7 @@ DiskDump.prototype.buildImageFromFiles = function(aFiles, done) * * Converts the disk image data to JSON. * + * @this {DiskDump} * @return {string|null} containing a JSON representation of the disk image, or null if unrecognized/malformed */ DiskDump.prototype.convertToJSON = function() @@ -2288,6 +2315,7 @@ DiskDump.prototype.convertToJSON = function() * each containing an array of tracks. It's largely just a matter of reversing the meaning of the two outermost array * elements, here and in the C1Pjs disk module. * + * @this {DiskDump} * @return {string|null} containing a JSON representation of the disk image, or null if unrecognized/malformed */ DiskDump.prototype.convertOSIDiskToJSON = function() @@ -2406,6 +2434,7 @@ DiskDump.prototype.convertOSIDiskToJSON = function() * TODO: Consider creating a caching mechanism for these requests (ie, stash a limited number of these * disk images under /tmp, using a name based on a hash of the source path). * + * @this {DiskDump} * @return {Buffer|null} containing the disk image's raw data, or null if no data available (or parse error) */ DiskDump.prototype.convertToIMG = function() diff --git a/my_modules/filedump/lib/filedump.js b/my_modules/filedump/lib/filedump.js index da8652b97..14c6a70ce 100644 --- a/my_modules/filedump/lib/filedump.js +++ b/my_modules/filedump/lib/filedump.js @@ -47,7 +47,7 @@ var DumpAPI = require("../../shared/lib/dumpapi"); * or a "--map" command-line option), which in turn triggers a call to loadMap(). Note that loadMap() will need * to be a bit more general and use a worker function that calls either net.getFile() or fs.readFile(), similar * to what our loadFile() function already does. - * + * * @constructor * @param {string|undefined} sFormat should be one of "json"|"data"|"hex"|"bytes"|"rom" (see the FORMAT constants) * @param {boolean|string|undefined} fComments enables comments and other readability enhancements in the JSON output @@ -67,7 +67,7 @@ function FileDump(sFormat, fComments, fDecimal, sServerRoot) this.buf = null; /* * TODO: Decide what to do with this usage info; we can't use it as a default, because setting this.json - * causes outputFile() to ignore this.buf indiscriminately (ie, it breaks non-JSON output modes). + * causes outputFile() to ignore this.buf indiscriminately (ie, it breaks non-JSON output modes). */ this.json = ""; // "[\n /**\n * " + FileDump.sAPIURL + " " + FileDump.sCopyright + "\n * " + FileDump.sUsage + "\n */\n]"; } @@ -101,24 +101,24 @@ FileDump.sUsage = "Usage: " + FileDump.sAPIURL + "?" + DumpAPI.QUERY.FILE + "=({ * text format that consists entirely of 2-character hex values (deprecated), and "bytes" is a JSON-like format * that also uses hex values (but with "0x" prefixes) and is normally used only when comments are enabled (use * --decimal to force decimal byte output). - * + * * When a second file is "merged", the first file sets all even bytes and the second file sets all odd bytes. * In fact, any number of files can be merged: if there are N files, file #1 sets bytes at "offset mod N == 0", * file #2 sets all bytes at "offset mod N == 1", and file #N sets all bytes at "offset mod N == N - 1". * * Note that command-line arguments, if any, are not validated. For example, argv['comments'] may be any of * boolean, string, or undefined, since the user may have typed "--comments" or "--comments=foo" or nothing at all. - * + * * Examples * --- * filedump --file=devices/pc/video/ibm-ega.rom --format=bytes --decimal - * + * * Notes * --- * Originally, we had to specify `--format=bytes` because the onLoadROM() code in rom.js assumed the data was * always byte-sized, but it has since been updated to support dword arrays, so the default format ("json") * works fine as well. Also, `--decimal` reduces the size of the output file significantly. - * + * * If there's a ".map" file (eg, "ibm-ega.map"), it's automatically loaded and appended to the ROM data as a * "symbols" property; we may want to consider an option to disable the processing of map files, but for now, the * simple answer is: if you don't want one, don't create one. @@ -131,29 +131,29 @@ FileDump.CLI = function() console.log("usage: filedump --file=({path}|{URL}) [--merge=({path}|{url})] [--format=(json|data|hex|bytes|rom)] [--comments] [--decimal] [--output={path}] [--overwrite]"); return; } - + var argv = args.argv; var sFile = argv['file']; if (!sFile) { FileDump.logError(new Error("no filename specified")); return; } - + var sOutputFile = argv['output']; if (typeof sOutputFile != "string") { FileDump.logError(new Error("bad or missing output filename")); return; } - + if (sOutputFile && sOutputFile.charAt(0) != '/') sOutputFile = path.join(process.cwd(), sOutputFile); var fOverwrite = argv['overwrite']; - + var sFormat = FileDump.validateFormat(argv['format']); if (sFormat === false) { FileDump.logError(new Error("unrecognized format")); return; } - + var sMergeFile, asMergeFiles = []; var file = new FileDump(sFormat, argv['comments'], argv['decimal']); if (argv['merge']) { @@ -227,6 +227,7 @@ FileDump.validateFormat = function(sFormat) * object creation from any I/O that the object may perform, to ensure that a callback can never * be called before the caller has actually received the newly created object. * + * @this {FileDump} * @param {string} sFile * @param {number} iStart * @param {number} nSkip @@ -241,10 +242,10 @@ FileDump.prototype.loadFile = function(sFile, iStart, nSkip, done) */ var obj = this; var sFilePath = net.isRemote(sFile)? sFile : path.join(this.sServerRoot, sFile); - + if (!this.sFilePath) this.sFilePath = sFilePath; if (this.fDebug) console.log("loadFile(" + sFilePath + "," + iStart + "," + nSkip + ")"); - + if (net.isRemote(sFilePath)) { net.getFile(sFilePath, null, function(err, status, buf) { if (err) { @@ -273,6 +274,7 @@ FileDump.prototype.loadFile = function(sFile, iStart, nSkip, done) * * Records the given file data in the FileDump's buffer * + * @this {FileDump} * @param {Buffer} buf * @param {number} iStart * @param {number} nSkip @@ -299,6 +301,7 @@ FileDump.prototype.setData = function(buf, iStart, nSkip) /** * dumpLine(nIndent, sLine, sComment) * + * @this {FileDump} * @param {number} [nIndent] is the relative number of characters to indent the given line (0 if none) * @param {string} [sLine] is the given line * @param {string} [sComment] is an optional comment to append to the line, if comment output is enabled @@ -322,6 +325,7 @@ FileDump.prototype.dumpLine = function(nIndent, sLine, sComment) /** * dumpBuffer(sKey, buf, len, cbItem, offData) * + * @this {FileDump} * @param {string|null} sKey is name of buffer data element * @param {Buffer} buf is a Buffer containing the bytes to dump * @param {number} len is the number of bytes to dump @@ -334,7 +338,7 @@ FileDump.prototype.dumpBuffer = function(sKey, buf, len, cbItem, offData) var chOpen = '', chClose = '', chSep = ' ', sHexPrefix = ""; this.sKey = sKey; - + if (this.sFormat != DumpAPI.FORMAT.HEX) { chOpen = '['; chClose = ']'; chSep = ','; sHexPrefix = "0x"; } @@ -385,6 +389,7 @@ FileDump.prototype.dumpBuffer = function(sKey, buf, len, cbItem, offData) * * NOTE: Since ".map" files are an internal construct, I support only local map files (for now) * + * @this {FileDump} * @param {string} sFilePath * @param {function(Error,string)} done */ @@ -413,13 +418,13 @@ FileDump.prototype.loadMap = function(sFilePath, done) } else { // console.log("add this to obj.json:\n" + str); - + /* * Parse MAP data into a set of properties; for example, if the .map file contains: * - * 0320 = HF_PORT + * 0320 = HF_PORT * 0000:0034 4 HDISK_INT - * 0040:0042 1 CMD_BLOCK + * 0040:0042 1 CMD_BLOCK * 0003 @ DISK_SETUP * 0000:004C 4 ORG_VECTOR * 0028 . MOV AX,WORD PTR ORG_VECTOR ;GET DISKETTE VECTOR @@ -436,26 +441,26 @@ FileDump.prototype.loadMap = function(sFilePath, done) * * then we should produce the following corresponding JSON: * - * { - * "HF_PORT": { - * "v":800 - * }, - * "HDISK_INT": { - * "b":4, "s":0, "o":52 - * }, - * "ORG_VECTOR": { - * "b":4, "s":0, "o":76 - * }, - * "CMD_BLOCK": { - * "b":1, "s":64, "o":66 - * }, - * "DISK_SETUP": { - * "o":3 - * }, - * ".40": { - * "o":64, "a":"MOV AX,WORD PTR ORG_VECTOR ;GET DISKETTE VECTOR" - * } - * } + * { + * "HF_PORT": { + * "v":800 + * }, + * "HDISK_INT": { + * "b":4, "s":0, "o":52 + * }, + * "ORG_VECTOR": { + * "b":4, "s":0, "o":76 + * }, + * "CMD_BLOCK": { + * "b":1, "s":64, "o":66 + * }, + * "DISK_SETUP": { + * "o":3 + * }, + * ".40": { + * "o":64, "a":"MOV AX,WORD PTR ORG_VECTOR ;GET DISKETTE VECTOR" + * } + * } * * where "v" is the value of an absolute (unsized) value; "b" is either 1, 2, 4 or undefined; "s" is either a hard-coded * segment or undefined; and "o" is the offset of an symbol. Also, if the symbol is not entirely upper-case, then we @@ -562,8 +567,10 @@ FileDump.prototype.loadMap = function(sFilePath, done) /** * buildJSON() - * + * * Common code between the API helper (convertToJSON()) and the command-line helper (convertToFile()). + * + * @this {FileDump} */ FileDump.prototype.buildJSON = function() { @@ -586,6 +593,7 @@ FileDump.prototype.buildJSON = function() * * Converts the data buffer to JSON. * + * @this {FileDump} * @param {function(Error,string)} done */ FileDump.prototype.convertToJSON = function(done) @@ -599,6 +607,7 @@ FileDump.prototype.convertToJSON = function(done) * * Converts the data buffer to JSON, as appropriate. * + * @this {FileDump} * @param {string} sOutputFile * @param {boolean} fOverwrite */ @@ -621,16 +630,17 @@ FileDump.prototype.convertToFile = function(sOutputFile, fOverwrite) /** * outputFile(sOutputFile, fOverwrite) - * + * + * @this {FileDump} * @param {string} sOutputFile * @param {boolean} fOverwrite */ FileDump.prototype.outputFile = function(sOutputFile, fOverwrite) { var data = this.json || this.buf; - + var sFormat = this.sFormat.toUpperCase(); - + if (sOutputFile) { try { if (fs.existsSync(sOutputFile) && !fOverwrite) { diff --git a/my_modules/htmlout/lib/htmlout.js b/my_modules/htmlout/lib/htmlout.js index 8913cb22d..338866062 100644 --- a/my_modules/htmlout/lib/htmlout.js +++ b/my_modules/htmlout/lib/htmlout.js @@ -71,7 +71,10 @@ var fConsole = false; /* * fServerDebug controls server-related debug features; it is false by default and can be enabled using the - * setOptions() 'debug' property (or from the command-line interface using "--debug"). + * setOptions() 'debug' property (or from the server's command-line interface using "--debug"). + * + * This used to be named fDebug, which was fine, but it has been renamed to make the distinction between the + * server's debug state (fServerDebug) and the debug state of HTMLOut instances (this.fDebug) clearer. */ var fServerDebug = false; @@ -475,7 +478,7 @@ HTMLOut.filter = function(req, res, next) * and adding an Etag, unless we ALSO change the req.method from "GET" to something else. * Supposedly, we could also use app.disable('etag'), but I'm not sure that would prevent * Express from changing the status code, and I'm tired of testing work-arounds for this - * irritating behavior in Safari. + * irritating behavior. */ req.method = "NONE"; res.set("Content-Type", "application/xml"); @@ -486,6 +489,10 @@ HTMLOut.filter = function(req, res, next) } } } + + if (asNonDirectories.indexOf(sBaseName) >= 0) { + res.set("Content-Type", "text/plain"); + } /* * Next, check for API requests (eg, "/api/v1/dump?disk=/disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json&format=img") @@ -681,6 +688,7 @@ HTMLOut.setRoot = function(sRoot) /** * loadFile() * + * @this {HTMLOut} * @param {string} sFile * @param {boolean} fTemplate */ @@ -700,6 +708,7 @@ HTMLOut.prototype.loadFile = function(sFile, fTemplate) * * Records the given HTML template and immediately parses it. * + * @this {HTMLOut} * @param {Error} err * @param {string} sData * @param {string} sFile @@ -741,6 +750,7 @@ HTMLOut.prototype.setData = function(err, sData, sFile, fTemplate) /** * findTokens() * + * @this {HTMLOut} * @param {RegExp} reTokens */ HTMLOut.prototype.findTokens = function(reTokens) @@ -794,6 +804,8 @@ HTMLOut.prototype.findTokens = function(reTokens) /** * replaceTokens() + * + * @this {HTMLOut} */ HTMLOut.prototype.replaceTokens = function() { @@ -866,6 +878,7 @@ HTMLOut.prototype.replaceTokens = function() * * aParms[0], if present, is used as the preferred title for the home page * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -880,6 +893,7 @@ HTMLOut.prototype.getTitle = function(sToken, sIndent, aParms) * * Returns the current version in "package.json". * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -902,6 +916,7 @@ HTMLOut.prototype.getVersion = function(sToken, sIndent, aParms) /** * getPath(sToken, sIndent, aParms) * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -914,6 +929,7 @@ HTMLOut.prototype.getPath = function(sToken, sIndent, aParms) /** * getPCPath(sToken, sIndent, aParms) * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -941,6 +957,7 @@ HTMLOut.prototype.getPCPath = function(sToken, sIndent, aParms) * [apps] * * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -962,8 +979,8 @@ HTMLOut.prototype.getDirList = function(sToken, sIndent, aParms) asFiles.push(".."); /* - * For sorting purposes, I want all folders ending in "kb" and beginning with one or two - * digits to sort as if they all began with THREE digits (ie, with leading zeros as needed). + * For sorting purposes, I want all folders ending in "kb" and beginning with one to three + * digits to sort as if they all began with FOUR digits (ie, with leading zeros as needed). * But I don't want to change the folder names that are ultimately displayed. So instead, * I pad those names with slashes, since a leading slash will sort much like a leading zero * without being a valid filename character, meaning we can trim away those leading slashes @@ -1002,7 +1019,7 @@ HTMLOut.prototype.getDirList = function(sToken, sIndent, aParms) if (asFilesNonListed.indexOf(sBaseName) >= 0) continue; } else { /* - * Even when the server's in Debug mode, there are some files it makes no sense to list.... + * Even when the server's in Debug mode, there are some files it makes no sense to list. */ if (sBaseName == "index.html") continue; } @@ -1073,6 +1090,7 @@ HTMLOut.prototype.getDirList = function(sToken, sIndent, aParms) * * Return the current year. * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -1087,6 +1105,7 @@ HTMLOut.prototype.getYear = function(sToken, sIndent, aParms) * * If we're in the "blog" folder, then enumerate all available blog entries and create a rendering of blog excerpts. * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -1189,7 +1208,7 @@ HTMLOut.prototype.getBlog = function(sToken, sIndent, aParms) for (var i = 0; i < aExcerpts.length; i++) { sExcerpts += aExcerpts[i].excerpt + "\n\n"; } - var mExcerpts = new MarkOut(sExcerpts, sIndent, obj.req, aParms, obj.fDebug, fServerDebug); + var mExcerpts = new MarkOut(sExcerpts, sIndent, obj.req, aParms, obj.fDebug); obj.aTokens[sToken] = mExcerpts.convertMD(" ").trim(); obj.replaceTokens(); } @@ -1222,7 +1241,8 @@ HTMLOut.prototype.getBlog = function(sToken, sIndent, aParms) * Some wrinkles have been added to the above: getManifestXML() can alternatively call getMachineXML() * with a specific machine XML file, which would have had the potential to bypass getReadMe() altogether, so * getMachineXML() may now call getReadMe() -- which must NOT call getMachineXML() back whenever that happens. - * + * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -1240,6 +1260,7 @@ HTMLOut.prototype.getDefault = function(sToken, sIndent, aParms) * * If the HTML file specified by aParms[0] exists, insert its contents into the current HTML document. * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -1280,6 +1301,7 @@ HTMLOut.prototype.getHTMLFile = function(sToken, sIndent, aParms) * * If "machine.xml" exists in the current directory, open it and determine if embedding it makes sense. * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.|null} [aParms] @@ -1343,7 +1365,7 @@ HTMLOut.prototype.getMachineXML = function(sToken, sIndent, aParms, sXMLFile, sS sMachineDef += (sStateFile? ":" + sStateFile : ""); s = '[Embedded ' + sMachineClass + '](' + sXMLFile + ' "' + sMachineDef + '")'; - var m = new MarkOut(s, sIndent, obj.req, null, obj.fDebug, fServerDebug); + var m = new MarkOut(s, sIndent, obj.req, null, obj.fDebug); s = m.convertMD(" ").trim(); obj.processMachines(m.getMachines(), function doneProcessXMLMachines() { @@ -1388,6 +1410,7 @@ HTMLOut.prototype.getMachineXML = function(sToken, sIndent, aParms, sXMLFile, sS * * If "manifest.xml" exists in the current directory, open it and embed it. * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -1574,7 +1597,8 @@ HTMLOut.prototype.getManifestXML = function(sToken, sIndent, aParms) * getReadMe(sToken, sIndent, aParms, sPrevious) * * If a "README.md" exists in the current directory, open it, convert it, and prepare for replacement. - * + * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.} [aParms] @@ -1607,7 +1631,7 @@ HTMLOut.prototype.getReadMe = function(sToken, sIndent, aParms, sPrevious) obj.getMachineXML(sToken, sIndent); // we don't pass along aParms, because those are for Markdown files only } } else { - var m = new MarkOut(s, sIndent, obj.req, aParms, obj.fDebug, fServerDebug); + var m = new MarkOut(s, sIndent, obj.req, aParms, obj.fDebug); s = m.convertMD(" ").trim(); /* * If the Markdown document begins with a heading, stuff that into the tag; @@ -1644,6 +1668,7 @@ HTMLOut.prototype.getReadMe = function(sToken, sIndent, aParms, sPrevious) /** * getSocketScripts(sToken, sIndent, aParms) * + * @this {HTMLOut} * @param {string} sToken * @param {string} [sIndent] * @param {Array.<string>} [aParms] @@ -1658,6 +1683,7 @@ HTMLOut.prototype.getSocketScripts = function(sToken, sIndent, aParms) * * Generate a random string of words, purely for entertainment purposes (eg, something in honor of "ADVENT"). * + * @this {HTMLOut} * @param {string} [sIndent] * @return {string} */ @@ -1699,9 +1725,9 @@ HTMLOut.prototype.getRandomString = function(sIndent) * * Additional properties can include: * - * 'compiled' (eg, true or false); if not defined, then we choose a value based on any Gort command, - * or failing that, the internal fServerDebug setting + * 'compiled' (eg, true or false); if not defined, we choose a value based on the module's fDebug setting * + * @this {HTMLOut} * @param {Array} aMachines is an array of objects containing information about each machine on the current page * @param {function()} done */ @@ -1785,6 +1811,7 @@ HTMLOut.prototype.processMachines = function(aMachines, done) /** * addFilesToHTML(asFiles) * + * @this {HTMLOut} * @param {Array.<string>} asFiles is a list of CSS and/or JS files to include in the HTML * @param {string} [sScriptEmbed] is an optional script to embed in the <body> (after any JS files listed above) */ @@ -1841,7 +1868,8 @@ HTMLOut.prototype.addFilesToHTML = function(asFiles, sScriptEmbed) /** * genOnClick(sURL) - * + * + * @this {HTMLOut} * @param {string} sURL * @param {string} [sFormat] (default is DumpAPI.FORMAT.IMG) * @return {string} diff --git a/my_modules/markout/lib/markout.js b/my_modules/markout/lib/markout.js index 47c726e58..ee74bb5c7 100644 --- a/my_modules/markout/lib/markout.js +++ b/my_modules/markout/lib/markout.js @@ -93,10 +93,9 @@ var sDefaultFile = "./README.md"; * @param {string|null} [sIndent] sets the overall indentation of the document * @param {Object} [req] is the web server's (ie, Express) request object, if any * @param {Array.<string>|null} [aParms] is an array of overrides to use (see below) - * @param {boolean} [fDebug] turns on debugging features (eg, debug comments) - * @param {boolean} [fServerDebug] turns on server debug features (eg, special URL encoding rules) + * @param {boolean} [fDebug] turns on debugging features (eg, debug comments, special URL encodings, etc) */ -function MarkOut(sMD, sIndent, req, aParms, fDebug, fServerDebug) +function MarkOut(sMD, sIndent, req, aParms, fDebug) { this.sMD = sMD; this.sIndent = (sIndent || ""); @@ -109,7 +108,6 @@ function MarkOut(sMD, sIndent, req, aParms, fDebug, fServerDebug) this.sClassImageLabel = this.sClassImage + "-label"; } this.fDebug = fDebug; - this.fServerDebug = fServerDebug; this.sHTML = null; this.aIDs = []; // this keeps tracks of auto-generated ID attributes for page elements, to insure uniqueness this.aMachines = []; // this keeps tracks of embedded machines on the page @@ -242,6 +240,7 @@ MarkOut.setOptions = function(options) * and make sure all the pre-requisites are in place (eg, CSS file and scripts in the HTML document's * header). * + * @this {MarkOut} * @param {Object} infoMachine */ MarkOut.prototype.addMachine = function(infoMachine) @@ -252,6 +251,7 @@ MarkOut.prototype.addMachine = function(infoMachine) /** * getMachines() * + * @this {MarkOut} * @return {Array} of objects containing information about each machine defined by the document */ MarkOut.prototype.getMachines = function() @@ -266,7 +266,8 @@ MarkOut.prototype.getMachines = function() * that's not a letter or a digit to a hyphen (-), and stripping all leading and trailing hyphens from * the result. Furthermore, if the generated ID is not unique (among the set of ALL generated IDs), * then no ID is produced. - * + * + * @this {MarkOut} * @param {string} sText * @returns {string|null} converts the given text to a unique ID (or null if resulting ID was not unique) */ @@ -301,6 +302,7 @@ MarkOut.aHTMLEntities = { /** * convertMD() * + * @this {MarkOut} * @param {string} [sIndent] sets the indentation of HTML elements within the document */ MarkOut.prototype.convertMD = function(sIndent) @@ -414,6 +416,7 @@ MarkOut.prototype.convertMD = function(sIndent) * If your text may contain some block markers (ie, double-linefeeds), or headers (either "Atx-style" * or "Setext-style) that require the insertion of double-linefeed block markers, then call this function. * + * @this {MarkOut} * @param {string} sMD * @param {string} [sIndent] */ @@ -478,6 +481,7 @@ MarkOut.prototype.convertMDBlocks = function(sMD, sIndent) /** * convertMDBlock(sBlock, sIndent) * + * @this {MarkOut} * @param {string} sBlock * @param {string} [sIndent] */ @@ -623,6 +627,7 @@ MarkOut.prototype.convertMDBlock = function(sBlock, sIndent) * Markdown apparently treats equivalently), I automatically use a list style that omits bullets. * So, if you REALLY want bullets, use "-" or "+". * + * @this {MarkOut} * @param {string} sBlock * @param {string} sIndent * @return {string} @@ -688,6 +693,7 @@ MarkOut.prototype.convertMDList = function(sBlock, sIndent) * galleries, which are nothing more than paragraphs containing a series of image links), so this * code is disabled for now. * + * @this {MarkOut} * @param {string} s * @return {string} */ @@ -720,6 +726,7 @@ MarkOut.prototype.convertMDLines = function(s) * * TODO: Consider adding support for "reference"-style Markdown links. * + * @this {MarkOut} * @param {string} sBlock * @return {string} */ @@ -748,7 +755,7 @@ MarkOut.prototype.convertMDLinks = function(sBlock) sType = "id"; // using the "name" attribute is deprecated as well sURL = sURL.substr(1); } else { - sURL = net.encodeURL(sURL, this.req, this.fServerDebug); + sURL = net.encodeURL(sURL, this.req, this.fDebug); } sBlock = str.replaceAll(aMatch[0], '<' + sTag + ' ' + sType + '="' + sURL + '"' + sTitle + '>' + sText + '</' + sTag + '>', sBlock); } @@ -758,6 +765,7 @@ MarkOut.prototype.convertMDLinks = function(sBlock) /** * convertMDImageLinks(sBlock) * + * @this {MarkOut} * @param {string} sBlock * @param {string} sIndent * @return {string} @@ -778,7 +786,7 @@ MarkOut.prototype.convertMDImageLinks = function(sBlock, sIndent) var sBlockOrig = sBlock; var re = /!\[(.*?)\]\((.*?)(?:\s*"(.*?)"\)|\))/g; while ((aMatch = re.exec(sBlockOrig))) { - var sImage = '<img src="' + net.encodeURL(aMatch[2], this.req, this.fServerDebug) + '" alt="' + aMatch[1] + '"'; + var sImage = '<img src="' + net.encodeURL(aMatch[2], this.req, this.fDebug) + '" alt="' + aMatch[1] + '"'; if (aMatch[3]) { /* * The format of the special "link:" syntax is: @@ -814,10 +822,10 @@ MarkOut.prototype.convertMDImageLinks = function(sBlock, sIndent) * The assumption here is that if we have "static" thumbs, then we should also have full "static" * copies as well. */ - if (aMatch[2].indexOf("static/") >= 0 && sURL.indexOf("://") > 0 && (this.fServerDebug || net.hasParm(net.REVEAL_COMMAND, net.REVEAL_PDFS, this.req))) { + if (aMatch[2].indexOf("static/") >= 0 && sURL.indexOf("://") > 0 && (this.fDebug || net.hasParm(net.REVEAL_COMMAND, net.REVEAL_PDFS, this.req))) { sURL = aMatch[2].replace("/thumbs/", "/").replace(" 1.jpeg", ".pdf").replace(".jpg", ".pdf"); } - sURL = net.encodeURL(sURL, this.req, this.fServerDebug); + sURL = net.encodeURL(sURL, this.req, this.fDebug); if (asParts[iPart] == "nogallery") { fNoGallery = true; iPart++; @@ -862,6 +870,7 @@ MarkOut.prototype.convertMDImageLinks = function(sBlock, sIndent) /** * convertMDMachineLinks(sBlock) * + * @this {MarkOut} * @param {string} sBlock * @return {string} */ @@ -992,6 +1001,7 @@ MarkOut.prototype.convertMDMachineLinks = function(sBlock) * Also, for reasons noted in the code below, we don't support emphasis in the middle * of words. * + * @this {MarkOut} * @param {string} sBlock * @return {string} */ @@ -1031,6 +1041,7 @@ MarkOut.prototype.convertMDEmphasis = function(sBlock) /** * addIndent(sIndent) * + * @this {MarkOut} * @param {string|undefined} sIndent * @return {string} previous indent */ @@ -1044,6 +1055,7 @@ MarkOut.prototype.addIndent = function(sIndent) /** * subIndent(sIndent) * + * @this {MarkOut} * @param {string|undefined} sIndent */ MarkOut.prototype.subIndent = function(sIndent) @@ -1064,6 +1076,7 @@ MarkOut.prototype.subIndent = function(sIndent) * This is used purely (at the moment) for debugging purposes, so that we can clearly see * what our simplistic Markdown parser is parsing at each stage. * + * @this {MarkOut} * @param {string} sLabel * @param {string} sText * @return {string} @@ -1080,6 +1093,7 @@ MarkOut.prototype.encodeComment = function(sLabel, sText) * This is used purely (at the moment) for debugging purposes, so that we can clearly see * what our simplistic Markdown parser is parsing at each stage. * + * @this {MarkOut} * @param {string} sText * @return {string} * diff --git a/my_modules/pcjs-client/lib/bus.js b/my_modules/pcjs-client/lib/bus.js index ded1e15d9..a76fde17e 100644 --- a/my_modules/pcjs-client/lib/bus.js +++ b/my_modules/pcjs-client/lib/bus.js @@ -480,7 +480,7 @@ Bus.prototype.restoreMemory = function(a) * configuration since it was last saved (the most likely explanation) or there's some internal * inconsistency (eg, the block size is wrong). */ - this.error("Unable to restore memory block " + iBlock); + Component.error("Unable to restore memory block " + iBlock); return false; } } @@ -554,7 +554,7 @@ Bus.prototype.addPortInputNotify = function(start, end, component, fn) if (fn !== undefined) { for (var port = start; port <= end; port++) { if (this.aPortInputNotify[port] !== undefined) { - this.warning("Input port " + str.toHexWord(port) + " registered by " + this.aPortInputNotify[port][0].id + ", ignoring " + component.id); + Component.warning("Input port " + str.toHexWord(port) + " registered by " + this.aPortInputNotify[port][0].id + ", ignoring " + component.id); continue; } this.aPortInputNotify[port] = [component, fn, false, false]; @@ -674,7 +674,7 @@ Bus.prototype.addPortOutputNotify = function(start, end, component, fn) if (fn !== undefined) { for (var port = start; port <= end; port++) { if (this.aPortOutputNotify[port] !== undefined) { - this.warning("Output port " + str.toHexWord(port) + " registered by " + this.aPortOutputNotify[port][0].id + ", ignoring " + component.id); + Component.warning("Output port " + str.toHexWord(port) + " registered by " + this.aPortOutputNotify[port][0].id + ", ignoring " + component.id); continue; } this.aPortOutputNotify[port] = [component, fn, false, false]; @@ -764,7 +764,7 @@ Bus.prototype.removePortOutputNotify = function(start, end, component, fn) */ Bus.prototype.reportError = function(op, addr, size) { - this.error("Memory block error (" + op + "," + str.toHex(addr) + "," + str.toHex(size) + ")"); + Component.error("Memory block error (" + op + "," + str.toHex(addr) + "," + str.toHex(size) + ")"); return false; }; diff --git a/my_modules/pcjs-client/lib/chipset.js b/my_modules/pcjs-client/lib/chipset.js index 12f05a02c..ae7ce9792 100644 --- a/my_modules/pcjs-client/lib/chipset.js +++ b/my_modules/pcjs-client/lib/chipset.js @@ -157,12 +157,6 @@ function ChipSet(parmsChipSet) * and (on the MODEL_5160) whether or not a coprocessor is installed. If no SW1 settings are provided, * we look for individual 'fdrives' and 'monitor' settings and build a default SW1 value. * - * TODO: Get rid of reliance on SW1 for MODEL_5170 and later; omitting it now results in a BIOS warning: - * - * ' 162-System Options Not Set-(Run SETUP)' - * - * ' (RESUME = "F1" KEY)' - * * The defaults below select max memory, monochrome monitor (EGA monitor for MODEL_5170), and two floppies. * Don't get too excited about "max memory" either: on a MODEL_5150, the max was 64Kb, and on a MODEL_5160, * the max was 256Kb. However, the RAM component is free to install as much base memory as it likes, @@ -2566,14 +2560,14 @@ ChipSet.prototype.updateDMA = function(channel) }; /** - * inPICL(iPIC, addrFrom) + * inPICLo(iPIC, addrFrom) * * @this {ChipSet} * @param {number} iPIC * @param {number} [addrFrom] (not defined if the Debugger is trying to read the specified port) * @return {number} simulated port value */ -ChipSet.prototype.inPICL = function(iPIC, addrFrom) +ChipSet.prototype.inPICLo = function(iPIC, addrFrom) { var b = 0; var pic = this.aPICs[iPIC]; @@ -2595,14 +2589,14 @@ ChipSet.prototype.inPICL = function(iPIC, addrFrom) }; /** - * outPICL(iPIC, bOut, addrFrom) + * outPICLo(iPIC, bOut, addrFrom) * * @this {ChipSet} * @param {number} iPIC * @param {number} bOut * @param {number} [addrFrom] (not defined if the Debugger is trying to read the specified port) */ -ChipSet.prototype.outPICL = function(iPIC, bOut, addrFrom) +ChipSet.prototype.outPICLo = function(iPIC, bOut, addrFrom) { var pic = this.aPICs[iPIC]; this.messagePort(pic.port, bOut, addrFrom, "PIC" + iPIC, ChipSet.MESSAGE_PIC); @@ -2613,7 +2607,7 @@ ChipSet.prototype.outPICL = function(iPIC, bOut, addrFrom) pic.nICW = 0; pic.aICW[pic.nICW++] = bOut; /* - * I used to do the rest of this initialization in outPICH(), once all the ICW commands had been received, + * I used to do the rest of this initialization in outPICHi(), once all the ICW commands had been received, * but a closer reading of the 8259A spec indicates that that should happen now, on receipt on ICW1. * * Also, on p.10 of that spec, it says "The Interrupt Mask Register is cleared". I originally took that to @@ -2711,7 +2705,7 @@ ChipSet.prototype.outPICL = function(iPIC, bOut, addrFrom) } } else { /* - * This must be an OCW3 request. If it's a "Read Register" command (PIC_LO.OCW3_READ_CMD), inPICL() will take care it. + * This must be an OCW3 request. If it's a "Read Register" command (PIC_LO.OCW3_READ_CMD), inPICLo() will take care it. * * TODO: If OCW3 specified a "Poll" command (PIC_LO.OCW3_POLL_CMD) or a "Special Mask Mode" command (PIC_LO.OCW3_SMM_CMD), * that's unfortunate, because I don't support them yet. @@ -2724,14 +2718,14 @@ ChipSet.prototype.outPICL = function(iPIC, bOut, addrFrom) }; /** - * inPICH(iPIC, addrFrom) + * inPICHi(iPIC, addrFrom) * * @this {ChipSet} * @param {number} iPIC * @param {number} [addrFrom] (not defined if the Debugger is trying to read the specified port) * @return {number} simulated port value */ -ChipSet.prototype.inPICH = function(iPIC, addrFrom) +ChipSet.prototype.inPICHi = function(iPIC, addrFrom) { var pic = this.aPICs[iPIC]; var b = pic.bIMR; @@ -2740,14 +2734,14 @@ ChipSet.prototype.inPICH = function(iPIC, addrFrom) }; /** - * outPICH(iPIC, bOut, addrFrom) + * outPICHi(iPIC, bOut, addrFrom) * * @this {ChipSet} * @param {number} iPIC * @param {number} bOut * @param {number} [addrFrom] (not defined if the Debugger is trying to read the specified port) */ -ChipSet.prototype.outPICH = function(iPIC, bOut, addrFrom) +ChipSet.prototype.outPICHi = function(iPIC, bOut, addrFrom) { var pic = this.aPICs[iPIC]; this.messagePort(pic.port+1, bOut, addrFrom, "PIC" + iPIC, ChipSet.MESSAGE_PIC); @@ -4230,8 +4224,8 @@ ChipSet.aPortInput = { 0x06: /** @this {ChipSet} */ function(port, addrFrom) { return this.inDMAChannelAddr(ChipSet.DMA0.INDEX, 3, port, addrFrom); }, 0x07: /** @this {ChipSet} */ function(port, addrFrom) { return this.inDMAChannelCount(ChipSet.DMA0.INDEX, 3, port, addrFrom); }, 0x08: /** @this {ChipSet} */ function(port, addrFrom) { return this.inDMAStatus(ChipSet.DMA0.INDEX, port, addrFrom); }, - 0x20: /** @this {ChipSet} */ function(port, addrFrom) { return this.inPICL(ChipSet.PIC0.INDEX, addrFrom); }, - 0x21: /** @this {ChipSet} */ function(port, addrFrom) { return this.inPICH(ChipSet.PIC0.INDEX, addrFrom); }, + 0x20: /** @this {ChipSet} */ function(port, addrFrom) { return this.inPICLo(ChipSet.PIC0.INDEX, addrFrom); }, + 0x21: /** @this {ChipSet} */ function(port, addrFrom) { return this.inPICHi(ChipSet.PIC0.INDEX, addrFrom); }, 0x40: /** @this {ChipSet} */ function(port, addrFrom) { return this.inTimer(ChipSet.TIMER0.INDEX, addrFrom); }, 0x41: /** @this {ChipSet} */ function(port, addrFrom) { return this.inTimer(ChipSet.TIMER1.INDEX, addrFrom); }, 0x42: /** @this {ChipSet} */ function(port, addrFrom) { return this.inTimer(ChipSet.TIMER2.INDEX, addrFrom); }, @@ -4267,8 +4261,8 @@ ChipSet.aPortInput5170 = { 0x8D: /** @this {ChipSet} */ function(port, addrFrom) { return this.inDMAPageSpare(5, port, addrFrom); }, 0x8E: /** @this {ChipSet} */ function(port, addrFrom) { return this.inDMAPageSpare(6, port, addrFrom); }, 0x8F: /** @this {ChipSet} */ function(port, addrFrom) { return this.inDMAPageReg(ChipSet.DMA1.INDEX, 0, port, addrFrom); }, - 0xA0: /** @this {ChipSet} */ function(port, addrFrom) { return this.inPICL(ChipSet.PIC1.INDEX, addrFrom); }, - 0xA1: /** @this {ChipSet} */ function(port, addrFrom) { return this.inPICH(ChipSet.PIC1.INDEX, addrFrom); }, + 0xA0: /** @this {ChipSet} */ function(port, addrFrom) { return this.inPICLo(ChipSet.PIC1.INDEX, addrFrom); }, + 0xA1: /** @this {ChipSet} */ function(port, addrFrom) { return this.inPICHi(ChipSet.PIC1.INDEX, addrFrom); }, 0xC0: /** @this {ChipSet} */ function(port, addrFrom) { return this.inDMAChannelAddr(ChipSet.DMA1.INDEX, 0, port, addrFrom); }, 0xC2: /** @this {ChipSet} */ function(port, addrFrom) { return this.inDMAChannelCount(ChipSet.DMA1.INDEX, 0, port, addrFrom); }, 0xC4: /** @this {ChipSet} */ function(port, addrFrom) { return this.inDMAChannelAddr(ChipSet.DMA1.INDEX, 1, port, addrFrom); }, @@ -4298,8 +4292,8 @@ ChipSet.aPortOutput = { 0x0B: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outDMAMode(ChipSet.DMA0.INDEX, port, bOut, addrFrom); }, 0x0C: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outDMAIndex(ChipSet.DMA0.INDEX, port, bOut, addrFrom); }, 0x0D: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outDMAClear(ChipSet.DMA0.INDEX, port, bOut, addrFrom); }, - 0x20: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outPICL(ChipSet.PIC0.INDEX, bOut, addrFrom); }, - 0x21: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outPICH(ChipSet.PIC0.INDEX, bOut, addrFrom); }, + 0x20: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outPICLo(ChipSet.PIC0.INDEX, bOut, addrFrom); }, + 0x21: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outPICHi(ChipSet.PIC0.INDEX, bOut, addrFrom); }, 0x40: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outTimer(ChipSet.TIMER0.INDEX, bOut, addrFrom); }, 0x41: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outTimer(ChipSet.TIMER1.INDEX, bOut, addrFrom); }, 0x42: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outTimer(ChipSet.TIMER2.INDEX, bOut, addrFrom); }, @@ -4336,8 +4330,8 @@ ChipSet.aPortOutput5170 = { 0x8D: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outDMAPageSpare(5, port, bOut, addrFrom); }, 0x8E: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outDMAPageSpare(6, port, bOut, addrFrom); }, 0x8F: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outDMAPageReg(ChipSet.DMA1.INDEX, 0, port, bOut, addrFrom); }, - 0xA0: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outPICL(ChipSet.PIC1.INDEX, bOut, addrFrom); }, - 0xA1: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outPICH(ChipSet.PIC1.INDEX, bOut, addrFrom); }, + 0xA0: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outPICLo(ChipSet.PIC1.INDEX, bOut, addrFrom); }, + 0xA1: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outPICHi(ChipSet.PIC1.INDEX, bOut, addrFrom); }, 0xC0: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outDMAChannelAddr(ChipSet.DMA1.INDEX, 0, port, bOut, addrFrom); }, 0xC2: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outDMAChannelCount(ChipSet.DMA1.INDEX, 0, port, bOut, addrFrom); }, 0xC4: /** @this {ChipSet} */ function(port, bOut, addrFrom) { this.outDMAChannelAddr(ChipSet.DMA1.INDEX, 1, port, bOut, addrFrom); }, diff --git a/my_modules/pcjs-client/lib/computer.js b/my_modules/pcjs-client/lib/computer.js index 1094544a2..d7f7ee4dd 100644 --- a/my_modules/pcjs-client/lib/computer.js +++ b/my_modules/pcjs-client/lib/computer.js @@ -139,15 +139,15 @@ function Computer(parmsComputer, parmsMachine, fSuspended) { this.sUserID = this.queryUserID(); /* - * Find the appropriate CPU (and the Debugger, if any) + * Find the appropriate CPU (and Debugger and Control Panel, if any) */ this.cpu = Component.getComponentByType("CPU", this.id); if (!this.cpu) { Component.error("Unable to find CPU component"); return; } - this.dbg = Component.getComponentByType("Debugger", this.id); + this.panel = Component.getComponentByType("Panel", this.id); /* * Initialize the Bus component @@ -160,6 +160,20 @@ function Computer(parmsComputer, parmsMachine, fSuspended) { var aComponents = Component.getComponents(this.id); for (var iComponent = 0; iComponent < aComponents.length; iComponent++) { var component = aComponents[iComponent]; + /* + * I can think of many "cleaner" ways for the Control Panel component to pass its + * notice(), println(), etc, overrides on to all the other components, but it's just + * too darn convenient to slam those overrides into the components directly. + * + * Adding more initBus() parameters was another option, but that function is already + * looking a bit unwieldy, and Control Panel functionality is a little far afield + * from Bus initialization. + */ + if (this.panel && this.panel.controlPrint) { + component.notice = this.panel.notice; + component.println = this.panel.println; + component.controlPrint = this.panel.controlPrint; + } if (component.initBus) component.initBus(this, this.bus, this.cpu, this.dbg); } @@ -557,7 +571,7 @@ Computer.prototype.powerRestore = function(component, stateComputer, fRepower, f */ if (!component.powerUp(data, fRepower)) { if (data) { - this.error("Unable to restore state for " + component.type); + Component.error("Unable to restore state for " + component.type); /* * If this is a resume error for a machine that also has a predefined state * AND we're not restoring from that state, then throw away the current state, @@ -1179,6 +1193,7 @@ Computer.init = function() var eComputer = aeComputers[iComputer]; var parmsComputer = Component.getComponentParms(eComputer); + /* * We set fSuspended in the Computer constructor because we want to "power up" the * computer ourselves, after any/all bindings are in place. diff --git a/my_modules/pcjs-client/lib/cpu.js b/my_modules/pcjs-client/lib/cpu.js index b3202efa3..cc97b04b7 100644 --- a/my_modules/pcjs-client/lib/cpu.js +++ b/my_modules/pcjs-client/lib/cpu.js @@ -254,11 +254,15 @@ CPU.prototype.powerUp = function(data, fRepower) this.dbg.init(); } else { /* - * TODO: Once we get rid of those nasty Component method overrides, this test will have to be revised as well + * The Computer (this.cmp) knows if there's a Control Panel (this.cmp.panel), and the Control Panel + * knows if there's a "print" control (this.cmp.panel.controlPrint), and if there IS a "print" control + * but no debugger, the machine is probably misconfigured (most likely, the page simply neglected to + * load the Debugger component). + * + * However, we don't actually need to check all that; it's always safe use println(), regardless whether + * a Control Panel with a "print" control is present or not. */ - if (Component.controlPrint) { - this.warning("No debugger detected"); - } + this.println("No debugger detected"); } } this.fPowered = true; diff --git a/my_modules/pcjs-client/lib/debugger.js b/my_modules/pcjs-client/lib/debugger.js index 99455a5ee..5fa98bc35 100644 --- a/my_modules/pcjs-client/lib/debugger.js +++ b/my_modules/pcjs-client/lib/debugger.js @@ -1,5 +1,5 @@ /** - * @fileoverview Implements the PCjs Debugger component. + * @fileoverview Implements the PCjs Debugger component. * @author <a href="mailto:Jeff@pcjs.org">Jeff Parsons</a> * @version 1.0 * @suppress {missingProperties} @@ -1562,7 +1562,7 @@ if (DEBUGGER) { */ if (fUpdateCPU !== false) this.cpu.updateCPU(); - this.updateStatus(fRegs, false); + this.updateStatus(fRegs || false, false); return (this.nCycles > 0); }; @@ -2846,8 +2846,8 @@ if (DEBUGGER) { value = this.cpu.segSS.sel; break; /* - * I used to alias "PC" to "IP", until I discovered that early (perhaps even ALL?) versions of DEBUG - * treat "PC" as an alias for the 16-bit flags register. TODO: Add support for "PC" that matches DEBUG. + * I used to alias "PC" to "IP", until I discovered that early (perhaps even ALL?) versions of DEBUG.COM + * treat "PC" as an alias for the 16-bit flags register. TODO: Add support for "PC". */ case "IP": value = this.cpu.regIP; @@ -3283,9 +3283,10 @@ if (DEBUGGER) { */ Debugger.prototype.doClear = function(sCmd) { - if (Component.controlPrint) { - Component.controlPrint.value = ""; - } + /* + * TODO: There should be a clear() component method that the Control Panel overrides to perform this function. + */ + if (this.controlPrint) this.controlPrint.value = ""; }; /** @@ -4275,7 +4276,7 @@ if (DEBUGGER) { /* * Limiting the amount of disassembled code to 256 bytes in non-DEBUG builds is partly to * prevent the user from wedging the browser by dumping too many lines, but also a recognition - * that, in non-DEBUG builds, Component.println() keeps print output buffer truncated to 8Kb anyway. + * that, in non-DEBUG builds, this.println() keeps print output buffer truncated to 8Kb anyway. */ this.println("range too large"); return; diff --git a/my_modules/pcjs-client/lib/disk.js b/my_modules/pcjs-client/lib/disk.js index cfc73fe21..00b26ac88 100644 --- a/my_modules/pcjs-client/lib/disk.js +++ b/my_modules/pcjs-client/lib/disk.js @@ -613,10 +613,10 @@ Disk.prototype.onLoadDisk = function(sDiskFile, sDiskData, nErrorCode, sDiskPath } if (!aDiskData.length) { - this.error("Empty disk image: " + this.sDiskName); + Component.error("Empty disk image: " + this.sDiskName); } else if (aDiskData.length == 1) { - this.error(aDiskData[0]); + Component.error(aDiskData[0]); } /* * aDiskData is an array of cylinders, each of which is an array of heads, each of which @@ -731,7 +731,7 @@ Disk.prototype.onLoadDisk = function(sDiskFile, sDiskData, nErrorCode, sDiskPath disk = this; } } catch (e) { - this.error("Disk image error: " + e.message); + Component.error("Disk image error: " + e.message); } } if (this.fnNotify) { diff --git a/my_modules/pcjs-client/lib/fdc.js b/my_modules/pcjs-client/lib/fdc.js index 3b413b96a..7c43e85c6 100644 --- a/my_modules/pcjs-client/lib/fdc.js +++ b/my_modules/pcjs-client/lib/fdc.js @@ -153,7 +153,7 @@ function FDC(parmsFDC) { */ this.pAutoMount = eval("(" + parmsFDC['autoMount'] + ")"); } catch (e) { - this.error("FDC auto-mount error: " + e.message + " (" + parmsFDC['autoMount'] + ")"); + Component.error("FDC auto-mount error: " + e.message + " (" + parmsFDC['autoMount'] + ")"); this.pAutoMount = null; } } @@ -395,7 +395,7 @@ FDC.prototype.setBinding = function(sHTMLClass, sHTMLType, sBinding, control) try { dataValue = eval("({" + sValue + "})"); } catch (e) { - fdc.error("FDC option error: " + (e.message || e)); + Component.error("FDC option error: " + (e.message || e)); } } var sDesc = dataValue['desc']; @@ -744,6 +744,10 @@ FDC.prototype.saveController = function() /** * initDrive(drive, iDrive, data) + * + * TODO: Consider a separate Drive class that both FDC and HDC can use, since there's a lot of commonality + * between the drive objects created by both controllers. This will clean up overall drive management and allow + * us to factor out some common Drive methods (eg, advanceSector()). * * @this {FDC} * @param {Object} drive @@ -1933,8 +1937,7 @@ FDC.prototype.doFormat = function(drive) * NOTE: Since the FDC isn't aware of the extent of the transfer, all readByte() can do is return bytes * until the current track (or, in the case of a multi-track request, the current cylinder) has been exhausted. * - * TODO: Research the requirements, if any, for multi-track I/O and determine what if anything needs to be - * done. At the very least, if it must be supported, there would need to be some head-incrementing somewhere. + * TODO: Research the requirements, if any, for multi-track I/O and determine what else needs to be done. * * @this {FDC} * @param {Object} drive @@ -1958,7 +1961,11 @@ FDC.prototype.readByte = function(drive, done) break; } drive.ibSector = 0; - drive.bSector++; + /* + * We "pre-advance" bSector et al now, instead of waiting to advance it right before the seek(). + * This allows the initial call to readByte() to perform a seek without triggering an unwanted advance. + */ + this.advanceSector(drive); } while (true); } done(b, false); @@ -1981,8 +1988,7 @@ FDC.prototype.readByte = function(drive, done) * NOTE: Since the FDC isn't aware of the extent of the transfer, all writeByte() can do is accept bytes * until the current track (or, in the case of a multi-track request, the current cylinder) has been exhausted. * - * TODO: Research the requirements, if any, for multi-track I/O and determine what if anything needs to be - * done. At the very least, if it must be supported, there would need to be some head-incrementing somewhere. + * TODO: Research the requirements, if any, for multi-track I/O and determine what else needs to be done. * * @this {FDC} * @param {Object} drive @@ -2010,11 +2016,40 @@ FDC.prototype.writeByte = function(drive, b) break; } drive.ibSector = 0; - drive.bSector++; + /* + * We "pre-advance" bSector et al now, instead of waiting to advance it right before the seek(). + * This allows the initial call to writeByte() to perform a seek without triggering an unwanted advance. + */ + this.advanceSector(drive); } while (true); return b; }; +/** + * advanceSector(drive) + * + * This increments the sector number; when the sector number reaches drive.nSectors on the current track, we + * increment drive.bHead and reset drive.bSector, and when drive.bHead reaches drive.nHeads, we reset drive.bHead + * and increment drive.bCylinder. + * + * @this {FDC} + * @param {Object} drive + */ +FDC.prototype.advanceSector = function(drive) +{ + Component.assert(drive.bCylinder < drive.nCylinders); + drive.bSector++; + var bSectorStart = 1; + if (drive.bSector >= drive.nSectors + bSectorStart) { + drive.bSector = bSectorStart; + drive.bHead++; + if (drive.bHead >= drive.nHeads) { + drive.bHead = 0; + drive.bCylinder++; + } + } +}; + /** * writeFormat(drive, b) * @@ -2085,9 +2120,9 @@ FDC.prototype.intBIOSDiskette = function(addr) var DL = this.cpu.regDX & 0xff; var DH = this.cpu.regDX >> 8; if (this.dbg && this.dbg.messageEnabled(this.dbg.MESSAGE_FDC) && DL < 0x80) { - this.dbg.message("FDC.intBIOS(AH=" + str.toHexByte(AH) + ",D=" + str.toHexByte(DL) + ",C=" + str.toHexByte(CH) + ",H=" + str.toHexByte(DH) + ",S=" + str.toHexByte(CL) + ",N=" + str.toHexByte(AL) + ") at " + str.toHexAddr(addr - this.cpu.segCS.base, this.cpu.segCS.sel)); + this.dbg.message("\nFDC.intBIOS(AH=" + str.toHexByte(AH) + ",D=" + str.toHexByte(DL) + ",C=" + str.toHexByte(CH) + ",H=" + str.toHexByte(DH) + ",S=" + str.toHexByte(CL) + ",N=" + str.toHexByte(AL) + ") at " + str.toHexAddr(addr - this.cpu.segCS.base, this.cpu.segCS.sel)); // this.cpu.haltCPU(); - this.cpu.addInterruptReturn(addr, function (fdc, nCycles) { + this.cpu.addInterruptReturn(addr, function(fdc, nCycles) { return function onBIOSDisketteReturn(nLevel) { nCycles = fdc.cpu.getCycles() - nCycles; fdc.messageDebugger("FDC.intBIOS(" + nLevel + "): C=" + (fdc.cpu.getCF()? 1 : 0) + " (cycles=" + nCycles + ")"); diff --git a/my_modules/pcjs-client/lib/hdc.js b/my_modules/pcjs-client/lib/hdc.js index e83f1f65c..ec6133173 100644 --- a/my_modules/pcjs-client/lib/hdc.js +++ b/my_modules/pcjs-client/lib/hdc.js @@ -54,7 +54,7 @@ if (typeof module !== 'undefined') { * * drives: an array of driveConfig objects, each containing 'name', 'path', 'size' and 'type' properties * type: either 'xt' (for the PC XT Xebec controller) or 'at' (for the PC AT Western Digital controller) - * + * * The 'type' parameter defaults to 'xt'. All ports for the PC XT controller are referred to as XTC ports, * and similarly, all PC AT controller ports are referred to as ATC ports. * @@ -70,7 +70,7 @@ if (typeof module !== 'undefined') { * Diagnostic write tests will destroy any data on this cylinder." * * Does FDISK insure that the last cylinder is reserved? I'm sure we'll eventually find out. - * + * * @constructor * @extends Component * @param {Object} parmsHDC @@ -98,10 +98,10 @@ function HDC(parmsHDC) { * any disk image "path" properties to process) will take care of the rest. */ } catch (e) { - this.error("HDC drive configuration error: " + e.message + " (" + parmsHDC['drives'] + ")"); + Component.error("HDC drive configuration error: " + e.message + " (" + parmsHDC['drives'] + ")"); } } - + /* * Set fATC (AT Controller flag) according to the 'type' parameter. This in turn determines other * defaults. For example, the default XT drive type is 3 (for a 10Mb disk drive), whereas the default @@ -110,7 +110,7 @@ function HDC(parmsHDC) { this.fATC = (parmsHDC['type'] == "at"); this.iHDC = this.fATC? 1 : 0; this.iDriveTypeDefault = this.fATC? 2 : 3; - + /* * The remainder of HDC initialization now takes place in our initBus() handler */ @@ -125,12 +125,12 @@ HDC.DEFAULT_DRIVE_NAME = "Hard Drive"; /* * Each of the following DriveType entries contain (up to) 4 values: - * + * * [0]: total cylinders * [1]: total heads * [2]: total sectors/tracks (optional; default is 17) * [3]: total bytes/sector (optional; default is 512) - * + * * verifyDrive() attempts to confirm that these values agree with the programmed drive characteristics. */ HDC.aDriveTypes = [ @@ -143,10 +143,10 @@ HDC.aDriveTypes = [ /* * Sadly, drive types differ across controller models (XTC drive types don't match ATC drive types), * so aDriveTypes must first be indexed by a controller index (this.iHDC). - * + * * The following is a more complete description of the drive types supported by the MODEL_5170, where C is * Cylinders, H is Heads, WP is Write Pre-Comp, and LZ is Landing Zone (in practice, we don't need WP or LZ). - * + * * Type C H WP LZ * ---- --- -- --- --- * 1 306 4 128 305 @@ -185,29 +185,29 @@ HDC.aDriveTypes = [ /* * ATC (AT Controller) Registers - * + * * The "IBM Personal Computer AT Fixed Disk and Diskette Drive Adapter", aka the HFCOMBO card, contains what we refer * to here as the ATC (AT Controller). Even though that card contains both Fixed Disk and Diskette Drive controllers, * this component (HDC) still deals only with the "Fixed Disk" portion. Fortunately, the "Diskette Drive Adapter" * portion of the card is compatible with the existing FDC component, so that component continues to be responsible * for all diskette operations. - * + * * ATC ports default to their primary addresses; secondary port addresses are 0x80 lower (eg, 0x170 instead of 0x1F0). - * + * * It's important to know that the MODEL_5170 BIOS has a special relationship with the "Combo Hard File/Diskette * (HFCOMBO) Card" (see @F000:144C). Initially, the ChipSet component intercepted reads for HFCOMBO's STATUS port * and returned the BUSY bit clear to reduce boot time; however, it turned out that was also a prerequisite for the * BIOS to write test patterns to the CYLLO port and set the "DUAL" bit (bit 0) of the "HFCNTRL" byte at 40:8Fh if * those CYLLO operations succeeded (now that the HDC is "ATC-aware", those ChipSet port intercepts have been removed). - * + * * Without the "DUAL" bit set, when it came time later to report the diskette drive type, the "DISK_TYPE" function * (@F000:273D) would branch to one of two almost-identical blocks of code -- specifically, a block that disallowed * diskette drive types >= 2 (ChipSet.CMOS.FDRIVE.DSDD) instead of >= 3 (ChipSet.CMOS.FDRIVE.DSHD). - * + * * In other words, the "Fixed Disk" portion of the HFCOMBO controller has to be present and operational if the user * wants to use high-capacity (80-track) diskettes with "Diskette Drive" portion of the controller. This may not be * immediately obvious to anyone creating a 5170 machine configuration with the FDC component but no HDC component. - * + * * TODO: Investigate what a MODEL_5170 can do, if anything, with diskettes if an "HFCOMBO card" was NOT installed * (eg, was there Diskette-only Controller that could be installed, and if so, did it support high-capacity diskettes?) * Also, consider making the FDC component able to detect when the HDC is missing and provide the same minimal HFCOMBO @@ -246,7 +246,7 @@ HDC.ATC = { DRIVE_MASK: 0x10, SET_MASK: 0xE0, SET_BITS: 0xA0 // for whatever reason, these bits must always be set - }, + }, STATUS: { // this.regStatus (read-only; reading clears IRQ.ATC) PORT: 0x1F7, BUSY: 0x80, // if this is set, no other STATUS bits are valid @@ -258,7 +258,7 @@ HDC.ATC = { INDEX: 0x02, // set once for every revolution of the disk ERROR: 0x01 // set when the previous command ended in an error; one or more bits are set in the ERROR register (the next command to the controller resets the ERROR bit) }, - COMMAND:{ // this.regCommand (write-only) + COMMAND:{ // this.regCommand (write-only) PORT: 0x1F7, RESTORE: 0x10, // low nibble x 500us equal stepping rate (except for 0, which corresponds to 35us) (aka RECALIBRATE) READ_DATA: 0x20, // also supports NO_RETRIES and WITH_ECC @@ -280,9 +280,9 @@ HDC.ATC = { /* * XTC Data Register (0x320, read-write) - * + * * Writes to this register are discussed below; see HDC Commands. - * + * * Reads from this register after a command has been executed retrieve a "status byte", * which must NOT be confused with the Status Register (see below). This data "status byte" * contains only two bits of interest: XTC_DATA.STATUS_ERROR and XTC_DATA.STATUS_UNIT. @@ -296,7 +296,7 @@ HDC.XTC.DATA.STATUS_UNIT = 0x20; // logical unit number of the drive /* * XTC Status Register (0x321, read-only) - * + * * WARNING: The IBM Technical Reference Manual *badly* confuses the XTC_DATA "status byte" (above) * that the controller sends following an HDC.XTC.DATA.CMD operation with the Status Register (below). * In fact, it's so badly confused that it completely fails to document any of the Status Register @@ -313,11 +313,11 @@ HDC.XTC.STATUS.INTERRUPT = 0x20; // HDC BIOS: interrupt bit /* * XTC Config Register (0x322, read-only) - * + * * This register is used to read HDC card switch settings that defined the "Drive Type" for * drives 0 and 1. SW[1],SW[2] (for drive 0) and SW[3],SW[4] (for drive 1) are set as follows: - * - * ON, ON Drive Type 0 (306 cylinders, 2 heads) + * + * ON, ON Drive Type 0 (306 cylinders, 2 heads) * ON, OFF Drive Type 1 (375 cylinders, 8 heads) * OFF, ON Drive Type 2 (306 cylinders, 6 heads) * OFF, OFF Drive Type 3 (306 cylinders, 4 heads) @@ -325,21 +325,21 @@ HDC.XTC.STATUS.INTERRUPT = 0x20; // HDC BIOS: interrupt bit /* * XTC Commands, as issued to XTC_DATA - * + * * Commands are multi-byte sequences sent to XTC_DATA, starting with a XTC_DATA.CMD byte, * and followed by 5 more bytes, for a total of 6 bytes, which collectively are called a * Device Control Block (DCB). Not all commands use all 6 bytes, but all 6 bytes must be present; * unused bytes are simply ignored. - * + * * XTC_DATA.CMD (3-bit class code, 5-bit operation code) * XTC_DATA.HEAD (1-bit drive number, 5-bit head number) * XTC_DATA.CLSEC (upper bits of 10-bit cylinder number, 6-bit sector number) * XTC_DATA.CH (lower bits of 10-bit cylinder number) * XTC_DATA.COUNT (8-bit interleave or block count) * XTC_DATA.CTRL (8-bit control field) - * + * * One command, HDC.XTC.DATA.CMD.INIT_DRIVE, must include 8 additional bytes following the DCB: - * + * * maximum number of cylinders (high) * maximum number of cylinders (low) * maximum number of heads @@ -348,7 +348,7 @@ HDC.XTC.STATUS.INTERRUPT = 0x20; // HDC BIOS: interrupt bit * start write precompensation cylinder (high) * start write precompensation cylinder (low) * maximum ECC data burst length - * + * * Note that the 3 word values above are stored in "big-endian" format (high byte followed by low byte), * rather than the more typical "little-endian" format (low byte followed by high byte). */ @@ -378,26 +378,26 @@ HDC.XTC.DATA.CMD = { * HDC error conditions, as returned in byte 0 of the (4) bytes returned by the Request Sense Status command */ HDC.XTC.DATA.ERR = { - NONE: 0x00, - NO_INDEX: 0x01, // no index signal detected - SEEK_INCOMPLETE:0x02, // no seek-complete signal - WRITE_FAULT: 0x03, - NOT_READY: 0x04, // after the controller selected the drive, the drive did not respond with a ready signal - NO_TRACK: 0x06, // after stepping the max number of cylinders, the controller did not receive the track 00 signal from the drive - STILL_SEEKING: 0x08, - ECC_ID_ERROR: 0x10, - ECC_DATA_ERROR: 0x11, - NO_ADDR_MARK: 0x12, - NO_SECTOR: 0x14, - BAD_SEEK: 0x15, // seek error: the cylinder and/or head address did not compare with the expected target address - ECC_CORRECTABLE:0x18, // correctable data error - BAD_TRACK: 0x19, - BAD_CMD: 0x20, - BAD_DISK_ADDR: 0x21, - RAM: 0x30, - CHECKSUM: 0x31, - POLYNOMIAL: 0x32, - MASK: 0x3F + NONE: 0x00, + NO_INDEX: 0x01, // no index signal detected + SEEK_INCOMPLETE:0x02, // no seek-complete signal + WRITE_FAULT: 0x03, + NOT_READY: 0x04, // after the controller selected the drive, the drive did not respond with a ready signal + NO_TRACK: 0x06, // after stepping the max number of cylinders, the controller did not receive the track 00 signal from the drive + STILL_SEEKING: 0x08, + ECC_ID_ERROR: 0x10, + ECC_DATA_ERROR: 0x11, + NO_ADDR_MARK: 0x12, + NO_SECTOR: 0x14, + BAD_SEEK: 0x15, // seek error: the cylinder and/or head address did not compare with the expected target address + ECC_CORRECTABLE:0x18, // correctable data error + BAD_TRACK: 0x19, + BAD_CMD: 0x20, + BAD_DISK_ADDR: 0x21, + RAM: 0x30, + CHECKSUM: 0x31, + POLYNOMIAL: 0x32, + MASK: 0x3F }; HDC.XTC.DATA.SENSE = { @@ -406,8 +406,8 @@ HDC.XTC.DATA.SENSE = { /* * HDC Command Sequences - * - * Unlike the FDC, all the HDC commands have fixed-length command request sequences (well, OK, except for + * + * Unlike the FDC, all the HDC commands have fixed-length command request sequences (well, OK, except for * HDC.XTC.DATA.CMD.INIT_DRIVE) and fixed-length response sequences (well, OK, except for HDC.XTC.DATA.CMD.REQUEST_SENSE), * so a table of byte-lengths isn't much use, but having names for all the commands is still handy for debugging. */ @@ -482,7 +482,7 @@ HDC.BIOS.DISK_CMD = { /** * setBinding(sHTMLClass, sHTMLType, sBinding, control) - * + * * @this {HDC} * @param {string|null} sHTMLClass is the class of the HTML control (eg, "input", "output") * @param {string|null} sHTMLType is the type of the HTML control (eg, "button", "list", "text", "submit", "textarea", "canvas") @@ -500,7 +500,7 @@ HDC.prototype.setBinding = function(sHTMLClass, sHTMLType, sBinding, control) /** * initBus(cmp, bus, cpu, dbg) - * + * * @this {HDC} * @param {Computer} cmp * @param {Bus} bus @@ -522,17 +522,17 @@ HDC.prototype.initBus = function(cmp, bus, cpu, dbg) bus.addPortInputTable(this, this.fATC? HDC.aATCPortInput : HDC.aXTCPortInput); bus.addPortOutputTable(this, this.fATC? HDC.aATCPortOutput : HDC.aXTCPortOutput); - + if (DEBUGGER) { cpu.addInterruptNotify(HDC.BIOS.DISK_INT, this, this.intBIOSDisk); cpu.addInterruptNotify(HDC.BIOS.DISKETTE_INT, this, this.intBIOSDiskette); } - + /* * The following code used to be performed in the HDC constructor, but now we need to wait for information * about the Computer to be available (eg, getMachineID() and getUserID()) before we start loading and/or * connecting to disk images. - * + * * If we didn't need auto-mount support, we could defer controller initialization until we received a powerUp() * notification, at which point reset() would call initController(), or restore() would restore the controller; * in that case, all we'd need to do here is call setReady(). @@ -558,7 +558,7 @@ HDC.prototype.powerUp = function(data, fRepower) if (this.cmp.fReload) { /* * If the computer's fReload flag is set, we're required to toss all currently - * loaded disks and remount all disks specified in the auto-mount configuration. + * loaded disks and remount all disks specified in the auto-mount configuration. */ this.autoMount(true); } @@ -571,7 +571,7 @@ HDC.prototype.powerUp = function(data, fRepower) /** * powerDown(fSave, fShutdown) - * + * * @this {HDC} * @param {boolean} fSave * @param {boolean} [fShutdown] @@ -584,7 +584,7 @@ HDC.prototype.powerDown = function(fSave, fShutdown) /** * getMachineID() - * + * * @return {string} */ HDC.prototype.getMachineID = function() @@ -604,7 +604,7 @@ HDC.prototype.getUserID = function() /** * reset() - * + * * @this {HDC} */ HDC.prototype.reset = function() @@ -618,7 +618,7 @@ HDC.prototype.reset = function() /** * save() - * + * * This implements save support for the HDC component. * * @this {HDC} @@ -633,7 +633,7 @@ HDC.prototype.save = function() /** * restore(data) - * + * * This implements restore support for the HDC component. * * @this {HDC} @@ -647,7 +647,7 @@ HDC.prototype.restore = function(data) /** * initController(data, fReset) - * + * * @this {HDC} * @param {Array} [data] * @param {boolean} [fReset] true if a machine reset (not just a controller reset) @@ -657,16 +657,16 @@ HDC.prototype.initController = function(data, fReset) { var i = 0; var fSuccess = true; - + /* * At this point, it's worth calling into question my decision to NOT split the HDC component into separate XTC * and ATC components, given all the differences, and given that I'm about to write some "if (ATC) else (XTC) ..." * code. And all I can say in my defense is, yes, it's definitely worth calling that into question. - * + * * However, there's also some common code, mostly in the area of disk management rather than controller management, * and if the components were split, then I'd have to create a third component for that common code (although again, * disk management probably belongs in its own component anyway). - * + * * However, let's not forget that since my overall plan is to have only one PCjs "binary", everything's going to end * up in the same bucket anyway, so let's not be too obsessive about organizational details. As long as the number * of these conditionals is small and they're not performance-critical, this seems much ado about nothing. @@ -743,7 +743,7 @@ HDC.prototype.initController = function(data, fReset) /** * saveController() - * + * * @this {HDC} * @return {Array} */ @@ -778,7 +778,11 @@ HDC.prototype.saveController = function() /** * initDrive(iDrive, drive, driveConfig, data, fReset) - * + * + * TODO: Consider a separate Drive class that both FDC and HDC can use, since there's a lot of commonality + * between the drive objects created by both controllers. This will clean up overall drive management and allow + * us to factor out some common Drive methods (eg, advanceSector()). + * * @this {HDC} * @param {number} iDrive * @param {Object} drive @@ -805,10 +809,10 @@ HDC.prototype.initDrive = function(iDrive, drive, driveConfig, data, fReset) drive.senseCode = data[i++]; drive.fRemovable = data[i++]; drive.abDriveParms = data[i++]; // captures drive parameters programmed via HDC.XTC.DATA.CMD.INIT_DRIVE - + /* * TODO: Make abSector a DWORD array rather than a BYTE array (we could even allocate a Memory block for it); - * alternatively, eliminate the buffer entirely and re-establish a reference to the appropriate Disk sector object. + * alternatively, eliminate the buffer entirely and re-establish a reference to the appropriate Disk sector object. */ drive.abSector = data[i++]; @@ -832,7 +836,7 @@ HDC.prototype.initDrive = function(iDrive, drive, driveConfig, data, fReset) * any specific disk image, or create an empty (purely local) disk image. */ drive.mode = driveConfig['mode'] || (drive.path? DiskAPI.MODE.PRELOAD : DiskAPI.MODE.LOCAL); - + /* * On-demand I/O of raw disk images is supported only if there's a valid user ID; fall back to an empty * local disk image if there's not. @@ -843,7 +847,7 @@ HDC.prototype.initDrive = function(iDrive, drive, driveConfig, data, fReset) drive.type = driveConfig['type']; if (drive.type === undefined || HDC.aDriveTypes[this.iHDC][drive.type] === undefined) drive.type = this.iDriveTypeDefault; - + var driveType = HDC.aDriveTypes[this.iHDC][drive.type]; drive.nSectors = driveType[2] || 17; // sectors/track drive.cbSector = driveType[3] || 512; // bytes/sector (default is 512 if unspecified in the table) @@ -854,10 +858,10 @@ HDC.prototype.initDrive = function(iDrive, drive, driveConfig, data, fReset) if (fReset && this.chipset) { this.chipset.setCMOSDriveType(iDrive, drive.type); } - + /* * The next group of properties are set by user requests to load/unload disk images. - * + * * NOTE: I now avoid reinitializing drive.disk in order to retain any previously mounted disk across resets. */ if (drive.disk === undefined) { @@ -893,7 +897,7 @@ HDC.prototype.initDrive = function(iDrive, drive, driveConfig, data, fReset) /** * saveDrives() - * + * * @this {HDC} * @return {Array} */ @@ -909,7 +913,7 @@ HDC.prototype.saveDrives = function() /** * saveDrive(drive) - * + * * @this {HDC} * @return {Array} */ @@ -935,7 +939,7 @@ HDC.prototype.saveDrive = function(drive) /** * copyDrive(iDrive) - * + * * @this {HDC} * @param {number} iDrive * @return {Object|undefined} (undefined if the requested drive does not exist) @@ -960,7 +964,7 @@ HDC.prototype.copyDrive = function(iDrive) * Normally, we'd rely on the drive characteristics programmed via the HDC.XTC.DATA.CMD.INIT_DRIVE * command, but if an explicit drive type is specified, then we use the characteristics (geometry) * associated with that type. - * + * * @this {HDC} * @param {Object} drive * @param {number} [type] to create a disk of the specified type, if no disk exists yet @@ -974,7 +978,7 @@ HDC.prototype.verifyDrive = function(drive, type) * If the caller wants us to use the programmed drive parameters, we use those, * but if there aren't any drive parameters (yet), then use default parameters based * on drive.type. - * + * * We used to do the last step ONLY if there was no drive.path -- otherwise, we'd waste * time creating an empty disk if autoMount() was going to load an image from drive.path; * but hopefully the Disk component is smarter now. @@ -1026,7 +1030,7 @@ HDC.prototype.verifyDrive = function(drive, type) * until the current track (or, in the case of a multi-track request, the current cylinder) has been exhausted. * * Since seekDrive() is for use with non-DMA requests, we use nBytes to specify the length of the entire transfer. - * + * * @this {HDC} * @param {Object} drive * @param {number} iSector (a "logical" sector number, relative to the entire disk, NOT a physical sector number) @@ -1039,7 +1043,7 @@ HDC.prototype.seekDrive = function(drive, iSector, nSectors) var aDiskInfo = drive.disk.info(); var nCylinders = aDiskInfo[0]; /* - * If nCylinders is zero, we probably have an empty disk image, awaiting initialization (see verifyDrive()) + * If nCylinders is zero, we probably have an empty disk image, awaiting initialization (see verifyDrive()) */ if (nCylinders) { var nHeads = aDiskInfo[1]; @@ -1060,7 +1064,7 @@ HDC.prototype.seekDrive = function(drive, iSector, nSectors) /* * NOTE: We don't set nSectorEnd, as an HDC command would, but it's irrelevant, because we don't actually * do anything with nSectorEnd at this point. Perhaps someday, when we faithfully honor/restrict requests - * to a single track (or a single cylinder, in the case of multi-track requests). + * to a single track (or a single cylinder, in the case of multi-track requests). */ drive.errorCode = HDC.XTC.DATA.ERR.NONE; /* @@ -1076,7 +1080,7 @@ HDC.prototype.seekDrive = function(drive, iSector, nSectors) /** * autoMount(fRemount) - * + * * @this {HDC} * @param {boolean} [fRemount] is true if we're remounting all auto-mounted disks * @return {boolean} true if one or more disk images are being auto-mounted, false if none @@ -1101,7 +1105,7 @@ HDC.prototype.autoMount = function(fRemount) /** * loadDisk(iDrive, sDiskName, sDiskPath, fAutoMount) - * + * * @this {HDC} * @param {number} iDrive * @param {string} sDiskName @@ -1129,9 +1133,9 @@ HDC.prototype.loadDisk = function(iDrive, sDiskName, sDiskPath, fAutoMount) /** * mountDisk(drive, disk, sDiskName, sDiskPath) - * + * * This is a callback issued by the Disk component once its own mount() operation has finished. - * + * * @this {HDC} * @param {Object} drive * @param {Disk} disk is set if the disk was successfully mounted, null if not @@ -1162,7 +1166,7 @@ HDC.prototype.mountDisk = function(drive, disk, sDiskName, sDiskPath) * * NOTE: At the moment, we support only auto-mounts; there is no user interface for selecting hard disk images, * let alone unloading them, so there is currently no need for the following function. - * + * * @this {HDC} * @param {number} iDrive * @@ -1179,7 +1183,7 @@ HDC.prototype.mountDisk = function(drive, disk, sDiskName, sDiskPath) /** * intXTCData(port, addrFrom) - * + * * @this {HDC} * @param {number} port (0x320) * @param {number} [addrFrom] (not defined whenever the Debugger tries to read the specified port) @@ -1204,7 +1208,7 @@ HDC.prototype.inXTCData = function(port, addrFrom) /** * outXTCData(port, bOut, addrFrom) - * + * * @this {HDC} * @param {number} port (0x320) * @param {number} bOut @@ -1238,7 +1242,7 @@ HDC.prototype.outXTCData = function(port, bOut, addrFrom) /** * inXTCStatus(port, addrFrom) - * + * * @this {HDC} * @param {number} port (0x321) * @param {number} [addrFrom] (not defined whenever the Debugger tries to read the specified port) @@ -1261,7 +1265,7 @@ HDC.prototype.inXTCStatus = function(port, addrFrom) /** * outXTCReset(port, bOut, addrFrom) - * + * * @this {HDC} * @param {number} port (0x321) * @param {number} bOut @@ -1271,7 +1275,7 @@ HDC.prototype.outXTCReset = function(port, bOut, addrFrom) { this.messagePort(port, bOut, addrFrom, "RESET"); /* - * Not sure what to do with this value, and the value itself may be "don't care", but we'll save it anyway. + * Not sure what to do with this value, and the value itself may be "don't care", but we'll save it anyway. */ this.regReset = bOut; if (this.chipset) this.chipset.clearIRR(ChipSet.IRQ.XTC); @@ -1280,7 +1284,7 @@ HDC.prototype.outXTCReset = function(port, bOut, addrFrom) /** * inXTCConfig(port, addrFrom) - * + * * @this {HDC} * @param {number} port (0x322) * @param {number} [addrFrom] (not defined whenever the Debugger tries to read the specified port) @@ -1294,7 +1298,7 @@ HDC.prototype.inXTCConfig = function(port, addrFrom) /** * outXTCPulse(port, bOut, addrFrom) - * + * * @this {HDC} * @param {number} port (0x322) * @param {number} bOut @@ -1304,7 +1308,7 @@ HDC.prototype.outXTCPulse = function(port, bOut, addrFrom) { this.messagePort(port, bOut, addrFrom, "PULSE"); /* - * Not sure what to do with this value, and the value itself may be "don't care", but we'll save it anyway. + * Not sure what to do with this value, and the value itself may be "don't care", but we'll save it anyway. */ this.regPulse = bOut; /* @@ -1321,7 +1325,7 @@ HDC.prototype.outXTCPulse = function(port, bOut, addrFrom) /** * outXTCPattern(port, bOut, addrFrom) - * + * * @this {HDC} * @param {number} port (0x323) * @param {number} bOut @@ -1335,7 +1339,7 @@ HDC.prototype.outXTCPattern = function(port, bOut, addrFrom) /** * outXTCNoise(port, bOut, addrFrom) - * + * * @this {HDC} * @param {number} port (0x327, 0x32B or 0x32F) * @param {number} bOut @@ -1358,13 +1362,13 @@ HDC.prototype.inATCData = function(port, addrFrom) { var bIn = -1; var fSuppress = false; - + if (this.drive) { /* - * messagePort() calls, if enabled, can be too overwhelming for this port, so limit them to the first byte. + * messagePort() calls, if enabled, can be too overwhelming for this port, so limit them to the first byte. */ fSuppress = (this.drive.ibSector > 0); - + /* * We use the synchronous form of readByte() at this point because we have no choice; an I/O instruction * has just occurred and cannot be delayed. The good news is that doATCommand() should have already primed @@ -1373,7 +1377,7 @@ HDC.prototype.inATCData = function(port, addrFrom) */ bIn = this.readByte(this.drive); Component.assert(bIn >= 0); - + /* * Now that we've supplied a full sector of data, see if the caller's expecting additional sectors; * if so, prime the pump again. The caller should not poll us again until another interrupt's been delivered. @@ -1397,7 +1401,7 @@ HDC.prototype.inATCData = function(port, addrFrom) /* * TODO: It would be nice to be a bit more specific about the error (if any) that just occurred. * Consult drive.errorCode (it uses older XTC error codes, but mapping those codes should be trivial). - */ + */ hdc.regStatus = HDC.ATC.STATUS.ERROR; hdc.regError = HDC.ATC.ERROR.NO_CHS; if (DEBUG) hdc.messageDebugger("HDC.inATCData(): read failed"); @@ -1424,10 +1428,10 @@ HDC.prototype.inATCData = function(port, addrFrom) HDC.prototype.outATCData = function(port, bOut, addrFrom) { /* - * messagePort() calls, if enabled, can be too overwhelming for this port, so limit them to the first byte. + * messagePort() calls, if enabled, can be too overwhelming for this port, so limit them to the first byte. */ if (!this.drive || this.drive.ibSector == 0) this.messagePort(port, bOut, addrFrom, "DATA"); - + if (this.drive) { if (this.drive.nBytes >= this.drive.cbSector) { if (this.writeByte(this.drive, bOut) < 0) { @@ -1497,7 +1501,7 @@ HDC.prototype.outATCWPreC = function(port, bOut, addrFrom) /** * inATCSecCnt(port, addrFrom) - * + * * @this {HDC} * @param {number} port (0x1F2) * @param {number} [addrFrom] (not defined whenever the Debugger tries to read the specified port) @@ -1688,7 +1692,7 @@ HDC.prototype.doATCommand = function() var nCylinder = this.regCylLo | ((this.regCylHi & HDC.ATC.CYLHI.MASK) << 8); var nSector = this.regSecNum; var nSectors = this.regSecCnt; - + this.drive = null; this.regError = 0; this.regStatus = HDC.ATC.STATUS.READY | HDC.ATC.STATUS.SEEK_OK; @@ -1709,7 +1713,7 @@ HDC.prototype.doATCommand = function() * Since the ATC doesn't use DMA, we must now set some additional Drive state for the benefit of any * follow-up I/O instructions. For example, any subsequent inATCData() and outATCData() calls need to * know which drive to talk to ("this.drive"), to issue their own readByte() and writeByte() calls. - * + * * The XTC didn't need this, because it used doRead(), doWrite(), doFormat() helper functions, which * reset the current drive's "sector" and "errorCode" properties themselves and then used DMA functions * that delivered drive data with direct calls to readByte() and writeByte(). @@ -1722,9 +1726,9 @@ HDC.prototype.doATCommand = function() if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(this.dbg.MESSAGE_PORT | this.dbg.MESSAGE_HDC)) { this.dbg.message("HDC.doATCommand(" + str.toHexByte(bCmd) + "): " + HDC.aATCCommands[bCmd]); } - + switch (bCmd & HDC.ATC.COMMAND.MASK) { - + case HDC.ATC.COMMAND.READ_DATA: /* * We're using a call to readByte() that disables auto-increment, so that once we've got the first @@ -1782,7 +1786,7 @@ HDC.prototype.doATCommand = function() this.regError = HDC.ATC.DIAG.NO_ERROR; fInterrupt = true; break; - + case HDC.ATC.COMMAND.SETPARMS: /* * The documentation implies that the only parameters this command really affects are the number @@ -1794,7 +1798,7 @@ HDC.prototype.doATCommand = function() * CYL: 0x100 (256, uh, what?) * SECNUM: 0x0C (12, uh, what?) * DRVHD: 0xA3 (max head of 0x03, for 4 total heads) - * + * * The importance of SECCNT (nSectors) and DRVHD (nHeads) is controlling how multi-sector operations * advance to the next sector; see advanceSector(). */ @@ -1804,28 +1808,28 @@ HDC.prototype.doATCommand = function() drive.nSectors = nSectors; fInterrupt = true; break; - + default: if (DEBUG) this.messageDebugger("HDC.doATCommand(" + str.toHexByte(this.regCommand) + "): " + (bCmd < 0? ("invalid drive (" + iDrive + ")") : "unsupported operation")); if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(this.dbg.MESSAGE_HDC) && bCmd >= 0) this.cpu.haltCPU(); break; } - + if (fInterrupt && this.chipset) this.chipset.setIRR(ChipSet.IRQ.ATC); }; /** * doXTCommand() - * + * * Handles XTC (XT Controller) commands - * + * * @this {HDC} */ -HDC.prototype.doXTCommand = function() +HDC.prototype.doXTCommand = function() { var hdc = this; this.regDataIndex = 0; - + var bCmd = this.popCmd(); var bCmdOrig = bCmd; var b1 = this.popCmd(); @@ -1853,12 +1857,12 @@ HDC.prototype.doXTCommand = function() * I tried to save normal command processing from having to deal with invalid drives, * but the HDC BIOS initializes both drive 0 AND drive 1 on a HDC.XTC.DATA.CMD.INIT_DRIVE command, * and apparently that particular command has no problem with non-existent drives. - * + * * So I've separated the commands into two groups: drive-ambivalent commands should be - * processed in the first group, and all the rest should be processed in the second group. + * processed in the first group, and all the rest should be processed in the second group. */ switch (bCmd) { - + case HDC.XTC.DATA.CMD.REQUEST_SENSE: // 0x03 this.beginResult(drive? drive.errorCode : HDC.XTC.DATA.ERR.NOT_READY); this.pushResult(b1); @@ -1875,7 +1879,7 @@ HDC.prototype.doXTCommand = function() this.pushResult(HDC.XTC.DATA.STATUS_OK | bDrive); bCmd = -1; // mark the command as complete break; - + case HDC.XTC.DATA.CMD.INIT_DRIVE: // 0x0C /* * Pop off all the extra "Initialize Drive Characteristics" bytes and store them, for the benefit of @@ -1897,13 +1901,13 @@ HDC.prototype.doXTCommand = function() this.beginResult(bDataStatus | bDrive); bCmd = -1; // mark the command as complete break; - + case HDC.XTC.DATA.CMD.RAM_DIAGNOSTIC: // 0xE0 case HDC.XTC.DATA.CMD.CTL_DIAGNOSTIC: // 0xE4 this.beginResult(HDC.XTC.DATA.STATUS_OK | bDrive); bCmd = -1; // mark the command as complete break; - + default: break; } @@ -1924,26 +1928,26 @@ HDC.prototype.doXTCommand = function() case HDC.XTC.DATA.CMD.TEST_READY: // 0x00 this.beginResult(HDC.XTC.DATA.STATUS_OK | bDrive); break; - + case HDC.XTC.DATA.CMD.RECALIBRATE: // 0x01 drive.bControl = bControl; if (DEBUG) this.messageDebugger("HDC.doXTCommand(): drive " + iDrive + " control byte: 0x" + str.toHexByte(bControl)); this.beginResult(HDC.XTC.DATA.STATUS_OK | bDrive); break; - + case HDC.XTC.DATA.CMD.READ_VERF: // 0x05 /* * This is a non-DMA operation, so we simply pretend everything is OK for now. TODO: Revisit. */ this.beginResult(HDC.XTC.DATA.STATUS_OK | bDrive); break; - + case HDC.XTC.DATA.CMD.READ_DATA: // 0x08 this.doRead(drive, function(bStatus) { hdc.beginResult(bStatus | bDrive); }); break; - + case HDC.XTC.DATA.CMD.WRITE_DATA: // 0x0A /* * QUESTION: The IBM TechRef (p.1-188) implies that bCount is used as part of HDC.XTC.DATA.CMD.WRITE_DATA command, @@ -1954,13 +1958,13 @@ HDC.prototype.doXTCommand = function() hdc.beginResult(bStatus | bDrive); }); break; - + case HDC.XTC.DATA.CMD.WRITE_BUFFER: // 0x0F this.doWriteToBuffer(drive, function(bStatus) { hdc.beginResult(bStatus | bDrive); }); break; - + default: if (DEBUG) this.messageDebugger("HDC.doXTCommand(" + str.toHexByte(bCmdOrig) + "): " + (bCmd < 0? ("invalid drive (" + iDrive + ")") : "unsupported operation")); this.beginResult(HDC.XTC.DATA.STATUS_ERROR | bDrive); @@ -1972,11 +1976,11 @@ HDC.prototype.doXTCommand = function() /** * popCmd() - * + * * @this {HDC} * @return {number} */ -HDC.prototype.popCmd = function() +HDC.prototype.popCmd = function() { var bCmd = -1; var bCmdIndex = this.regDataIndex; @@ -1991,14 +1995,14 @@ HDC.prototype.popCmd = function() /** * beginResult(bResult) - * + * * @this {HDC} * @param {number} [bResult] */ HDC.prototype.beginResult = function(bResult) { this.regDataIndex = this.regDataTotal = 0; - + if (bResult !== undefined) { if (DEBUG) this.messageDebugger("HDC.beginResult(0x" + str.toHexByte(bResult) + ")"); this.pushResult(bResult); @@ -2014,7 +2018,7 @@ HDC.prototype.beginResult = function(bResult) /** * pushResult(bResult) - * + * * @this {HDC} * @param {number} bResult */ @@ -2116,7 +2120,7 @@ HDC.prototype.doRead = function(drive, done) if (DEBUG) this.messageDebugger("HDC.doRead(" + drive.wCylinder + ":" + drive.bHead + ":" + drive.bSector + ")"); // if (DEBUG) this.messageDebugger("HDC.doRead(head=" + str.toHexByte(drive.bHead) + ",cyl=" + str.toHexWord(drive.wCylinder) + ",sec=" + str.toHexByte(drive.bSector) + ")"); - + if (drive.disk) { drive.sector = null; if (this.chipset) { @@ -2132,7 +2136,7 @@ HDC.prototype.doRead = function(drive, done) if (!fComplete) { /* * If an incomplete request wasn't triggered by an explicit error, then let's make explicit - * (ie, revert to the default failure code that we originally set above). + * (ie, revert to the default failure code that we originally set above). */ if (drive.errorCode == HDC.XTC.DATA.ERR.NONE) { drive.errorCode = HDC.XTC.DATA.ERR.NOT_READY; @@ -2148,7 +2152,7 @@ HDC.prototype.doRead = function(drive, done) /** * doWrite(drive, done) - * + * * @this {HDC} * @param {Object} drive * @param {function(number)} done (dataStatus is XTC.DATA.STATUS_OK or XTC.DATA.STATUS_ERROR; if error, then drive.errorCode should be set as well) @@ -2160,7 +2164,7 @@ HDC.prototype.doWrite = function(drive, done) if (DEBUG) this.messageDebugger("HDC.doWrite(" + drive.wCylinder + ":" + drive.bHead + ":" + drive.bSector + ")"); // if (DEBUG) this.messageDebugger("HDC.doWrite(head=" + str.toHexByte(drive.bHead) + ",cyl=" + str.toHexWord(drive.wCylinder) + ",sec=" + str.toHexByte(drive.bSector) + ")"); - + if (drive.disk) { drive.sector = null; if (this.chipset) { @@ -2176,7 +2180,7 @@ HDC.prototype.doWrite = function(drive, done) if (!fComplete) { /* * If an incomplete request wasn't triggered by an explicit error, then let's make explicit - * (ie, revert to the default failure code that we originally set above). + * (ie, revert to the default failure code that we originally set above). */ if (drive.errorCode == HDC.XTC.DATA.ERR.NONE) { drive.errorCode = HDC.XTC.DATA.ERR.NOT_READY; @@ -2199,7 +2203,7 @@ HDC.prototype.doWrite = function(drive, done) /** * doWriteToBuffer(drive, done) - * + * * @this {HDC} * @param {Object} drive * @param {function(number)} done (dataStatus is XTC.DATA.STATUS_OK or XTC.DATA.STATUS_ERROR; if error, then drive.errorCode should be set as well) @@ -2207,9 +2211,9 @@ HDC.prototype.doWrite = function(drive, done) HDC.prototype.doWriteToBuffer = function(drive, done) { drive.errorCode = HDC.XTC.DATA.ERR.NOT_READY; - + if (DEBUG) this.messageDebugger("HDC.doWriteToBuffer()"); - + if (!drive.abSector || drive.abSector.length != drive.nBytes) { drive.abSector = new Array(drive.nBytes); } @@ -2227,7 +2231,7 @@ HDC.prototype.doWriteToBuffer = function(drive, done) if (!fComplete) { /* * If an incomplete request wasn't triggered by an explicit error, then let's make explicit - * (ie, revert to the default failure code that we originally set above). + * (ie, revert to the default failure code that we originally set above). */ if (drive.errorCode == HDC.XTC.DATA.ERR.NONE) { drive.errorCode = HDC.XTC.DATA.ERR.NOT_READY; @@ -2251,7 +2255,7 @@ HDC.prototype.doWriteToBuffer = function(drive, done) * drive.bFiller (fill byte) * * and we expect the DMA controller to provide C, H, R and N (ie, 4 bytes) for each sector to be formatted. - * + * * @this {HDC} * @param {Object} drive * @param {function(number)} done (dataStatus is XTC.DATA.STATUS_OK or XTC.DATA.STATUS_ERROR; if error, then drive.errorCode should be set as well) @@ -2259,9 +2263,9 @@ HDC.prototype.doWriteToBuffer = function(drive, done) HDC.prototype.doFormat = function(drive, done) { drive.errorCode = HDC.XTC.DATA.ERR.NOT_READY; - + // if (DEBUG) this.messageDebugger("HDC.doFormat()"); - + if (drive.disk) { drive.sector = null; if (this.chipset) { @@ -2281,7 +2285,7 @@ HDC.prototype.doFormat = function(drive, done) if (!fComplete) { /* * If an incomplete request wasn't triggered by an explicit error, then let's make explicit - * (ie, revert to the default failure code that we originally set above). + * (ie, revert to the default failure code that we originally set above). */ if (drive.errorCode == HDC.XTC.DATA.ERR.NONE) { drive.errorCode = HDC.XTC.DATA.ERR.NOT_READY; @@ -2322,14 +2326,14 @@ HDC.prototype.doFormat = function(drive, done) HDC.prototype.readByte = function(drive, done, fAutoInc) { var b = -1; - + if (drive.errorCode) { if (done) done(b, false); return b; } - + var inc = (fAutoInc !== false? 1 : 0); - + if (drive.sector) { b = drive.disk.read(drive.sector, drive.ibSector); drive.ibSector += inc; @@ -2338,7 +2342,7 @@ HDC.prototype.readByte = function(drive, done, fAutoInc) return b; } } - + /* * Locate the next sector, and then try reading again. * @@ -2366,7 +2370,7 @@ HDC.prototype.readByte = function(drive, done, fAutoInc) } done(b, fAsync); }); - } + } return b; }; @@ -2431,24 +2435,25 @@ HDC.prototype.writeByte = function(drive, b) * This increments the sector number; when the sector number reaches drive.nSectors on the current track, we * increment drive.bHead and reset drive.bSector, and when drive.bHead reaches drive.nHeads, we reset drive.bHead * and increment drive.wCylinder. - * + * * One wrinkle is that the ATC uses 1-based sector numbers (bSectorBias is 0), whereas the XTC uses 0-based sector * numbers (bSectorBias is 1). Thus, the correct "reset" value for bSector is (1 - bSectorBias), and the correct * limit for bSector is (nSectors + bSectorStart). - * + * + * @this {HDC} * @param {Object} drive */ HDC.prototype.advanceSector = function(drive) { + Component.assert(drive.wCylinder < drive.nCylinders); drive.bSector++; var bSectorStart = (1 - drive.bSectorBias); if (drive.bSector >= drive.nSectors + bSectorStart) { drive.bSector = bSectorStart; - drive.bHeads++; - if (drive.bHeads >= drive.nHeads) { - drive.bHeads = 0; + drive.bHead++; + if (drive.bHead >= drive.nHeads) { + drive.bHead = 0; drive.wCylinder++; - Component.assert(drive.wCylinder < drive.nCylinders); } } }; @@ -2461,7 +2466,7 @@ HDC.prototype.advanceSector = function(drive) * * TODO: Support for HDC.XTC.DATA.CMD.READ_BUFFER is missing, and support for HDC.XTC.DATA.CMD.WRITE_BUFFER may not be complete; * tests required. - * + * * @this {HDC} * @param {Object} drive * @param {number} b containing next byte to write @@ -2473,7 +2478,7 @@ HDC.prototype.writeBuffer = function(drive, b) drive.abSector[drive.ibSector++] = b; } else { /* - * TODO: Determine the proper error code to return here. + * TODO: Determine the proper error code to return here. */ drive.errorCode = HDC.XTC.DATA.ERR.NO_SECTOR; b = -1; @@ -2483,7 +2488,7 @@ HDC.prototype.writeBuffer = function(drive, b) /** * writeFormat(drive, b) - * + * * @this {HDC} * @param {Object} drive * @param {number} b containing a format command byte @@ -2503,7 +2508,7 @@ HDC.prototype.writeFormat = function(drive, b) if (DEBUG) this.messageDebugger("HDC.writeFormat(" + drive.wCylinder + ":" + drive.bHead + ":" + drive.bSector + ":" + drive.nBytes + ")"); // if (DEBUG) this.messageDebugger("HDC.writeFormat(head=" + str.toHexByte(drive.bHead) + ",cyl=" + str.toHexWord(drive.wCylinder) + ",sec=" + str.toHexByte(drive.bSector) + ",len=" + str.toHexWord(drive.nBytes) + ")"); - + for (var i = 0; i < drive.nBytes; i++) { if (this.writeByte(drive, drive.bFiller) < 0) { return -1; @@ -2609,7 +2614,7 @@ HDC.prototype.intBIOSDiskette = function(addr) * messageDebugger(sMessage) * * This is a combination of the Debugger's messageEnabled(MESSAGE_HDC) and message() functions, for convenience. - * + * * @this {HDC} * @param {string} sMessage is any caller-defined message string */ @@ -2626,7 +2631,7 @@ HDC.prototype.messageDebugger = function(sMessage) * messagePort(port, bOut, addrFrom, name, bIn) * * This is an internal version of the Debugger's messagePort() function, for convenience. - * + * * @this {HDC} * @param {number} port * @param {number|null} bOut if an output operation diff --git a/my_modules/pcjs-client/lib/mem.js b/my_modules/pcjs-client/lib/mem.js index 7a3722835..7f2248131 100644 --- a/my_modules/pcjs-client/lib/mem.js +++ b/my_modules/pcjs-client/lib/mem.js @@ -74,8 +74,8 @@ if (typeof module !== 'undefined') { * supported in theory, but in practice, they're not. * * NOTE: Since Memory blocks are low-level objects that have no UI requirements, they do not - * inherit from the Component class; so, if you want to use print(), for example, you must - * rely on class methods like Component.println() rather than object methods like this.println(). + * inherit from the Component class; so, if you want to use println(), for example, you must + * use the methods in the Debugger class. * * Because Memory blocks now allow us to have a "sparse" address space, we could choose to * take the memory hit of allocating 4K arrays per block, where each element stores only one byte, @@ -160,10 +160,6 @@ Memory.prototype = { * @return {number} */ readNone: function(off) { - /* - * This can happen so frequently that the browser can't come up for air, so it's best to do this only under special circumstances... - */ - // if (DEBUG) Component.println("readNone(" + str.toHexWord(this.addr + off) + ")"); return 0; }, /** @@ -174,10 +170,6 @@ Memory.prototype = { * @param {number} v (could be either a byte or word value, since we use the same handler for both kinds of accesses) */ writeNone: function(off, v) { - /* - * This can happen so frequently that the browser can't come up for air, so it's best to do this only under special circumstances... - */ - // if (DEBUG) Component.println("writeNone(" + str.toHexWord(this.addr + off) + "): " + str.toHexWord(v)); }, /** * readByteTArray(off) @@ -537,13 +529,13 @@ Memory.prototype = { if (this.cReadBreakpoints++ === 0) { this.setReadAccess(Memory.afnVerify); } - if (DEBUG) Component.println("read breakpoint added to memory block " + str.toHex(this.addr)); + if (DEBUG) this.dbg.println("read breakpoint added to memory block " + str.toHex(this.addr)); } else { if (this.cWriteBreakpoints++ === 0) { this.setWriteAccess(Memory.afnVerify); } - if (DEBUG) Component.println("write breakpoint added to memory block " + str.toHex(this.addr)); + if (DEBUG) this.dbg.println("write breakpoint added to memory block " + str.toHex(this.addr)); } } }, @@ -559,14 +551,14 @@ Memory.prototype = { if (!fWrite) { if (--this.cReadBreakpoints === 0) { this.resetReadAccess(); - if (DEBUG) Component.println("all read breakpoints removed from memory block " + str.toHex(this.addr)); + if (DEBUG) this.dbg.println("all read breakpoints removed from memory block " + str.toHex(this.addr)); } Component.assert(this.cReadBreakpoints >= 0); } else { if (--this.cWriteBreakpoints === 0) { this.resetWriteAccess(); - if (DEBUG) Component.println("all write breakpoints removed from memory block " + str.toHex(this.addr)); + if (DEBUG) this.dbg.println("all write breakpoints removed from memory block " + str.toHex(this.addr)); } Component.assert(this.cWriteBreakpoints >= 0); } diff --git a/my_modules/pcjs-client/lib/mouse.js b/my_modules/pcjs-client/lib/mouse.js index a490ae623..3dac0db5c 100644 --- a/my_modules/pcjs-client/lib/mouse.js +++ b/my_modules/pcjs-client/lib/mouse.js @@ -228,7 +228,7 @@ Mouse.prototype.powerUp = function(data, fRepower) { var componentScreen = this.cmp.getComponentByType("Video"); if (componentScreen) this.canvasScreen = componentScreen.getCanvas(); } else { - this.warning(this.id + ": " + this.sAdapterType + " " + this.idAdapter + " unavailable"); + Component.warning(this.id + ": " + this.sAdapterType + " " + this.idAdapter + " unavailable"); } } if (this.fActive) { diff --git a/my_modules/pcjs-client/lib/panel.js b/my_modules/pcjs-client/lib/panel.js index 6eda0204e..6297eb620 100644 --- a/my_modules/pcjs-client/lib/panel.js +++ b/my_modules/pcjs-client/lib/panel.js @@ -67,7 +67,8 @@ Component.subclass(Component, Panel); * @param {Object} control is the HTML control DOM object (eg, HTMLButtonElement) * @return {boolean} true if binding was successful, false if unrecognized binding request */ -Panel.prototype.setBinding = function(sHTMLClass, sHTMLType, sBinding, control) { +Panel.prototype.setBinding = function(sHTMLClass, sHTMLType, sBinding, control) +{ if (this.cmp && this.cmp.setBinding(sHTMLClass, sHTMLType, sBinding, control)) return true; if (this.cpu && this.cpu.setBinding(sHTMLClass, sHTMLType, sBinding, control)) return true; if (this.kbd && this.kbd.setBinding(sHTMLClass, sHTMLType, sBinding, control)) return true; @@ -84,7 +85,8 @@ Panel.prototype.setBinding = function(sHTMLClass, sHTMLType, sBinding, control) * @param {X86CPU} cpu * @param {Debugger} dbg */ -Panel.prototype.initBus = function(cmp, bus, cpu, dbg) { +Panel.prototype.initBus = function(cmp, bus, cpu, dbg) +{ this.cmp = cmp; this.cpu = cpu; this.dbg = dbg; @@ -99,7 +101,8 @@ Panel.prototype.initBus = function(cmp, bus, cpu, dbg) { * @param {boolean} [fRepower] * @return {boolean} true if successful, false if failure */ -Panel.prototype.powerUp = function(data, fRepower) { +Panel.prototype.powerUp = function(data, fRepower) +{ if (!fRepower) { Panel.init(); } @@ -113,7 +116,8 @@ Panel.prototype.powerUp = function(data, fRepower) { * @param {boolean} fSave * @return {Object|boolean} */ -Panel.prototype.powerDown = function(fSave) { +Panel.prototype.powerDown = function(fSave) +{ return true; }; diff --git a/my_modules/pcjs-client/lib/ram.js b/my_modules/pcjs-client/lib/ram.js index 2df0a0722..785a7b27c 100644 --- a/my_modules/pcjs-client/lib/ram.js +++ b/my_modules/pcjs-client/lib/ram.js @@ -182,7 +182,7 @@ RAM.prototype.reset = function() { } if (this.chipset) this.chipset.addCMOSMemory(this.addrRAM, this.sizeRAM); } else { - this.error("No RAM allocated"); + Component.error("No RAM allocated"); } }; diff --git a/my_modules/pcjs-client/lib/rom.js b/my_modules/pcjs-client/lib/rom.js index d16a5375f..1717bdfc1 100644 --- a/my_modules/pcjs-client/lib/rom.js +++ b/my_modules/pcjs-client/lib/rom.js @@ -221,11 +221,11 @@ ROM.prototype.onLoadROM = function(sROMFile, sROMData, nErrorCode) this.aSymbols = rom['symbols']; if (!this.abROM.length) { - this.error("Empty ROM: " + sROMFile); + Component.error("Empty ROM: " + sROMFile); return; } else if (this.abROM.length == 1) { - this.error(this.abROM[0]); + Component.error(this.abROM[0]); return; } } catch (e) { diff --git a/my_modules/pcjs-client/lib/video.js b/my_modules/pcjs-client/lib/video.js index 6e54f536a..8573bcb21 100644 --- a/my_modules/pcjs-client/lib/video.js +++ b/my_modules/pcjs-client/lib/video.js @@ -2478,11 +2478,11 @@ Video.prototype.onLoadSetFonts = function(sFontFile, sFontData, nErrorCode) var abFontData = eval("(" + sFontData + ")"); if (!abFontData.length) { - this.error("Empty font ROM image: " + sFontFile); + Component.error("Empty font ROM image: " + sFontFile); return; } else if (abFontData.length == 1) { - this.error(abFontData[0]); + Component.error(abFontData[0]); return; } /* diff --git a/my_modules/pcjs-client/lib/x86.js b/my_modules/pcjs-client/lib/x86.js index 313f26913..f39a69160 100644 --- a/my_modules/pcjs-client/lib/x86.js +++ b/my_modules/pcjs-client/lib/x86.js @@ -37,15 +37,15 @@ var X86 = { /* * CPU model numbers */ - MODEL_8086: 8086, - MODEL_8088: 8088, - MODEL_80186: 80186, - MODEL_80188: 80188, - MODEL_80286: 80286, + MODEL_8086: 8086, + MODEL_8088: 8088, + MODEL_80186: 80186, + MODEL_80188: 80188, + MODEL_80286: 80286, /* * Processor Status flag definitions (stored in regPS) */ - PS: { + PS: { CF: 0x0001, // bit 0: Carry flag BIT1: 0x0002, // bit 1: reserved, always set PF: 0x0004, // bit 2: Parity flag @@ -124,23 +124,23 @@ var X86 = { }, /* * Processor Exception Interrupts - * + * * Of the following exceptions, all are designed to be restartable, except for 0x08 and 0x09 (and 0x0D * after an attempt to write to a read-only segment). - * + * * Error codes are pushed onto the stack for 0x08 (always 0) and 0x0A through 0x0D. - * + * * Priority: Instruction exception, TRAP, NMI, Processor Extension Segment Overrun, and finally INTR. - * + * * All exceptions can also occur in real-mode, except where noted. A GP_FAULT in real-mode can be triggered * by "any memory reference instruction that attempts to reference [a] 16-bit word at offset 0FFFFH". * * Interrupts beyond 0x10 (up through 0x1F) are reserved for future exceptions. - * + * * Implementation Detail: For any opcode we know must generate a UD_FAULT interrupt, we invoke opInvalid(). * We reserve the term "undefined" for opcodes that require further investigation, and we invoke opUndefined() * in those cases until an opcode's behavior has been defined; at that point, it's either valid or invalid. - * + * * As for "illegal", that's a silly (and redundant) term in this context, so we don't use it. Similarly, * the term "undocumented" should be limited to operations that are valid but that Intel did not document. */ @@ -195,7 +195,7 @@ var X86 = { /* * Bit values for opFlags, which are all reset to zero prior to each instruction */ - OPFLAG: { + OPFLAG: { NOREAD: 0x0001, NOWRITE: 0x0002, NOINTR: 0x0004, // indicates a segreg has been set, or a prefix, or an STI (delay INTR acknowledgement) @@ -221,9 +221,9 @@ var X86 = { */ OPCODE: { ES: 0x26, // opES() - CS: 0x2E, // opCS() - SS: 0x36, // opSS() - DS: 0x3E, // opDS() + CS: 0x2E, // opCS() + SS: 0x36, // opSS() + DS: 0x3E, // opDS() PUSHSP: 0x54, PUSHA: 0x60, POPA: 0x61, @@ -239,31 +239,31 @@ var X86 = { OUTSW: 0x6F, ENTER: 0xC8, LEAVE: 0xC9, - CALLF: 0x9A, // opCALLf() - MOVSB: 0xA4, // opMOVSb() - MOVSW: 0xA5, // opMOVSw() - CMPSB: 0xA6, - CMPSW: 0xA7, - STOSB: 0xAA, - STOSW: 0xAB, - LODSB: 0xAC, - LODSW: 0xAD, - SCASB: 0xAE, - SCASW: 0xAF, - INT3: 0xCC, - INTn: 0xCD, - INTO: 0xCE, + CALLF: 0x9A, // opCALLf() + MOVSB: 0xA4, // opMOVSb() + MOVSW: 0xA5, // opMOVSw() + CMPSB: 0xA6, + CMPSW: 0xA7, + STOSB: 0xAA, + STOSW: 0xAB, + LODSB: 0xAC, + LODSW: 0xAD, + SCASB: 0xAE, + SCASW: 0xAF, + INT3: 0xCC, + INTn: 0xCD, + INTO: 0xCE, LOOPNZ: 0xE0, LOOPZ: 0xE1, LOOP: 0xE2, - CALL: 0xE8, + CALL: 0xE8, JMP: 0xE9, // JMP opcode (2-byte displacement) JMPS: 0xEB, // JMP opcode (1-byte displacement) - LOCK: 0xF0, - REPNZ: 0xF2, - REPZ: 0xF3, - CALLW: 0x10FF, - CALLDW: 0x18FF, + LOCK: 0xF0, + REPNZ: 0xF2, + REPZ: 0xF3, + CALLW: 0x10FF, + CALLDW: 0x18FF, UD2: 0x0B0F // UD2 (invalid opcode guaranteed to generate UD_FAULT on all post-8086 processors) } }; @@ -288,9 +288,9 @@ X86.PS.SET = (X86.PS.BIT1 | X86.PS.IOPL | X86.PS.NT | X86.PS.BIT15); /* * getPS() brings all the direct and indirect flags together, and setPS() performs the * reverse, setting all the corresponding "result registers" to match the indirect flags. - * + * * These "result registers" are created/reset by an initial call to setPS(0); they include: - * + * * this.resultSize (must be set to one of: SIZE_BYTE or SIZE_WORD) * this.resultValue * this.resultParitySign diff --git a/my_modules/pcjs-client/lib/x86cpu.js b/my_modules/pcjs-client/lib/x86cpu.js index 914c8f6b1..5fc4ea5a3 100644 --- a/my_modules/pcjs-client/lib/x86cpu.js +++ b/my_modules/pcjs-client/lib/x86cpu.js @@ -122,21 +122,20 @@ function X86CPU(parmsCPU) { * "INT 0x00" generated by a divide-by-zero or any other kind of interrupt (nor any interrupt simulated * with "PUSHF/CALLF"). * - * aInterruptReturn is a stack of return address notifications set up by software interrupt notification + * aInterruptReturn is a hash of return address notifications set up by software interrupt notification * functions that want to receive return notifications. A software interrupt function must call * cpu.addInterruptReturn(fn). * - * WARNING: There's no specific mechanism in place to insure that software interrupt return notifications - * don't get "orphaned" and stack up if an interrupt handler bypasses the normal return path (INT 0x24 is - * one example of an "evil" software interrupt). So use this feature sparingly, avoid "evil" software - * interrupts, and/or add a mechanism to detect and clean up orphans. + * WARNING: There's no mechanism in place to insure that software interrupt return notifications don't + * get "orphaned" if an interrupt handler bypasses the normal return path (INT 0x24 is one example of an + * "evil" software interrupt). */ this.aInterruptNotify = []; this.aInterruptReturn = []; /* * Since aReturnNotify is a "sparse array", this global count gives the CPU a quick way of knowing whether - * or not RETF or IRET instructions need to bother checking the array. + * or not RETF or IRET instructions need to bother calling checkInterruptReturn(). */ this.cInterruptReturn = 0; @@ -931,27 +930,27 @@ X86CPU.prototype.checkInterruptNotify = function(nInt) X86CPU.prototype.addInterruptReturn = function(addr, fn) { if (fn !== undefined) { - if (this.aInterruptReturn[addr] === undefined) - this.aInterruptReturn[addr] = []; - this.aInterruptReturn[addr].push(fn); - this.cInterruptReturn++; + if (this.aInterruptReturn[addr] == null) { + this.cInterruptReturn++; + } + this.aInterruptReturn[addr] = fn; } }; /** * checkInterruptReturn(addr) * + * It is expected (though not required) that callers will check cInterruptReturn and avoid calling + * this function if the count is zero. + * * @this {X86CPU} * @param {number} addr is a physical (non-segmented) address */ X86CPU.prototype.checkInterruptReturn = function(addr) { - var aNotify = this.aInterruptReturn[addr]; - if (aNotify !== undefined) { - while (aNotify.length > 0) { - var fn = aNotify.pop(); - fn(--this.cInterruptReturn); - } + var fn = this.aInterruptReturn[addr]; + if (fn != null) { + fn(--this.cInterruptReturn); delete this.aInterruptReturn[addr]; } }; diff --git a/my_modules/pcjs-client/lib/x86opxx.js b/my_modules/pcjs-client/lib/x86opxx.js index 6202e33c9..6def231f3 100644 --- a/my_modules/pcjs-client/lib/x86opxx.js +++ b/my_modules/pcjs-client/lib/x86opxx.js @@ -2329,8 +2329,8 @@ var X86OpXX = { } if (nReps--) { /* - * NOTE: Storing a word imposes another 4-cycle penalty on the 8088, so consider that if you think the - * cycle times here are too high. + * NOTE: Storing a word imposes another 4-cycle penalty on the 8088, so consider that + * if you think the cycle times here are too high. */ this.setSOWord(this.segES, this.regDI, this.regAX); this.regDI = (this.regDI + ((this.regPS & X86.PS.DF)? -2 : 2)) & 0xffff; diff --git a/my_modules/pcjs-client/lib/x86seg.js b/my_modules/pcjs-client/lib/x86seg.js index 01ebf655a..145cac651 100644 --- a/my_modules/pcjs-client/lib/x86seg.js +++ b/my_modules/pcjs-client/lib/x86seg.js @@ -118,8 +118,8 @@ X86Seg.loadProt = function loadProt(sel, fSuppress) /* * TODO: This is only the first of many steps toward accurately counting cycles in protected mode; - * I simply noticed that "POP segreg" takes 5 cycles in real mode and 20 in protected mode, so I'm - * starting with a 15-cycle penalty. Obviously the penalty will be much greater when the load fails. + * I simply noted that "POP segreg" takes 5 cycles in real mode and 20 in protected mode, so I'm + * starting with a 15-cycle difference. Obviously the difference will be much greater when the load fails. */ this.cpu.nStepCycles -= 15; diff --git a/my_modules/shared/lib/README.md b/my_modules/shared/lib/README.md index 549169489..98c585b3e 100644 --- a/my_modules/shared/lib/README.md +++ b/my_modules/shared/lib/README.md @@ -14,7 +14,7 @@ global *Buffer* object, as indicated by: /* global Buffer: false */ And [weblib.js](weblib.js) is appropriate only for client modules, because it contains code that relies on the -brower's global *window* object, as indicated by: +browser's global *window* object, as indicated by: /* global window: true */ @@ -25,4 +25,4 @@ when running within Node, allowing any other code to test the existence of *wind instead of: - if (typeof window !== 'undefined') {...} + if (typeof window !== "undefined") {...} diff --git a/my_modules/shared/lib/component.js b/my_modules/shared/lib/component.js index 379208e2e..38746bfba 100644 --- a/my_modules/shared/lib/component.js +++ b/my_modules/shared/lib/component.js @@ -114,6 +114,7 @@ function Component(type, parms, constructor) * if (this.initStep) this.initStep(parms); */ + this.fnReady = null; this.fReady = false; this.fBusy = this.fBusyCancel = false; @@ -244,12 +245,14 @@ Component.add = function(component) Component.log = function(s, type) { if (DEBUG) { - var msElapsed, sMsg = (type? (type + ": ") : "") + (s || ""); - if (Component.msStart === undefined) { - Component.msStart = usr.getTime(); + if (s) { + var msElapsed, sMsg = (type? (type + ": ") : "") + s; + if (Component.msStart === undefined) { + Component.msStart = usr.getTime(); + } + msElapsed = usr.getTime() - Component.msStart; + console.log(msElapsed + "ms: " + sMsg.replace(/\n/g, " ")); } - msElapsed = usr.getTime() - Component.msStart; - console.log(sMsg? (msElapsed + "ms: " + sMsg.replace(/\n/g, " ")) : ""); } }; @@ -266,13 +269,10 @@ Component.assert = function(f, s) { if (DEBUG) { if (!f) { - if (!s) { - /* - * TODO: An accompanying source file/line number/function call would be nice, if there was a browser-independent way.... - */ - s = "assertion failure"; - } - Component.log(s); + /* + * TODO: An accompanying source file/line number/function call would be nice, if there was a browser-independent way.... + */ + Component.log(s || "assertion failure"); throw new Error(s); } } @@ -363,7 +363,7 @@ Component.getComponents = function(idRelated) if ((i = idRelated.indexOf('.')) > 0) idRelated = idRelated.substr(0, i + 1); else - idRelated = undefined; + idRelated = ""; } for (i = 0; i < Component.all.length; i++) { var component = Component.all[i]; @@ -427,7 +427,7 @@ Component.getComponentByType = function(sType, idRelated, componentPrev) if ((i = idRelated.indexOf('.')) > 0) { idRelated = idRelated.substr(0, i + 1); } else { - idRelated = undefined; + idRelated = ""; } } for (i = 0; i < Component.all.length; i++) { @@ -605,10 +605,7 @@ Component.prototype = { /** * setBinding(sHTMLClass, sHTMLType, sBinding, control) * - * Component's setBinding() method is intended to be overridden by subclasses. The only - * exception is the Panel component, which passes two special bindings ("clear" and "print") - * back to us if no one else accepted them, so that we can redirect all println() requests - * to those controls. + * Component's setBinding() method is intended to be overridden by subclasses. * * @this {Component} * @param {string|null} sHTMLClass is the class of the HTML control (eg, "input", "output") @@ -619,67 +616,63 @@ Component.prototype = { */ setBinding: function(sHTMLClass, sHTMLType, sBinding, control) { switch (sBinding) { - case "clear": - if (!this.bindings[sBinding]) { - this.bindings[sBinding] = control; - control.onclick = (function(component) { - return function() { - if (component.bindings['print']) { - component.bindings['print'].value = ""; - } - }; - }(this)); - } - return true; - case "print": - if (!this.bindings[sBinding]) { - this.bindings[sBinding] = control; - control.value = ""; // this was added for Firefox (Safari automatically clears the <textarea> on a page reload, but Firefox does not) - /* - * TODO: Get rid of these Component method overrides, because they're going to cause issues - * if the day ever comes (and it WILL) that we want multiple machines on a single page with their - * own Control Panels. - */ - Component.println = (function(control) { - return function printControl(s, type) { - s = (type !== undefined? (type + ": ") : "") + (s || ""); - if (!DEBUG) { // in non-DEBUG builds, prevent the <textarea> from getting too large, otherwise printing becomes slower and slower - if (control.value.length > 8192) { - control.value = control.value.substr(control.value.length - 4096); - } - } - control.value += s + "\n"; - control.scrollTop = control.scrollHeight; - if (DEBUG) console.log(s); - }; - }(control)); - /* - * Override Component.notice() with a replacement function that eliminates the web.alertUser() call - */ - Component.notice = function(s, fPrintOnly, id) { - Component.println(s, "notice", id); + case "clear": + if (!this.bindings[sBinding]) { + this.bindings[sBinding] = control; + control.onclick = (function(component) { + return function clearPanel() { + if (component.bindings['print']) { + component.bindings['print'].value = ""; + } }; - /* - * HACK: Save this particular HTML element so that the Debugger can access it, too - */ - Component.controlPrint = control; - } - return true; - default: + }(this)); + } + return true; + case "print": + if (!this.bindings[sBinding]) { + this.bindings[sBinding] = control; /* - * Now that we're giving the Panel component multiple shots at binding its controls, - * to relax initialization dependencies, we need to chill when unrecognized requests come in. - * - if (sHTMLClass == "input") { - control.onclick = function() { - Component.println("unsupported " + sHTMLType + ": " + sBinding); - }; - } - this.log("setBinding(\"" + sHTMLClass + "\",\"" + sHTMLType + "\",\"" + sBinding + "\"): unrecognized binding"); + * HACK: Save this particular HTML element so that the Debugger can access it, too */ - break; + this.controlPrint = control; + /* + * This was added for Firefox (Safari automatically clears the <textarea> on a page reload, + * but Firefox does not). + */ + control.value = ""; + this.println = (function(control) { + return function printPanel(s, type) { + s = (type !== undefined? (type + ": ") : "") + (s || ""); + /* + * In non-DEBUG builds, prevent the <textarea> from getting too large; + * otherwise, printing becomes slower and slower. + */ + if (!DEBUG) { + if (control.value.length > 8192) { + control.value = control.value.substr(control.value.length - 4096); + } + } + control.value += s + "\n"; + control.scrollTop = control.scrollHeight; + if (DEBUG) console.log(s); + }; + }(control)); + /** + * Override this.notice() with a replacement function that eliminates the web.alertUser() call + * + * @this {Component} + * @param {string} s + * @param {boolean} [fPrintOnly] + * @param {string} [id] + */ + this.notice = function noticePanel(s, fPrintOnly, id) { + this.println(s, "notice", id); + }; + } + return true; + default: + return false; } - return false; }, /** * log(s, type) @@ -695,7 +688,9 @@ Component.prototype = { * @param {string} [type] is the message type */ log: function(s, type) { - if (DEBUG) Component.log(s, type || this.id || this.type); + if (DEBUG) { + Component.log(s, type || this.id || this.type); + } }, /** * println(s, type) @@ -724,9 +719,9 @@ Component.prototype = { /** * notice(s, fPrintOnly) * - * notice() is like println() but implies a need for user notification, which means calling log() isn't good enough, so we alert() as well; - * however, if Component.println() is overridden, Component.notice will be replaced with the same override, on the assumption that the override - * is taking care of user notification. + * notice() is like println() but implies a need for user notification, which means calling log() isn't good enough, + * so we alert() as well; however, if Component.println() is overridden, Component.notice will be replaced with the + * same override, on the assumption that the override is taking care of alerting the user. * * @this {Component} * @param {string} s is the message text @@ -736,24 +731,6 @@ Component.prototype = { notice: function(s, fPrintOnly, id) { Component.notice(s, fPrintOnly, id || this.id); }, - /** - * warning(s) - * - * @this {Component} - * @param {string} s describes the warning - */ - warning: function(s) { - Component.warning(s); - }, - /** - * error(s) - * - * @this {Component} - * @param {string} s describes the error; an alert() is displayed as well - */ - error: function(s) { - Component.error(s); - }, /** * setError(s) * diff --git a/my_modules/shared/lib/usrlib.js b/my_modules/shared/lib/usrlib.js index a82d867f5..1bc8c49ab 100644 --- a/my_modules/shared/lib/usrlib.js +++ b/my_modules/shared/lib/usrlib.js @@ -67,7 +67,7 @@ usr.binarySearch = function(a, v, fnCompare) { /** * binaryInsert(a, v, fnCompare) - * + * * If element v already exists in array a, the array is unchanged (we don't allow duplicates); otherwise, the * element is inserted into the array at the appropriate index. * @@ -151,7 +151,7 @@ usr.aMonthDays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; * i: minutes, with leading zeros (00,...,59) * j: day of the month, without leading zeros (1,...,31) * l: day of the week ("Sunday",...,"Saturday") - * m: month, with leading zeros (01,...,12) + * m: month, with leading zeros (01,...,12) * s: seconds, with leading zeros (00,...,59) * F: month ("January",...,"December") * H: hour in 24-hour format, with leading zeros (00,...,23) diff --git a/my_modules/shared/lib/weblib.js b/my_modules/shared/lib/weblib.js index 94fbbd7f2..a2f5cb06d 100644 --- a/my_modules/shared/lib/weblib.js +++ b/my_modules/shared/lib/weblib.js @@ -45,7 +45,7 @@ * decodeURI() Decodes a URI * decodeURIComponent() Decodes a URI component * encodeURI() Encodes a URI - * encodeURIComponent() Encodes a URI component + * encodeURIComponent() Encodes a URI component * escape() Deprecated in version 1.5. Use encodeURI() or encodeURIComponent() instead * eval() Evaluates a string and executes it as if it was script code * isFinite() Determines whether a value is a finite, legal number @@ -55,7 +55,7 @@ * parseInt() Parses a string and returns an integer * String() Converts an object's value to a string * unescape() Deprecated in version 1.5. Use decodeURI() or decodeURIComponent() instead - * + * * And according to http://www.w3schools.com/jsref/obj_window.asp, these are the properties and functions * of the *window* object. * @@ -86,7 +86,7 @@ * self Returns the current window * status Sets or returns the text in the statusbar of a window * top Returns the topmost browser window - * + * * Method Description * --- * alert() Displays an alert box with a message and an OK button @@ -122,7 +122,7 @@ * We must defer loading the Component module until the function(s) requiring it are * called; otherwise, we create an initialization cycle in which Component requires weblib * and weblib requires Component. - * + * * In an ideal world, weblib would not be dependent on Component, but we really want to use * its logging functions. */ @@ -155,16 +155,16 @@ var web = {}; */ web.loadResource = function(sURL, fAsync, data, componentNotify, fnNotify, pNotify) { - fAsync = !!fAsync; // ensure that fAsync is a valid boolean (Internet Explorer xmlHTTP functions insist on it) + fAsync = !!fAsync; // ensure that fAsync is a valid boolean (Internet Explorer xmlHTTP functions insist on it) if (typeof module !== 'undefined') { /* * We don't even need to load Component, because we can't use any of the code below * within Node anyway. Instead, we must hand this request off to our network library. - * + * * if (!Component) Component = require("./component"); */ var net = require("./netlib"); - return net.loadResource(sURL, fAsync, data, componentNotify, fnNotify, pNotify); + return net.loadResource(sURL, fAsync, data, componentNotify, fnNotify, pNotify); } var nErrorCode = 0; var sURLData = null; @@ -312,7 +312,7 @@ web.confirmUser = function(sPrompt) /** * promptUser() - * + * * @param {string} sPrompt * @param {string} [sDefault] * @returns {string|null} @@ -330,7 +330,7 @@ web.promptUser = function(sPrompt, sDefault) * getLocalStorageItem(sKey) * * Returns the requested key value, or null if the key does not exist, or undefined if localStorage is not available - * + * * @param {string} sKey * @return {string|null|undefined} sValue */ @@ -345,7 +345,7 @@ web.getLocalStorageItem = function(sKey) /** * setLocalStorageItem(sKey, sValue) - * + * * @param {string} sKey * @param {string} sValue * return {boolean} true if localStorage is available, false if not @@ -427,13 +427,13 @@ web.getURLParameters = function(sParms) * Note that window.location.href returns the entire URL, whereas window.location.search * returns only the parameters, if any (starting with the '?', which we skip over with a substr() call). */ - sParms = window.location.search.substr(1); + sParms = window.location.search.substr(1); } var match; var pl = /\+/g; // RegExp for replacing addition symbol with a space var search = /([^&=]+)=?([^&]*)/g; var decode = function(s) { return decodeURIComponent(s.replace(pl, " ")); }; - + while ((match = search.exec(sParms))) { aParms[decode(match[1])] = decode(match[2]); } @@ -482,7 +482,7 @@ web.onCountRepeat = function(n, fn, fnComplete, msDelay) web.onClickRepeat = function(e, msDelay, msRepeat, fn) { var ms = 0, timer = null, fIgnoreMouseEvents = false; - + var fnRepeat = function doClickRepeat() { if (fn(ms === msRepeat)) { timer = setTimeout(fnRepeat, ms); @@ -628,7 +628,7 @@ web.enablePageEvents = function(fEnable) /** * sendPageEvent(sEvent) - * + * * This allows us to manually trigger page events. * * @param {string} sEvent (one of 'init', 'show' or 'exit') diff --git a/versions/c1pjs/1.15.4/c1p-dbg.js b/versions/c1pjs/1.15.4/c1p-dbg.js index 22301404d..4ea58e682 100644 --- a/versions/c1pjs/1.15.4/c1p-dbg.js +++ b/versions/c1pjs/1.15.4/c1p-dbg.js @@ -1,167 +1,167 @@ -(function(){var f;function aa(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function h(a){return aa(a,2)}function p(a){return aa(a,4)}function ba(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));return b}var ca={"&":"&","<":"<",">":">",'"':""","'":"'"};function da(a){return a.replace(/[&<>"']/g,function(a){return ca[a]})}function r(){return Date.now()||+new Date} -function s(a,b,c,d,e){b=!!b;var g=0,k=null,n=ba(a),m=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(m.onreadystatechange=function(){4===m.readyState&&(m.onreadystatechange=void 0,k=m.responseText,200!=m.status&&(g=m.status||-1),d&&e&&e.call(d,n,k,g,void 0))});if(c){var l="",q;for(q in c)c.hasOwnProperty(q)&&(l&&(l+="&"),l+=q+"="+encodeURIComponent(c[q]));l=l.replace(/%20/g,"+");m.open("POST",a,b);m.setRequestHeader("Content-type","application/x-www-form-urlencoded"); -m.send(l)}else m.open("GET",a,b),m.send();a=[];b||(k=m.responseText,200!=m.status&&(g=m.status||-1),d&&e&&e.call(d,n,k,g,void 0),a=[g,k]);return a}function u(a){window?window.alert(a):console.log(a)}function v(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function ea(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()} +(function(){var f;function aa(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function n(a){return aa(a,2)}function q(a){return aa(a,4)}function ba(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));return b}var ca={"&":"&","<":"<",">":">",'"':""","'":"'"};function da(a){return a.replace(/[&<>"']/g,function(a){return ca[a]})}function r(){return Date.now()||+new Date} +function t(a,b,c,d,e){b=!!b;var g=0,h=null,m=ba(a),l=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(l.onreadystatechange=function(){4===l.readyState&&(l.onreadystatechange=void 0,h=l.responseText,200!=l.status&&(g=l.status||-1),d&&e&&e.call(d,m,h,g,void 0))});if(c){var k="",p;for(p in c)c.hasOwnProperty(p)&&(k&&(k+="&"),k+=p+"="+encodeURIComponent(c[p]));k=k.replace(/%20/g,"+");l.open("POST",a,b);l.setRequestHeader("Content-type","application/x-www-form-urlencoded"); +l.send(k)}else l.open("GET",a,b),l.send();a=[];b||(h=l.responseText,200!=l.status&&(g=l.status||-1),d&&e&&e.call(d,m,h,g,void 0),a=[g,h]);return a}function u(a){window?window.alert(a):console.log(a)}function v(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function ea(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()} function fa(a,b){function c(){b(100===d)&&(e=setTimeout(c,d),d=100)}var d=0,e=null,g=!1;a.onmousedown=function(){g||e||(d=500,c())};a.ontouchstart=function(){e||(d=500,c())};a.onmouseup=a.onmouseout=function(){e&&(clearTimeout(e),e=null)};a.ontouchend=a.ontouchcancel=function(){e&&(clearTimeout(e),e=null);g=!0}}var w={init:[],show:[],exit:[]},ga=!0;function ha(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function x(a){w.init.push(a)} function y(a){if(ga)for(var b=0;b<a.length;b++)a[b]()}ha("onload",function(){y(w.init)});ha("onpageshow",function(){y(w.show)});ha(v("Opera")||v("iOS")?"onunload":"onbeforeunload",function(){y(w.exit)}); -function z(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Dd=this.id.substr(0,b),this.Cd=this.id.substr(b+1)):this.Cd=this.id;this[a]=c;this.tc=null;this.ib=this.Ra=this.rc=this.Sb=!1;this.q={};this.l=null;ia(this);A[A.length]=this}var ja=void 0;if(window){ja||(ja=window.location.search.substr(1));for(var ka,la=/\+/g,ma=/([^&=]+)=?([^&]*)/g;ka=ma.exec(ja);)ka[1].replace(la," "),ka[2].replace(la," ")} -function na(){var a=z.prototype;function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function B(a){a.prototype=na()}var A=[];function oa(){}function pa(a,b){b||u(a)}function C(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<A.length;c++)if(A[c].id===a)return A[c]}return null} +function z(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Gd=this.id.substr(0,b),this.Fd=this.id.substr(b+1)):this.Fd=this.id;this[a]=c;this.wc=null;this.jb=this.Sa=this.uc=this.Tb=!1;this.r={};this.m=null;ia(this);A[A.length]=this}var ja=void 0;if(window){ja||(ja=window.location.search.substr(1));for(var ka,la=/\+/g,ma=/([^&=]+)=?([^&]*)/g;ka=ma.exec(ja);)ka[1].replace(la," "),ka[2].replace(la," ")} +function na(){var a=z.prototype;function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function B(a){a.prototype=na()}var A=[];function C(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<A.length;c++)if(A[c].id===a)return A[c]}return null} function D(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){u(c.message+" ("+a+")")}return b} -function E(a,b){var c,d;d=F(b.parentNode,"c1pjs-control");for(c=0;c<d.length;c++){var e,g;g=d[c].childNodes;for(e=0;e<g.length;e++){var k=g[e];if(k.nodeType===window.document.ELEMENT_NODE){var n=k.getAttribute("class");if(n){var m,l;l=n.split(" ");for(m=0;m<l.length;m++)switch(n=l[m],n){case "c1pjs-input":case "c1pjs-output":(l=D(k))&&l.binding&&a.H(n,l.type,l.binding,k),l=[]}}}}}} +function E(a,b){var c,d;d=F(b.parentNode,"c1pjs-control");for(c=0;c<d.length;c++){var e,g;g=d[c].childNodes;for(e=0;e<g.length;e++){var h=g[e];if(h.nodeType===window.document.ELEMENT_NODE){var m=h.getAttribute("class");if(m){var l,k;k=m.split(" ");for(l=0;l<k.length;l++)switch(m=k[l],m){case "c1pjs-input":case "c1pjs-output":(k=D(h))&&k.binding&&a.I(m,k.type,k.binding,h),k=[]}}}}}} function F(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c} -z.prototype={toString:function(){return this.name?this.name:this.id||this.type},H:function(a,b,c,d){switch(c){case "clear":return this.q[c]||(this.q[c]=d,d.onclick=function(a){return function(){a.q.print&&(a.q.print.value="")}}(this)),!0;case "print":return this.q[c]||(this.q[c]=d,d.value="",oa=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),pa=function(a,b,c){oa(a,"notice", -c)}),!0}return!1},log:function(){},status:function(a){G(this,this.Cd+": "+a)},O:function(a){!this.ib&&(this.Sb=!1!==a)&&(this.name&&this.log("ready"),a=this.tc,this.tc=null,a&&a())}};function H(a,b){if(a.rc)return a.Ra&&(a.Ra=!1),a.rc=!1;if(a.ib)return G(a,a.toString()+" error"),!1;a.Ra=b;return a.Ra}function I(a,b){a.Ra&&(b?a.rc=!0:void 0===b&&G(a,a.toString()+" busy"));return a.Ra}function J(a,b){b&&(a.Sb?b():a.tc=b);return a.Sb}function K(a,b){a.ib=!0;pa("Fatal error: "+b,void 0,a.id)} -function G(a,b){oa(b,void 0,a.id)}function ia(a){var b=1;a.Dd&&(a=a.Dd.match(/\d+/),null!==a&&(b=parseInt(a[0],10)));return b}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);function qa(a){z.call(this,"C1PPanel",a);this.B=!1}B(qa);qa.prototype.H=function(a,b,c,d){return this.M&&this.M.H(a,b,c,d)||this.k&&this.k.H(a,b,c,d)||this.F&&this.F.H(a,b,c,d)||this.l&&this.l.H(a,b,c,d)?!0:z.prototype.H.call(this,a,b,c,d)}; -qa.prototype.aa=function(a,b){a&&!this.B&&(this.B=!0,this.M=b,this.k=L(b,"cpu"),this.F=L(b,"keyboard"),this.l=L(b,"debugger"),ra())};function ra(){for(var a=!1,b=F(window.document,"c1pjs","panel"),c=0;c<b.length;c++){var d=b[c],e=D(d),g=C(e.id);g||(a=!0,g=new qa(e));E(g,d);a&&g.O()}}x(ra); -function sa(a){z.call(this,"C1PCPU",a);ta(this);this.fa=this.B=!1;this.zd=a.autoStart;this.Gb=0;this.nd=1;this.La=2;this.speed=this.Gb;this.ob=1E6;this.zc=this.Bc=30;this.yc=5;this.Nf=1;this.lb=8;this.td=["Slow","Fast","Max"];this.Af=["("+this.Nf+"Mhz)","(up to "+this.lb+"Mhz)","(unlimited)"];this.Ba=[];this.ra=[];this.lc=65536;this.mc=0;this.Kb=65536;this.Lb=0;this.ne=128;this.oe=64;this.je=16;this.le=8;this.me=4;this.pe=2;this.ke=1;this.wf=65532;this.Fb=32;this.ec=2;this.tf=0;this.md=1;this.s=[this.Ag, -this.Uh,this.Li,this.i,this.i,this.Wh,this.qg,this.i,this.Zh,this.Th,this.pg,this.i,this.i,this.Qh,this.ng,this.i,this.zg,this.Vh,this.i,this.i,this.i,this.Xh,this.rg,this.i,this.Dg,this.Sh,this.i,this.i,this.i,this.Rh,this.og,this.i,this.rh,this.jg,this.i,this.i,this.wg,this.lg,this.ei,this.i,this.ai,this.ig,this.di,this.i,this.vg,this.fg,this.bi,this.i,this.xg,this.kg,this.i,this.i,this.i,this.mg,this.fi,this.i,this.vi,this.hg,this.i,this.i,this.i,this.gg,this.ci,this.i,this.li,this.fh,this.i,this.i, -this.i,this.hh,this.Nh,this.i,this.Yh,this.eh,this.Mh,this.i,this.qh,this.ah,this.Kh,this.i,this.Bg,this.gh,this.i,this.i,this.i,this.ih,this.Oh,this.i,this.Fg,this.dh,this.i,this.i,this.i,this.bh,this.Lh,this.i,this.mi,this.Sd,this.i,this.i,this.i,this.Ud,this.ji,this.i,this.$h,this.Rd,this.ii,this.i,this.ph,this.Od,this.gi,this.i,this.Cg,this.Td,this.i,this.i,this.i,this.Vd,this.ki,this.i,this.xi,this.Qd,this.i,this.i,this.i,this.Pd,this.hi,this.i,this.i,this.Bi,this.i,this.i,this.Ji,this.Di,this.Gi, -this.i,this.$g,this.i,this.Pi,this.i,this.Ii,this.yi,this.Fi,this.i,this.sg,this.Ci,this.i,this.i,this.Ki,this.Ei,this.Hi,this.i,this.Ri,this.Ai,this.Qi,this.i,this.i,this.zi,this.i,this.i,this.Hh,this.wh,this.Ch,this.i,this.Ih,this.yh,this.Dh,this.i,this.Ni,this.vh,this.Mi,this.i,this.Fh,this.sh,this.Ah,this.i,this.tg,this.xh,this.i,this.i,this.Jh,this.zh,this.Eh,this.i,this.Gg,this.uh,this.Oi,this.i,this.Gh,this.th,this.Bh,this.i,this.Tg,this.Lg,this.i,this.i,this.Ug,this.Ng,this.Xg,this.i,this.oh, -this.Kg,this.Zg,this.i,this.Sg,this.Hg,this.Vg,this.i,this.yg,this.Mg,this.i,this.i,this.i,this.Og,this.Yg,this.i,this.Eg,this.Jg,this.i,this.i,this.i,this.Ig,this.Wg,this.i,this.Qg,this.$d,this.i,this.i,this.Rg,this.be,this.lh,this.i,this.nh,this.Zd,this.Ph,this.i,this.Pg,this.Wd,this.jh,this.i,this.ug,this.ae,this.i,this.i,this.i,this.ce,this.mh,this.i,this.wi,this.Yd,this.i,this.i,this.i,this.Xd,this.kh,this.i];this.zf=[7,6,0,0,0,3,5,0,3,2,2,0,0,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,3,6,0,0,3, -3,5,0,4,2,2,0,4,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,6,6,0,0,0,3,5,0,3,2,2,0,3,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,6,6,0,0,0,3,5,0,4,2,2,0,5,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,0,6,0,0,3,3,3,0,2,0,2,0,4,4,4,0,2,5,0,0,4,4,4,0,2,4,2,0,0,4,0,0,2,6,2,0,3,3,3,0,2,2,2,0,4,4,4,0,2,5,0,0,4,4,4,0,2,4,2,0,4,4,4,0,2,6,0,0,3,3,5,0,2,2,2,0,4,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,2,6,0,0,3,3,5,0,2,2,2,0,4,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0]}B(sa);f=sa.prototype; -f.reset=function(a){this.fa&&this.S();ta(this);var b=this.wf;this.d=this.a[b]|this.a[b+1]<<8;this.ib=!1;this.l?this.l.reset():a&&(!0===this.zd||null===this.zd&&!this.l&&void 0===this.q.run)&&this.xa()}; -f.H=function(a,b,c,d){a=!1;switch(c){case "run":this.q[c]=d;d.onclick=function(a){return function(){a.fa?a.S():a.xa()}}(this);a=!0;break;case "A":case "X":case "Y":case "S":case "PC":case "C":case "Z":case "I":case "D":case "B":case "V":case "N":case "speed":this.q[c]=d;a=!0;break;case "setSpeed":this.q[c]=d,d.onclick=function(a){return function(){M(a,a.speed>=a.La?a.Gb:a.speed+1,!0)}}(this),a=!0}return a}; -f.U=function(a,b,c){this.a=a;this.Z=b;this.pc=c-b+1;this.Xa=this.Z+this.pc;this.Z?u("unsupported CPU address buffer offset ("+this.Z+")"):this.O()};f.aa=function(a,b){if(a&&!this.B){this.M=b;(this.l=L(b,"debugger"))&&this.l.Kf();var c=L(b,"video");c&&(this.qc=function(a){return function(){ua(a)}}(c),this.V=function(a){return function(){a.V()}}(c));this.B=!0;this.reset(!0);this.update()}};function va(a,b,c,d,e){0>wa(a.Ba,b,c,d,e)&&(a.lc>b&&(a.lc=b),a.mc<c&&(a.mc=c),a.Ba.push([b,c,d,e]))} -function xa(a,b,c){for(var d=0;d<a.Ba.length;d++)b>=a.Ba[d][0]&&b<=a.Ba[d][1]&&a.Ba[d][3].call(a.Ba[d][2],b,c)}function N(a,b,c,d,e){0>wa(a.ra,b,c,d,e)&&(a.Kb>b&&(a.Kb=b),a.Lb<c&&(a.Lb=c),a.ra.push([b,c,d,e]))}function za(a,b,c){for(var d=0;d<a.ra.length;d++)b>=a.ra[d][0]&&b<=a.ra[d][1]&&a.ra[d][3].call(a.ra[d][2],b,c)}function wa(a,b,c,d,e){for(var g=0;g<a.length;g++)if(a[g][0]==b&&a[g][1]==c&&a[g][2]==d&&a[g][3]==e)return g;return-1} -function M(a,b,c){void 0!==b&&(a.speed=b,a.q.setSpeed&&(a.q.setSpeed.innerHTML=a.td[2<=b?0:b+1]),G(a,"running at "+a.td[b].toLowerCase()+" speed "+a.Af[b]),c&&a.V());a.Wa=0;a.Ed=r();Aa(a)}f.qc=function(){};f.V=function(){};function O(a,b,c,d){void 0!==a.q[b]&&(void 0===d&&(d=1),c="0000"+c.toString(16),a.q[b].innerHTML=c.slice(c.length-d).toUpperCase())} -function Ba(a){O(a,"A",a.e,2);O(a,"X",a.m,2);O(a,"Y",a.o,2);var b=Ca(a);O(a,"C",b&a.ke?1:0);O(a,"Z",b&a.pe?1:0);O(a,"I",b&a.me?1:0);O(a,"D",b&a.le?1:0);O(a,"B",b&a.je?1:0);O(a,"V",b&a.oe?1:0);O(a,"N",b&a.ne?1:0);O(a,"S",a.p,4);O(a,"PC",a.d,4);a.q.speed&&a.ta&&(a.q.speed.innerHTML=a.ta.toFixed(1)+"Mhz")} -function Aa(a,b){var c=a.Bc;c<a.zc&&(c=a.zc);c<a.yc&&(c=a.yc);var d=1;b&&a.speed>a.Gb&&a.ta&&(d=a.ta);d>a.lb&&a.speed<a.La&&(d=a.lb);a.Pf=Math.round(1E3/a.Bc);a.Vb=Math.floor(a.ob/c*d);a.uc=Math.floor(a.ob/a.Bc*d);a.Gd=Math.floor(a.ob/a.zc*d);a.Fd=Math.floor(a.ob/a.yc*d);b||(a.Ua=a.uc,a.nb=a.Gd,a.mb=a.Fd);a.xc=0} -function Da(a){var b=r(),c=a.Pf;a.pb&&(c=Math.round(c*a.pb/a.uc));c-=b-a.Sf;if(b-=a.Ed)a.ta=Math.round(a.Wa/(100*b))/10,864E5<=b&&M(a);0>c?c=0:a.speed==a.nd?a.ta<=a.lb&&(c=0):a.speed==a.La&&(c=0);a.xc+=a.pb;return c} -f.xa=function(){if(H(this,!0)){this.fa||(M(this),this.M&&this.M.start(),this.fa=!0,this.q.run&&(this.q.run.innerHTML="Halt"),this.V());this.xc>=this.ob&&Aa(this,!0);this.pb=0;this.Sf=r();try{do{this.step(this.Vb);var a=this.ua-this.D;this.Wa+=a;this.pb+=a;this.ua=this.D=0;this.nb-=this.Vb;0>=this.nb&&(this.nb+=this.Gd,this.qc());this.mb-=this.Vb;0>=this.mb&&(this.mb+=this.Fd,Ba(this));this.Ua-=this.Vb;if(0>=this.Ua){this.Ua+=this.uc;break}}while(this.fa)}catch(b){this.S();this.update();H(this,!1); -K(this,b.message||b);return}setTimeout(function(a){return function(){a.xa()}}(this),Da(this))}else this.update(),this.M&&this.M.stop(this.Ed,this.Wa)}; -f.step=function(a){var b=!0;this.b=this.h=-1;var c;if(c=a)if(c=this.l)c=this.l,c=0<c.qa.length||0<c.Aa.length||0<c.Da.length;this.ua=this.D=a;do{a=this.a[this.d];var d;if(d=c){d=this.l;var e=a,g=!1;Ea(d,this.d,d.qa,"exec")?g=!0:(d.Oa++,d.ea[e][1]++,d.Ca[d.jb++]=d.k.d,d.jb>=d.Ca.length&&(d.jb=0));d=!!g}if(d){b=void 0;this.S();break}this.d++;this.s[a].call(this);if(0<=this.b){this.b>=this.lc&&this.b<=this.mc&&xa(this,this.b,this.d);if(d=c)d=this.l,e=!1,Ea(d,this.b,d.Aa,"read")&&(e=!0),d=!!e;if(d){b= -!1;this.S();break}this.b=-1}else if(0<=this.h){this.h>=this.Kb&&this.h<=this.Lb&&za(this,this.h,this.d);if(d=c){d=this.l;var e=this.h,g=this.a[this.h],k=!1;(g&255)!=g&&(G(d,"invalid value at "+p(e)+": "+g),k=!0);Ea(d,e,d.Da,"write")&&(k=!0);d=!!k}if(d){b=!1;this.S();break}this.h=-1}this.D-=this.zf[a]}while(0<this.D);return b};function Fa(a){a.Ua=0;a.ua-=a.D;a.D=0}f.S=function(){I(this,!0);this.ua-=this.D;this.D=0;this.fa&&(this.fa=!1,this.q.run&&(this.q.run.innerHTML="Run"))}; -f.update=function(){this.qc();Ba(this)};function Ga(a){return a.fa?a.Wa+a.ua-a.D:0}f.G=function(a){return this.a[a]};f.N=function(a,b){this.a[a]=b};function Ca(a){var b=a.c&256?1:0,b=b|(a.g&255?0:2),b=b|((a.t&255^a.u^a.t>>1)&128?64:0),b=b|(a.f&128?128:0);return a.v&60|b} -function Ha(a){a.v|=8;a.s[97]=a.bg;a.s[101]=a.dg;a.s[105]=a.ag;a.s[109]=a.Yf;a.s[113]=a.cg;a.s[117]=a.eg;a.s[121]=a.$f;a.s[125]=a.Zf;a.s[225]=a.ri;a.s[229]=a.ti;a.s[233]=a.qi;a.s[237]=a.ni;a.s[241]=a.si;a.s[245]=a.ui;a.s[249]=a.pi;a.s[253]=a.oi}function Ia(a){a.v&=-9;a.s[97]=a.Sd;a.s[101]=a.Ud;a.s[105]=a.Rd;a.s[109]=a.Od;a.s[113]=a.Td;a.s[117]=a.Vd;a.s[121]=a.Qd;a.s[125]=a.Pd;a.s[225]=a.$d;a.s[229]=a.be;a.s[233]=a.Zd;a.s[237]=a.Wd;a.s[241]=a.ae;a.s[245]=a.ce;a.s[249]=a.Yd;a.s[253]=a.Xd} -function P(a,b,c){var d=a.c&256?1:0,e=(b&15)+(c&15)+d;10<=e&&(e=e+6&15|16);e+=(b&240)+(c&240);a.u=b^c;a.t=e;a.f=e&255;160<=e&&(e+=96);512<=e&&(e-=256);a.c=e;a.g=b+c+d&255;a.D--;return e&255}function Q(a,b,c){var d=a.c&256?0:1,e=(b&15)-(c&15)-d;0>e&&(e=(e-6&15)-16);e+=(b&240)-(c&240);0>e&&(e-=96);a.f=a.g=(a.c=b-c-d)&255;a.u=b^c;a.t=a.c;a.c^=256;a.D--;return e&255}function ta(a){a.e=0;a.m=0;a.o=0;a.p=256;a.v=0;a.f=0;a.g=0;a.u=0;a.t=0;a.c=0;a.d=0;a.b=-1;a.h=-1;a.ta=0;a.Wa=a.ua=a.D=0} -f.Ag=function(){this.d++;this.a[this.p--]=this.d>>8;this.p|=256;this.a[this.p--]=this.d&255;this.p|=256;this.v|=16;this.v=Ca(this);this.a[this.p--]=this.v;this.p|=256;this.v&=239;this.b=65534;this.d=this.a[this.b]|this.a[this.b+1]<<8};f.Uh=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e|=this.a[this.b]};f.Wh=function(){this.b=this.a[this.d++];this.f=this.g=this.e|=this.a[this.b]}; -f.qg=function(){this.h=this.a[this.d++];this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};f.Zh=function(){this.v=Ca(this);this.a[this.p--]=this.v;this.p|=256};f.Th=function(){this.b=this.d++;this.f=this.g=this.e|=this.a[this.b]};f.pg=function(){this.c=this.e<<1;this.f=this.g=this.e=this.c&255};f.Qh=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e|=this.a[this.b]}; -f.ng=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};f.zg=function(){this.d+=(this.f&128?0:(this.D--,this.a[this.d]<<24>>24))+1};f.Vh=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.f=this.g=this.e|=this.a[this.b]};f.Xh=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.e|=this.a[this.b]}; -f.rg=function(){this.h=this.a[this.d++]+this.m&255;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};f.Dg=function(){this.c=0};f.Sh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.e|=this.a[this.b]};f.Rh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e|=this.a[this.b]};f.og=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255}; -f.rh=function(){this.b=this.d++;this.a[this.p--]=this.d>>8;this.p|=256;this.a[this.p--]=this.d&255;this.p|=256;this.d=this.a[this.b]|this.a[this.b+1]<<8};f.jg=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e&=this.a[this.b]};f.wg=function(){this.b=this.a[this.d++];this.g=this.e&this.a[this.b];this.f=this.f&127|this.a[this.b]&128;this.t=0;this.u=this.a[this.b]&64?128:0};f.lg=function(){this.b=this.a[this.d++];this.f=this.g=this.e&=this.a[this.b]}; -f.ei=function(){this.h=this.a[this.d++];this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.ai=function(){this.p=this.p+1&255|256;this.v=this.a[this.p];this.c=this.v&1?256:0;this.g=this.v&2?0:1;this.f=this.v&128;this.t=0;this.u=this.v&64?128:0};f.ig=function(){this.b=this.d++;this.f=this.g=this.e&=this.a[this.b]}; -f.di=function(){this.c=this.c&65280|this.e;this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.e=this.c&255};f.vg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.g=this.e&this.a[this.b];this.f=this.f&127|this.a[this.b]&128;this.t=0;this.u=this.a[this.b]&64?128:0};f.fg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e&=this.a[this.b]}; -f.bi=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.xg=function(){this.d+=(this.f&128?(this.D--,this.a[this.d]<<24>>24):0)+1};f.kg=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.f=this.g=this.e&=this.a[this.b]};f.mg=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.e&=this.a[this.b]}; -f.fi=function(){this.h=this.a[this.d++]+this.m&255;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.vi=function(){this.c=256};f.hg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.e&=this.a[this.b]};f.gg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e&=this.a[this.b]}; -f.ci=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.li=function(){this.p=this.p+1&255|256;this.v=this.a[this.p];this.c=this.v&1?256:0;this.g=this.v&2?0:1;this.f=this.v&128;this.t=0;this.u=this.v&64?128:0;this.p=this.p+2&255|256;this.d=this.a[this.p-1|256]|this.a[this.p]<<8}; -f.fh=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e^=this.a[this.b]};f.hh=function(){this.b=this.a[this.d++];this.f=this.g=this.e^=this.a[this.b]};f.Nh=function(){this.h=this.a[this.d++];this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255};f.Yh=function(){this.a[this.p--]=this.e;this.p|=256};f.eh=function(){this.b=this.d++;this.f=this.g=this.e^=this.a[this.b]}; -f.Mh=function(){this.c=this.c&65279|(this.e&1?256:0);this.e=(this.c=this.c&65280|this.e>>1)&255;this.f=this.g=this.c&255};f.qh=function(){this.b=this.d;this.d=this.a[this.b]|this.a[this.b+1]<<8};f.ah=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e^=this.a[this.b]};f.Kh=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; -f.Bg=function(){this.d+=((this.t&255^this.u^this.t>>1)&128?0:(this.D--,this.a[this.d]<<24>>24))+1};f.gh=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.f=this.g=this.e^=this.a[this.b]};f.ih=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.e^=this.a[this.b]};f.Oh=function(){this.h=this.a[this.d++]+this.m&255;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; -f.Fg=function(){this.v&=251};f.dh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.e^=this.a[this.b]};f.bh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e^=this.a[this.b]};f.Lh=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; -f.mi=function(){this.p=this.p+2&255|256;this.d=(this.a[this.p-1|256]|this.a[this.p]<<8)+1};f.Sd=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.bg=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.e=P(this,this.e,this.a[this.b])}; -f.Ud=function(){this.b=this.a[this.d++];this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.dg=function(){this.b=this.a[this.d++];this.e=P(this,this.e,this.a[this.b])};f.ji=function(){this.h=this.a[this.d++];this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};f.$h=function(){this.p=this.p+1&255|256;this.f=this.g=this.e=this.a[this.p]}; -f.Rd=function(){this.b=this.d++;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.ag=function(){this.b=this.d++;this.e=P(this,this.e,this.a[this.b])};f.ii=function(){this.c=this.c&65280|this.e;this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.e=this.c&255};f.ph=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.d=this.a[this.b]|this.a[this.b+1]<<8}; -f.Od=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.Yf=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.e=P(this,this.e,this.a[this.b])};f.gi=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255}; -f.Cg=function(){this.d+=((this.t&255^this.u^this.t>>1)&128?(this.D--,this.a[this.d]<<24>>24):0)+1};f.Td=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.cg=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.e=P(this,this.e,this.a[this.b])}; -f.Vd=function(){this.b=this.a[this.d++]+this.m&255;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.eg=function(){this.b=this.a[this.d++]+this.m&255;this.e=P(this,this.e,this.a[this.b])};f.ki=function(){this.h=this.a[this.d++]+this.m&255;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};f.xi=function(){this.v|=4}; -f.Qd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255};f.$f=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.e=P(this,this.e,this.a[this.b])};f.Pd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255}; -f.Zf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.e=P(this,this.e,this.a[this.b])};f.hi=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};f.Bi=function(){this.h=this.a[this.d++]+this.m&255;this.h=this.a[this.h]|this.a[this.h+1]<<8;this.a[this.h]=this.e};f.Ji=function(){this.h=this.a[this.d++];this.a[this.h]=this.o}; -f.Di=function(){this.h=this.a[this.d++];this.a[this.h]=this.e};f.Gi=function(){this.h=this.a[this.d++];this.a[this.h]=this.m};f.$g=function(){this.f=this.g=this.o=this.o-1&255};f.Pi=function(){this.f=this.g=this.e=this.m};f.Ii=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.o};f.yi=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.e};f.Fi=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.m}; -f.sg=function(){this.d+=(this.c&256?0:(this.D--,this.a[this.d]<<24>>24))+1};f.Ci=function(){this.h=this.a[this.d++];this.h=(this.a[this.h]|this.a[this.h+1]<<8)+this.o;this.a[this.h]=this.e};f.Ki=function(){this.h=this.a[this.d++]+this.m&255;this.a[this.h]=this.o};f.Ei=function(){this.h=this.a[this.d++]+this.m&255;this.a[this.h]=this.e};f.Hi=function(){this.h=this.a[this.d++]+this.o&255;this.a[this.h]=this.m};f.Ri=function(){this.f=this.g=this.e=this.o}; -f.Ai=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.a[this.h]=this.e};f.Qi=function(){this.p=this.m|256};f.zi=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.a[this.h]=this.e};f.Hh=function(){this.b=this.d++;this.f=this.g=this.o=this.a[this.b]};f.wh=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e=this.a[this.b]};f.Ch=function(){this.b=this.d++;this.f=this.g=this.m=this.a[this.b]}; -f.Ih=function(){this.b=this.a[this.d++];this.f=this.g=this.o=this.a[this.b]};f.yh=function(){this.b=this.a[this.d++];this.f=this.g=this.e=this.a[this.b]};f.Dh=function(){this.b=this.a[this.d++];this.f=this.g=this.m=this.a[this.b]};f.Ni=function(){this.f=this.g=this.o=this.e};f.vh=function(){this.b=this.d++;this.f=this.g=this.e=this.a[this.b]};f.Mi=function(){this.f=this.g=this.m=this.e};f.Fh=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.o=this.a[this.b]}; -f.sh=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e=this.a[this.b]};f.Ah=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.m=this.a[this.b]};f.tg=function(){this.d+=(this.c&256?(this.D--,this.a[this.d]<<24>>24):0)+1};f.xh=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.f=this.g=this.e=this.a[this.b]};f.Jh=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.o=this.a[this.b]}; -f.zh=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.e=this.a[this.b]};f.Eh=function(){this.b=this.a[this.d++]+this.o&255;this.f=this.g=this.m=this.a[this.b]};f.Gg=function(){this.u=this.t=0};f.uh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.e=this.a[this.b]};f.Oi=function(){this.f=this.g=this.m=this.p&255};f.Gh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.o=this.a[this.b]}; -f.th=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e=this.a[this.b]};f.Bh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.m=this.a[this.b]};f.Tg=function(){this.b=this.d++;this.f=this.g=this.c=this.o-this.a[this.b];this.c^=256};f.Lg=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256}; -f.Ug=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.o-this.a[this.b];this.c^=256};f.Ng=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Xg=function(){this.h=this.a[this.d++];this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.oh=function(){this.f=this.g=this.o=this.o+1&255};f.Kg=function(){this.b=this.d++;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Zg=function(){this.f=this.g=this.m=this.m-1&255}; -f.Sg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.o-this.a[this.b];this.c^=256};f.Hg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Vg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.yg=function(){this.d+=(this.g&255?(this.D--,this.a[this.d]<<24>>24):0)+1}; -f.Mg=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Og=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Yg=function(){this.h=this.a[this.d++]+this.m&255;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.Eg=function(){Ia(this)}; -f.Jg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Ig=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Wg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.Qg=function(){this.b=this.d++;this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256}; -f.$d=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ri=function(){this.b=this.a[this.d++]+this.m&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.e=Q(this,this.e,this.a[this.b])};f.Rg=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256}; -f.be=function(){this.b=this.a[this.d++];this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ti=function(){this.b=this.a[this.d++];this.e=Q(this,this.e,this.a[this.b])};f.lh=function(){this.h=this.a[this.d++];this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};f.nh=function(){this.f=this.g=this.m=this.m+1&255}; -f.Zd=function(){this.b=this.d++;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.qi=function(){this.b=this.d++;this.e=Q(this,this.e,this.a[this.b])};f.Ph=function(){};f.Pg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256}; -f.Wd=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ni=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.e=Q(this,this.e,this.a[this.b])};f.jh=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};f.ug=function(){this.d+=(this.g&255?0:(this.D--,this.a[this.d]<<24>>24))+1}; -f.ae=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.si=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.o;this.e=Q(this,this.e,this.a[this.b])}; -f.ce=function(){this.b=this.a[this.d++]+this.m&255;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ui=function(){this.b=this.a[this.d++]+this.m&255;this.e=Q(this,this.e,this.a[this.b])};f.mh=function(){this.h=this.a[this.d++]+this.m&255;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};f.wi=function(){Ha(this)}; -f.Yd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.pi=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.o;this.e=Q(this,this.e,this.a[this.b])}; -f.Xd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.u=this.e^this.a[this.b];this.t=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.oi=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.e=Q(this,this.e,this.a[this.b])};f.kh=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255}; -f.Li=function(){var a;a=this.a[this.d++];switch(a){case this.tf:G(this,"HALT");this.S();break;case this.md:a=this.d;for(var b="";a<this.a.length;){var c=this.a[a++];if(!c)break;b+=String.fromCharCode(c)}this.d=a;b=b.replace(/%A/g,h(this.e)).replace(/%X/g,h(this.m)).replace(/%Y/g,h(this.o));G(this,b);Fa(this);break;default:this.d-=2,G(this,"undefined opSim: "+h(a)+" at "+p(this.d)),this.S()}};f.i=function(){var a=this.a[--this.d];G(this,"undefined opcode: "+h(a)+" at "+p(this.d));this.S()}; -x(function(){for(var a=F(window.document,"c1pjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new sa(d);E(d,c)}});function R(a){z.call(this,"C1PROM",a);this.sa=this.a=null;this.Pa=a.size;if(this.sb=a.image){a=this.sb;var b;b=this.sb;var c="",d=b.lastIndexOf(".");0<=d&&(c=b.substr(d+1).toLowerCase());b=c;"json"!=b&&"hex"!=b&&(a="http://"+window.location.host+"/api/v1/dump?file="+this.sb);s(a,!0,null,this,this.Ff)}}B(R); -R.prototype.U=function(a,b,c,d){this.a=a;this.Dc=b;a=c-b+1;this.Pa||(this.Pa=a);a!=this.Pa?K(this,"computer-specified ROM size ("+p(a)+") does not match component-specified size ("+p(this.Pa)+")"):(d&&(this.k=d,N(d,b,c,this,this.N)),Ja(this))};R.prototype.aa=function(a,b){a&&!this.B&&(this.B=!0,this.l=L(b,"debugger"))};R.prototype.N=function(a,b){if(void 0!==b){this.l&&S(this.l,this,a,b,this.l.bc,!0);var c=a-this.Dc;this.a[this.Dc+c]=this.sa?this.sa[c]:0}}; -R.prototype.Ff=function(a,b,c){if(c)G(this,"ROM load error ("+c+")");else{if("["==b[0])try{this.sa=eval("("+b+")")}catch(d){G(this,"ROM data error: "+(d.message||d));return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.sa=Array(a.length),b=0;b<a.length;b++)this.sa[b]=parseInt(a[b],16);Ja(this)}}; -function Ja(a){if(!J(a))if(!a.sb)a.O();else if(a.sa&&a.a){var b=a.sa.length;if(b!=a.Pa)K(a,"ROM image size ("+p(b)+") does not match component-specified size ("+p(a.Pa)+")");else{for(var c=0;c<b;c++)a.a[a.Dc+c]=a.sa[c];a.O()}}}x(function(){for(var a=F(window.document,"c1pjs","rom"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new R(d);E(d,c)}});function Ka(a){z.call(this,"C1PRAM",a)}B(Ka);Ka.prototype.U=function(a){this.a=a;this.O()}; -x(function(){for(var a=F(window.document,"c1pjs","ram"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new Ka(d);E(d,c)}}); -function La(a){z.call(this,"C1PKeyboard",a);this.B=!1;this.vc=a.model;this.Nc=8;this.De=9;this.Be=10;this.Ae=13;this.Ce=16;this.ze=17;this.we=18;this.xe=20;this.Oc=27;this.ye=91;this.te=this.Nc;this.ue=this.Be;this.qe=this.Ae;this.Ic=this.Oc;this.R=224;this.n=this.Ce+this.R;this.yb=this.ze+this.R;this.ac=this.we+this.R;this.Jc=this.xe+this.R;this.Hc=0+this.R;this.re=3;this.se=15;this.xb=1;this.wb=2;this.vb=4;this.Za=8;this.ub=64;this.$b=this.wb|this.vb|this.ub;this.ld=0;this.rf=1;this.qf=2;this.sf= -3;this.pf=4;this.Tf=8192;this.Qf=250;this.Rf=100;this.Of=300;this.Ma=[];this.Ma["break"]=this.Hc;this.Ma.esc=this.Ic;this.Ma["ctrl-c"]=this.re;this.Ma["ctrl-o"]=this.se;this.j=[];this.j[49]=30464;this.j[33]=30464+this.n;this.j[50]=30208;this.j[34]=30208+this.n;this.j[51]=29952;this.j[35]=29952+this.n;this.j[52]=29696;this.j[36]=29696+this.n;this.j[53]=29440;this.j[37]=29440+this.n;this.j[54]=29184;this.j[38]=29184+this.n;this.j[55]=28928;this.j[39]=28928+this.n;this.j[56]=26368;this.j[40]=26368+this.n; -this.j[57]=26112;this.j[41]=26112+this.n;this.j[48]=25856;this.j[58]=25600;this.j[42]=25600+this.n;this.j[45]=25344;this.j[61]=25344+this.n;this.j[46]=22272;this.j[62]=22272+this.n;this.j[108]=22016;this.j[76]=22016+this.n;this.j[92]=22016+this.n;this.j[111]=21760;this.j[79]=21760+this.n;this.j[this.te]=21760+this.n;this.j[this.ue]=21504;this.j[this.qe]=21248;this.j[119]=18176;this.j[87]=18176+this.n;this.j[101]=17920;this.j[69]=17920+this.n;this.j[114]=17664;this.j[82]=17664+this.n;this.j[116]=17408; -this.j[84]=17408+this.n;this.j[121]=17152;this.j[89]=17152+this.n;this.j[117]=16896;this.j[85]=16896+this.n;this.j[105]=16640;this.j[73]=16640+this.n;this.j[115]=14080;this.j[83]=14080+this.n;this.j[100]=13824;this.j[68]=13824+this.n;this.j[102]=13568;this.j[70]=13568+this.n;this.j[103]=13312;this.j[71]=13312+this.n;this.j[104]=13056;this.j[72]=13056+this.n;this.j[106]=12800;this.j[74]=12800+this.n;this.j[107]=12544;this.j[75]=12544+this.n;this.j[91]=12544+this.n;this.j[120]=9984;this.j[88]=9984+ -this.n;this.j[99]=9728;this.j[67]=9728+this.n;this.j[118]=9472;this.j[86]=9472+this.n;this.j[98]=9216;this.j[66]=9216+this.n;this.j[110]=8960;this.j[78]=8960+this.n;this.j[94]=8960+this.n;this.j[109]=8704;this.j[77]=8704+this.n;this.j[93]=8704+this.n;this.j[44]=8448;this.j[60]=8448+this.n;this.j[113]=5888;this.j[81]=5888+this.n;this.j[97]=5632;this.j[65]=5632+this.n;this.j[122]=5376;this.j[90]=5376+this.n;this.j[32]=5120;this.j[47]=4864;this.j[63]=4864+this.n;this.j[59]=4608;this.j[43]=4608+this.n; -this.j[112]=4352;this.j[80]=4352+this.n;this.j[64]=4352+this.n;this.j[this.yb]=1536;this.j[this.Ic]=1280;this.j[this.n]=512;this.j[this.ac]=256;this.j[this.Jc]=0;this.reset()}B(La);f=La.prototype;f.reset=function(){this.tb(this.vc);this.w=this.xb;this.vd=0;this.L=[this.xb,0,0,0,0,0,0,0];this.ic=[];if(this.ca)for(var a in this.ca)isNaN(a)||this.ca[a]&&clearTimeout(this.ca[a]);this.ca=[];this.de=this.wa=0;this.wd=-1;this.ud=this.L;this.Hd=this.Ac=0;this.Ia=""}; -f.H=function(a,b,c,d){if(void 0===this.q[c])switch(c){case "keyDown":return this.q[c]=d,d.onkeydown=function(a){return function(b){return Ma(a,b,!0)}}(this),!0;case "keyPress":return this.q[c]=d,d.onkeypress=function(a){return function(b){var c=!0;b=b||window.event;b=b.which||b.keyCode;a.Ia="";a.w&a.Za?a.w&=~a.Za:c=!Na(a,b);a.l&&T(a.l,a.l.ya)&&a.l.message("keyPress("+h(b)+"): "+(c?"pass":"consume"));return c}}(this),!0;case "keyUp":return this.q[c]=d,d.onkeyup=function(a){return function(b){return Ma(a, -b,!1)}}(this),!0;case "break":return this.q[c]=d,d.onclick=function(a){return function(){a.M&&a.M.reset(!0)}}(this),!0;default:if(void 0!==this.Ma[c])return this.q[c]=d,d.onclick=function(a,b,c){return function(){a.k&&a.k.V();return!Na(a,c)}}(this,c,this.Ma[c]),!0}return!1};f.U=function(a,b,c,d){this.a=a;this.Md=b;this.Bf=c-b+1;this.Xf=this.Md+this.Bf;d&&(this.k=d,N(d,b,c,this,this.N));this.O()};f.tb=function(a){this.qb=a;this.oc=255;600!=this.qb&&(this.oc=0,G(this,"updated keyboard model: "+this.qb))}; -f.aa=function(a,b){a&&!this.B&&(this.B=!0,this.M=b,this.l=L(b,"debugger"))};f.O=function(){this.sc=(this.Jf=v("iOS"))||v("Android");this.l&&T(this.l,this.l.ya)&&this.l.message("mobile keyboard support: "+(this.sc?"true":"false")+" ("+window.navigator.userAgent+")");z.prototype.O.call(this)};function Oa(a,b){var c=b?a.Rf:a.Qf;a.k&&a.k.ta&&(c/=a.k.ta);return c} -function Pa(a,b){!a.wa||void 0!==b&&b==a.wa||(a.l&&T(a.l,a.l.ya)&&a.l.message("autoClear("+h(a.wa)+")"),clearTimeout(a.ca[a.wa]),U(a,a.wa,!1,a.pf))}function V(a,b,c){a.Ia=b;Qa(a,c||a.Of)}function Qa(a,b){if(0<a.Ia.length){var c=a.Ia.charCodeAt(0);10==c&&(c=13);65<=c&&90>=c&&(c+=32);a.Ia=a.Ia.substr(1);Na(a,c)}0<a.Ia.length&&setTimeout(function(a){return function(){Qa(a,b)}}(a),b)} -function Ma(a,b,c){var d,e=!c;b=b.keyCode;c&&(a.de=b);b==a.n-a.R?(a.w&=~a.vb,c&&(a.w|=a.vb),b+=a.R,e=!1):b==a.ac-a.R?(a.w&=~a.wb,c&&(a.w|=a.wb),b+=a.R,e=!1):b==a.yb-a.R?(a.w&=~a.ub,c&&(a.w|=a.ub),b+=a.R,e=!1):b==a.Jc-a.R?(c=!c,a.w&=~a.xb,c&&(a.w|=a.xb),b+=a.R,e=!1):b==a.ye?(a.w&=~a.Za,c&&(a.w|=a.Za),e=!1,d=!0):d=b==a.De?e=!1:b==a.Oc||b==a.Nc?c?!Na(a,b):!1:!0;e&&(a.w&=~a.Za,a.sc||b!=a.de||Pa(a));void 0===d&&(d=!U(a,b,c,a.qf));a.l&&T(a.l,a.l.ya)&&a.l.message("key"+(c?"Down":"Up")+"("+h(b)+"): "+(d? -"pass":"consume"));return d}function Na(a,b){var c=!1;b==a.Hc?a.M&&(a.M.reset(!0),c=!0):(a.sc&&65<=b&&90>=b&&(b+=32),Pa(a,b),U(a,b,!0,a.ld)&&(a.k.speed==a.k.La?U(a,b,!1,a.rf):(c=!1,a.ca[b]&&(clearTimeout(a.ca[b]),c=!0),c=Oa(a,c),a.ca[a.wa=b]=setTimeout(function(a){return function(){U(a,b,!1,a.sf)}}(a),c),a.l&&T(a.l,a.l.ya)&&a.l.message("keyPressSimulate("+h(b)+"): setTimeout()")),c=!0));a.l&&T(a.l,a.l.ya)&&a.l.message("keyPressSimulate("+h(b)+"): "+(c?"true":"false"));return c} -function U(a,b,c,d){var e=!1;c||(a.ca[b]=null,a.wa==b&&(a.wa=0));var g=0,k=a.j[b];void 0===k&&(1<=b&&26>=b&&(b+=64,g=a.yb),k=a.j[b]);void 0!==k&&(b=k>>12,e=k>>8&15,g||(g=k&255),c?(a.L[b]|=1<<e,a.L[0]=g==a.yb?a.L[0]|a.ub:g==a.n?a.L[0]|a.vb:g==a.ac?a.L[0]|a.wb:a.L[0]&~a.$b):(a.L[b]&=~(1<<e),a.L[0]&=~a.$b,a.L[0]|=a.w&a.$b),c=d==a.ld&&!a.ic.length,a.ic.push(a.L.slice()),a.Zb(c),e=!0);return e}f.G=function(){};f.N=function(a){var b=this.k.G(a);this.vd=b^this.oc;this.Ac++;this.Zb(!1,a,b)}; -f.Zb=function(a,b){var c=Ga(this.k);if(!a)if(this.k.speed==this.k.La)a=void 0!==b&&32<=this.Ac;else{var d=c-this.Hd;a=0>d||d>=this.Tf}a&&(d=this.ic.shift(),void 0!==d&&(this.ud=d),this.Ac=0,this.Hd=c);for(d=c=0;8>d;d++)this.vd&1<<d&&(c|=this.ud[d]);c^=this.oc;if(void 0!==b)this.a[b]=c;else if(b=this.Md,c!=this.wd)for(d=b;d<this.Xf;d++)this.a[d]=c;this.wd=c};x(function(){for(var a=F(window.document,"c1pjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new La(d);E(d,c)}}); -function Ra(a,b,c,d){z.call(this,"C1PVideo",a);this.vc=a.model;this.Id=a.charCols;this.Jd=a.charRows;this.Gf=a.screenWidth;this.Hf=a.screenHeight;this.Nb=a.charWidth;this.Ob=a.charHeight;Sa(this);this.Pb=b;this.Ef=c;this.kb=d;this.hb=56832}B(Ra);f=Ra.prototype;f.reset=function(a){this.tb(this.vc);if(this.a)for(var b=this.Wb;b<this.Ec;b++)this.a[b]=a?Math.floor(256*Math.random()):32}; -f.H=function(a,b,c,d){switch(c){case "refresh":return this.q[c]=d,d.onclick=function(a){return function(){Ta(a);ua(a)}}(this),!0}return!1};f.U=function(a,b,c,d){this.a=a;this.Wb=b;this.Df=c-b+1;this.Ec=this.Wb+this.Df;d&&(this.k=d,void 0!==this.hb&&(va(d,this.hb,this.hb,this,this.G),N(d,this.hb,this.hb,this,this.N)));this.reset(!0)}; -function Sa(a,b,c,d,e){a.Ub=void 0!==b?b:a.Id;a.Uf=void 0!==c?c:a.Jd;a.Qa=a.Ub*a.Uf;a.Ec=a.Wb+a.Qa;a.Bd=void 0!==d?d:0;a.Kd=void 0!==e?e:c;a.xd=Math.floor(a.Gf/a.Ub);a.yd=Math.floor(a.Hf/a.Kd)}f.V=function(){this.Pb.focus()};f.tb=function(a){this.qb=a;600==this.qb?(Sa(this,this.Id,this.Jd,4,24),1024==this.Qa&&this.k&&(this.Jb=this.Ec+this.Qa-1,N(this.k,this.Jb,this.Jb,this,this.ie))):(G(this,"updated video model: "+this.qb),Sa(this,64,32));Ta(this);ua(this)}; -f.aa=function(a,b){if(a&&!this.B&&J(this)){if(this.B=!0,this.l=L(b,"debugger"),this.F=L(b,"keyboard"))this.F.H("input","canvas","keyDown",this.Pb),this.F.H("input","canvas","keyPress",this.Pb),this.F.H("input","canvas","keyUp",this.Pb)}else!a&&this.B&&(this.B=!1)};f.O=function(){this.Nb||(this.Nb=Math.floor(this.kb.width/16));this.Ob||(this.Ob=Math.floor(this.kb.height/16));z.prototype.O.call(this)}; -f.G=function(a,b){var c=this.k.G(a);void 0!==b&&this.l&&S(this.l,this,a,b,this.l.zb);this.k.N(a,c&127|(Math.floor(Ga(this.k)/8333)&1?128:0))};f.N=function(a,b){void 0!==b&&this.l&&S(this.l,this,a,b,this.l.zb)}; -f.ie=function(a,b){if(void 0!==b){this.l&&S(this.l,this,a,b,this.l.zb,!0);this.tb(540);this.F&&this.F.tb(542);var c=this.k,d=c.ra,e=[],g=wa(d,this.Jb,this.Jb,this,this.ie);if(0<=g){e.push(d[g][0]);e.push(d[g][1]);d.splice(g,1);for(var k=65536,n=0,g=0;g<d.length;g++)k>d[g][0]&&(k=d[g][0]),n<d[g][1]&&(n=d[g][1]);e.push(k);e.push(n)}4==e.length&&(c.Kb=e[2],c.Lb=e[3])}};function Ta(a){a.jc=Array(a.Qa);for(var b=0;b<=a.Qa;b++)a.jc[b]=-1} -function ua(a){var b=0;if(a.B)for(;b<a.Qa;){var c=a.a[a.Wb+b];if(a.jc[b]!=c){var d=Math.floor(b/a.Ub);if(d>=a.Bd&&(d-=a.Bd,d<a.Kd)){var e=c*a.Nb;a.Ef.drawImage(a.kb,e%a.kb.width,Math.floor(e/a.kb.width)*a.Ob,a.Nb,a.Ob,b%a.Ub*a.xd,d*a.yd,a.xd,a.yd)}a.jc[b]=c}b++}} +z.prototype={toString:function(){return this.name?this.name:this.id||this.type},I:function(a,b,c,d){switch(c){case "clear":return this.r[c]||(this.r[c]=d,d.onclick=function(a){return function(){a.r.print&&(a.r.print.value="")}}(this)),!0;case "print":return this.r[c]||(this.sc=this.r[c]=d,d.value="",this.i=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.Xb=function(a, +b,c){this.i(a,"notice",c)}),!0;default:return!1}},log:function(){},i:function(){},status:function(a){this.i(this.Fd+": "+a)},Xb:function(a,b){b||u(a)},P:function(a){!this.jb&&(this.Tb=!1!==a)&&(this.name&&this.log("ready"),a=this.wc,this.wc=null,a&&a())}};function G(a,b){if(a.uc)return a.Sa&&(a.Sa=!1),a.uc=!1;if(a.jb)return a.i(a.toString()+" error"),!1;a.Sa=b;return a.Sa}function H(a,b){a.Sa&&(b?a.uc=!0:void 0===b&&a.i(a.toString()+" busy"));return a.Sa} +function I(a,b){b&&(a.Tb?b():a.wc=b);return a.Tb}function J(a,b){a.jb=!0;a.Xb("Fatal error: "+b)}function ia(a){var b=1;a.Gd&&(a=a.Gd.match(/\d+/),null!==a&&(b=parseInt(a[0],10)));return b}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);function K(a){z.call(this,"C1PPanel",a);this.C=!1}B(K);K.prototype.I=function(a,b,c,d){return this.N&&this.N.I(a,b,c,d)||this.l&&this.l.I(a,b,c,d)||this.G&&this.G.I(a,b,c,d)||this.m&&this.m.I(a,b,c,d)?!0:z.prototype.I.call(this,a,b,c,d)}; +K.prototype.ba=function(a,b){a&&!this.C&&(this.C=!0,this.N=b,this.l=L(b,"cpu"),this.G=L(b,"keyboard"),this.m=L(b,"debugger"),oa())};function oa(){for(var a=!1,b=F(window.document,"c1pjs","panel"),c=0;c<b.length;c++){var d=b[c],e=D(d),g=C(e.id);g||(a=!0,g=new K(e));E(g,d);a&&g.P()}}x(oa); +function pa(a){z.call(this,"C1PCPU",a);qa(this);this.ga=this.C=!1;this.Cd=a.autoStart;this.Hb=0;this.qd=1;this.Ma=2;this.speed=this.Hb;this.pb=1E6;this.Cc=this.Ec=30;this.Bc=5;this.Qf=1;this.mb=8;this.wd=["Slow","Fast","Max"];this.Df=["("+this.Qf+"Mhz)","(up to "+this.mb+"Mhz)","(unlimited)"];this.Ca=[];this.sa=[];this.nc=65536;this.oc=0;this.Lb=65536;this.Mb=0;this.qe=128;this.re=64;this.me=16;this.oe=8;this.pe=4;this.se=2;this.ne=1;this.zf=65532;this.Gb=32;this.gc=2;this.wf=0;this.pd=1;this.t=[this.Dg, +this.Xh,this.Oi,this.j,this.j,this.Zh,this.tg,this.j,this.bi,this.Wh,this.sg,this.j,this.j,this.Th,this.qg,this.j,this.Cg,this.Yh,this.j,this.j,this.j,this.$h,this.ug,this.j,this.Gg,this.Vh,this.j,this.j,this.j,this.Uh,this.rg,this.j,this.uh,this.mg,this.j,this.j,this.zg,this.og,this.hi,this.j,this.di,this.lg,this.gi,this.j,this.yg,this.ig,this.ei,this.j,this.Ag,this.ng,this.j,this.j,this.j,this.pg,this.ii,this.j,this.yi,this.kg,this.j,this.j,this.j,this.jg,this.fi,this.j,this.oi,this.ih,this.j,this.j, +this.j,this.kh,this.Qh,this.j,this.ai,this.hh,this.Ph,this.j,this.th,this.eh,this.Nh,this.j,this.Eg,this.jh,this.j,this.j,this.j,this.lh,this.Rh,this.j,this.Ig,this.gh,this.j,this.j,this.j,this.fh,this.Oh,this.j,this.pi,this.Vd,this.j,this.j,this.j,this.Xd,this.mi,this.j,this.ci,this.Ud,this.li,this.j,this.sh,this.Rd,this.ji,this.j,this.Fg,this.Wd,this.j,this.j,this.j,this.Yd,this.ni,this.j,this.Ai,this.Td,this.j,this.j,this.j,this.Sd,this.ki,this.j,this.j,this.Ei,this.j,this.j,this.Mi,this.Gi,this.Ji, +this.j,this.dh,this.j,this.Si,this.j,this.Li,this.Bi,this.Ii,this.j,this.vg,this.Fi,this.j,this.j,this.Ni,this.Hi,this.Ki,this.j,this.Ui,this.Di,this.Ti,this.j,this.j,this.Ci,this.j,this.j,this.Kh,this.zh,this.Fh,this.j,this.Lh,this.Bh,this.Gh,this.j,this.Qi,this.yh,this.Pi,this.j,this.Ih,this.vh,this.Dh,this.j,this.wg,this.Ah,this.j,this.j,this.Mh,this.Ch,this.Hh,this.j,this.Jg,this.xh,this.Ri,this.j,this.Jh,this.wh,this.Eh,this.j,this.Wg,this.Og,this.j,this.j,this.Xg,this.Qg,this.$g,this.j,this.rh, +this.Ng,this.bh,this.j,this.Vg,this.Kg,this.Yg,this.j,this.Bg,this.Pg,this.j,this.j,this.j,this.Rg,this.ah,this.j,this.Hg,this.Mg,this.j,this.j,this.j,this.Lg,this.Zg,this.j,this.Tg,this.ce,this.j,this.j,this.Ug,this.ee,this.oh,this.j,this.qh,this.be,this.Sh,this.j,this.Sg,this.Zd,this.mh,this.j,this.xg,this.de,this.j,this.j,this.j,this.fe,this.ph,this.j,this.zi,this.ae,this.j,this.j,this.j,this.$d,this.nh,this.j];this.Cf=[7,6,0,0,0,3,5,0,3,2,2,0,0,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,3,6,0,0,3, +3,5,0,4,2,2,0,4,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,6,6,0,0,0,3,5,0,3,2,2,0,3,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,6,6,0,0,0,3,5,0,4,2,2,0,5,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,0,6,0,0,3,3,3,0,2,0,2,0,4,4,4,0,2,5,0,0,4,4,4,0,2,4,2,0,0,4,0,0,2,6,2,0,3,3,3,0,2,2,2,0,4,4,4,0,2,5,0,0,4,4,4,0,2,4,2,0,4,4,4,0,2,6,0,0,3,3,5,0,2,2,2,0,4,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,2,6,0,0,3,3,5,0,2,2,2,0,4,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0]}B(pa);f=pa.prototype; +f.reset=function(a){this.ga&&this.T();qa(this);var b=this.zf;this.d=this.a[b]|this.a[b+1]<<8;this.jb=!1;this.m?this.m.reset():a&&(!0===this.Cd||null===this.Cd&&!this.m&&void 0===this.r.run)&&this.ya()}; +f.I=function(a,b,c,d){a=!1;switch(c){case "run":this.r[c]=d;d.onclick=function(a){return function(){a.ga?a.T():a.ya()}}(this);a=!0;break;case "A":case "X":case "Y":case "S":case "PC":case "C":case "Z":case "I":case "D":case "B":case "V":case "N":case "speed":this.r[c]=d;a=!0;break;case "setSpeed":this.r[c]=d,d.onclick=function(a){return function(){M(a,a.speed>=a.Ma?a.Hb:a.speed+1,!0)}}(this),a=!0}return a}; +f.V=function(a,b,c){this.a=a;this.$=b;this.rc=c-b+1;this.Ya=this.$+this.rc;this.$?u("unsupported CPU address buffer offset ("+this.$+")"):this.P()};f.ba=function(a,b){if(a&&!this.C){this.N=b;(this.m=L(b,"debugger"))&&this.m.Nf();var c=L(b,"video");c&&(this.tc=function(a){return function(){ra(a)}}(c),this.W=function(a){return function(){a.W()}}(c));this.C=!0;this.reset(!0);this.update()}};function sa(a,b,c,d,e){0>ta(a.Ca,b,c,d,e)&&(a.nc>b&&(a.nc=b),a.oc<c&&(a.oc=c),a.Ca.push([b,c,d,e]))} +function ua(a,b,c){for(var d=0;d<a.Ca.length;d++)b>=a.Ca[d][0]&&b<=a.Ca[d][1]&&a.Ca[d][3].call(a.Ca[d][2],b,c)}function N(a,b,c,d,e){0>ta(a.sa,b,c,d,e)&&(a.Lb>b&&(a.Lb=b),a.Mb<c&&(a.Mb=c),a.sa.push([b,c,d,e]))}function va(a,b,c){for(var d=0;d<a.sa.length;d++)b>=a.sa[d][0]&&b<=a.sa[d][1]&&a.sa[d][3].call(a.sa[d][2],b,c)}function ta(a,b,c,d,e){for(var g=0;g<a.length;g++)if(a[g][0]==b&&a[g][1]==c&&a[g][2]==d&&a[g][3]==e)return g;return-1} +function M(a,b,c){void 0!==b&&(a.speed=b,a.r.setSpeed&&(a.r.setSpeed.innerHTML=a.wd[2<=b?0:b+1]),a.i("running at "+a.wd[b].toLowerCase()+" speed "+a.Df[b]),c&&a.W());a.Xa=0;a.Hd=r();xa(a)}f.tc=function(){};f.W=function(){};function O(a,b,c,d){void 0!==a.r[b]&&(void 0===d&&(d=1),c="0000"+c.toString(16),a.r[b].innerHTML=c.slice(c.length-d).toUpperCase())} +function ya(a){O(a,"A",a.e,2);O(a,"X",a.n,2);O(a,"Y",a.p,2);var b=za(a);O(a,"C",b&a.ne?1:0);O(a,"Z",b&a.se?1:0);O(a,"I",b&a.pe?1:0);O(a,"D",b&a.oe?1:0);O(a,"B",b&a.me?1:0);O(a,"V",b&a.re?1:0);O(a,"N",b&a.qe?1:0);O(a,"S",a.q,4);O(a,"PC",a.d,4);a.r.speed&&a.ua&&(a.r.speed.innerHTML=a.ua.toFixed(1)+"Mhz")} +function xa(a,b){var c=a.Ec;c<a.Cc&&(c=a.Cc);c<a.Bc&&(c=a.Bc);var d=1;b&&a.speed>a.Hb&&a.ua&&(d=a.ua);d>a.mb&&a.speed<a.Ma&&(d=a.mb);a.Sf=Math.round(1E3/a.Ec);a.Wb=Math.floor(a.pb/c*d);a.xc=Math.floor(a.pb/a.Ec*d);a.Jd=Math.floor(a.pb/a.Cc*d);a.Id=Math.floor(a.pb/a.Bc*d);b||(a.Va=a.xc,a.ob=a.Jd,a.nb=a.Id);a.Ac=0} +function Aa(a){var b=r(),c=a.Sf;a.qb&&(c=Math.round(c*a.qb/a.xc));c-=b-a.Vf;if(b-=a.Hd)a.ua=Math.round(a.Xa/(100*b))/10,864E5<=b&&M(a);0>c?c=0:a.speed==a.qd?a.ua<=a.mb&&(c=0):a.speed==a.Ma&&(c=0);a.Ac+=a.qb;return c} +f.ya=function(){if(G(this,!0)){this.ga||(M(this),this.N&&this.N.start(),this.ga=!0,this.r.run&&(this.r.run.innerHTML="Halt"),this.W());this.Ac>=this.pb&&xa(this,!0);this.qb=0;this.Vf=r();try{do{this.step(this.Wb);var a=this.va-this.F;this.Xa+=a;this.qb+=a;this.va=this.F=0;this.ob-=this.Wb;0>=this.ob&&(this.ob+=this.Jd,this.tc());this.nb-=this.Wb;0>=this.nb&&(this.nb+=this.Id,ya(this));this.Va-=this.Wb;if(0>=this.Va){this.Va+=this.xc;break}}while(this.ga)}catch(b){this.T();this.update();G(this,!1); +J(this,b.message||b);return}setTimeout(function(a){return function(){a.ya()}}(this),Aa(this))}else this.update(),this.N&&this.N.stop(this.Hd,this.Xa)}; +f.step=function(a){var b=!0;this.b=this.h=-1;var c;if(c=a)if(c=this.m)c=this.m,c=0<c.ra.length||0<c.Ba.length||0<c.Ea.length;this.va=this.F=a;do{a=this.a[this.d];var d;if(d=c){d=this.m;var e=a,g=!1;Ba(d,this.d,d.ra,"exec")?g=!0:(d.Pa++,d.fa[e][1]++,d.Da[d.kb++]=d.l.d,d.kb>=d.Da.length&&(d.kb=0));d=!!g}if(d){b=void 0;this.T();break}this.d++;this.t[a].call(this);if(0<=this.b){this.b>=this.nc&&this.b<=this.oc&&ua(this,this.b,this.d);if(d=c)d=this.m,e=!1,Ba(d,this.b,d.Ba,"read")&&(e=!0),d=!!e;if(d){b= +!1;this.T();break}this.b=-1}else if(0<=this.h){this.h>=this.Lb&&this.h<=this.Mb&&va(this,this.h,this.d);if(d=c){d=this.m;var e=this.h,g=this.a[this.h],h=!1;(g&255)!=g&&(d.i("invalid value at "+q(e)+": "+g),h=!0);Ba(d,e,d.Ea,"write")&&(h=!0);d=!!h}if(d){b=!1;this.T();break}this.h=-1}this.F-=this.Cf[a]}while(0<this.F);return b};function Ca(a){a.Va=0;a.va-=a.F;a.F=0}f.T=function(){H(this,!0);this.va-=this.F;this.F=0;this.ga&&(this.ga=!1,this.r.run&&(this.r.run.innerHTML="Run"))}; +f.update=function(){this.tc();ya(this)};function Da(a){return a.ga?a.Xa+a.va-a.F:0}f.H=function(a){return this.a[a]};f.O=function(a,b){this.a[a]=b};function za(a){var b=a.c&256?1:0,b=b|(a.g&255?0:2),b=b|((a.u&255^a.v^a.u>>1)&128?64:0),b=b|(a.f&128?128:0);return a.w&60|b} +function Ea(a){a.w|=8;a.t[97]=a.eg;a.t[101]=a.gg;a.t[105]=a.dg;a.t[109]=a.ag;a.t[113]=a.fg;a.t[117]=a.hg;a.t[121]=a.cg;a.t[125]=a.bg;a.t[225]=a.ui;a.t[229]=a.wi;a.t[233]=a.ti;a.t[237]=a.qi;a.t[241]=a.vi;a.t[245]=a.xi;a.t[249]=a.si;a.t[253]=a.ri}function Fa(a){a.w&=-9;a.t[97]=a.Vd;a.t[101]=a.Xd;a.t[105]=a.Ud;a.t[109]=a.Rd;a.t[113]=a.Wd;a.t[117]=a.Yd;a.t[121]=a.Td;a.t[125]=a.Sd;a.t[225]=a.ce;a.t[229]=a.ee;a.t[233]=a.be;a.t[237]=a.Zd;a.t[241]=a.de;a.t[245]=a.fe;a.t[249]=a.ae;a.t[253]=a.$d} +function P(a,b,c){var d=a.c&256?1:0,e=(b&15)+(c&15)+d;10<=e&&(e=e+6&15|16);e+=(b&240)+(c&240);a.v=b^c;a.u=e;a.f=e&255;160<=e&&(e+=96);512<=e&&(e-=256);a.c=e;a.g=b+c+d&255;a.F--;return e&255}function Q(a,b,c){var d=a.c&256?0:1,e=(b&15)-(c&15)-d;0>e&&(e=(e-6&15)-16);e+=(b&240)-(c&240);0>e&&(e-=96);a.f=a.g=(a.c=b-c-d)&255;a.v=b^c;a.u=a.c;a.c^=256;a.F--;return e&255}function qa(a){a.e=0;a.n=0;a.p=0;a.q=256;a.w=0;a.f=0;a.g=0;a.v=0;a.u=0;a.c=0;a.d=0;a.b=-1;a.h=-1;a.ua=0;a.Xa=a.va=a.F=0} +f.Dg=function(){this.d++;this.a[this.q--]=this.d>>8;this.q|=256;this.a[this.q--]=this.d&255;this.q|=256;this.w|=16;this.w=za(this);this.a[this.q--]=this.w;this.q|=256;this.w&=239;this.b=65534;this.d=this.a[this.b]|this.a[this.b+1]<<8};f.Xh=function(){this.b=this.a[this.d++]+this.n&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e|=this.a[this.b]};f.Zh=function(){this.b=this.a[this.d++];this.f=this.g=this.e|=this.a[this.b]}; +f.tg=function(){this.h=this.a[this.d++];this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};f.bi=function(){this.w=za(this);this.a[this.q--]=this.w;this.q|=256};f.Wh=function(){this.b=this.d++;this.f=this.g=this.e|=this.a[this.b]};f.sg=function(){this.c=this.e<<1;this.f=this.g=this.e=this.c&255};f.Th=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e|=this.a[this.b]}; +f.qg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};f.Cg=function(){this.d+=(this.f&128?0:(this.F--,this.a[this.d]<<24>>24))+1};f.Yh=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.p;this.f=this.g=this.e|=this.a[this.b]};f.$h=function(){this.b=this.a[this.d++]+this.n&255;this.f=this.g=this.e|=this.a[this.b]}; +f.ug=function(){this.h=this.a[this.d++]+this.n&255;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};f.Gg=function(){this.c=0};f.Vh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.f=this.g=this.e|=this.a[this.b]};f.Uh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.f=this.g=this.e|=this.a[this.b]};f.rg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255}; +f.uh=function(){this.b=this.d++;this.a[this.q--]=this.d>>8;this.q|=256;this.a[this.q--]=this.d&255;this.q|=256;this.d=this.a[this.b]|this.a[this.b+1]<<8};f.mg=function(){this.b=this.a[this.d++]+this.n&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e&=this.a[this.b]};f.zg=function(){this.b=this.a[this.d++];this.g=this.e&this.a[this.b];this.f=this.f&127|this.a[this.b]&128;this.u=0;this.v=this.a[this.b]&64?128:0};f.og=function(){this.b=this.a[this.d++];this.f=this.g=this.e&=this.a[this.b]}; +f.hi=function(){this.h=this.a[this.d++];this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.di=function(){this.q=this.q+1&255|256;this.w=this.a[this.q];this.c=this.w&1?256:0;this.g=this.w&2?0:1;this.f=this.w&128;this.u=0;this.v=this.w&64?128:0};f.lg=function(){this.b=this.d++;this.f=this.g=this.e&=this.a[this.b]}; +f.gi=function(){this.c=this.c&65280|this.e;this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.e=this.c&255};f.yg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.g=this.e&this.a[this.b];this.f=this.f&127|this.a[this.b]&128;this.u=0;this.v=this.a[this.b]&64?128:0};f.ig=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e&=this.a[this.b]}; +f.ei=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.Ag=function(){this.d+=(this.f&128?(this.F--,this.a[this.d]<<24>>24):0)+1};f.ng=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.p;this.f=this.g=this.e&=this.a[this.b]};f.pg=function(){this.b=this.a[this.d++]+this.n&255;this.f=this.g=this.e&=this.a[this.b]}; +f.ii=function(){this.h=this.a[this.d++]+this.n&255;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.yi=function(){this.c=256};f.kg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.f=this.g=this.e&=this.a[this.b]};f.jg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.f=this.g=this.e&=this.a[this.b]}; +f.fi=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};f.oi=function(){this.q=this.q+1&255|256;this.w=this.a[this.q];this.c=this.w&1?256:0;this.g=this.w&2?0:1;this.f=this.w&128;this.u=0;this.v=this.w&64?128:0;this.q=this.q+2&255|256;this.d=this.a[this.q-1|256]|this.a[this.q]<<8}; +f.ih=function(){this.b=this.a[this.d++]+this.n&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e^=this.a[this.b]};f.kh=function(){this.b=this.a[this.d++];this.f=this.g=this.e^=this.a[this.b]};f.Qh=function(){this.h=this.a[this.d++];this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255};f.ai=function(){this.a[this.q--]=this.e;this.q|=256};f.hh=function(){this.b=this.d++;this.f=this.g=this.e^=this.a[this.b]}; +f.Ph=function(){this.c=this.c&65279|(this.e&1?256:0);this.e=(this.c=this.c&65280|this.e>>1)&255;this.f=this.g=this.c&255};f.th=function(){this.b=this.d;this.d=this.a[this.b]|this.a[this.b+1]<<8};f.eh=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e^=this.a[this.b]};f.Nh=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; +f.Eg=function(){this.d+=((this.u&255^this.v^this.u>>1)&128?0:(this.F--,this.a[this.d]<<24>>24))+1};f.jh=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.p;this.f=this.g=this.e^=this.a[this.b]};f.lh=function(){this.b=this.a[this.d++]+this.n&255;this.f=this.g=this.e^=this.a[this.b]};f.Rh=function(){this.h=this.a[this.d++]+this.n&255;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; +f.Ig=function(){this.w&=251};f.gh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.f=this.g=this.e^=this.a[this.b]};f.fh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.f=this.g=this.e^=this.a[this.b]};f.Oh=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; +f.pi=function(){this.q=this.q+2&255|256;this.d=(this.a[this.q-1|256]|this.a[this.q]<<8)+1};f.Vd=function(){this.b=this.a[this.d++]+this.n&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255};f.eg=function(){this.b=this.a[this.d++]+this.n&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.e=P(this,this.e,this.a[this.b])}; +f.Xd=function(){this.b=this.a[this.d++];this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255};f.gg=function(){this.b=this.a[this.d++];this.e=P(this,this.e,this.a[this.b])};f.mi=function(){this.h=this.a[this.d++];this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};f.ci=function(){this.q=this.q+1&255|256;this.f=this.g=this.e=this.a[this.q]}; +f.Ud=function(){this.b=this.d++;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255};f.dg=function(){this.b=this.d++;this.e=P(this,this.e,this.a[this.b])};f.li=function(){this.c=this.c&65280|this.e;this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.e=this.c&255};f.sh=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.d=this.a[this.b]|this.a[this.b+1]<<8}; +f.Rd=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255};f.ag=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.e=P(this,this.e,this.a[this.b])};f.ji=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255}; +f.Fg=function(){this.d+=((this.u&255^this.v^this.u>>1)&128?(this.F--,this.a[this.d]<<24>>24):0)+1};f.Wd=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.p;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255};f.fg=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.p;this.e=P(this,this.e,this.a[this.b])}; +f.Yd=function(){this.b=this.a[this.d++]+this.n&255;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255};f.hg=function(){this.b=this.a[this.d++]+this.n&255;this.e=P(this,this.e,this.a[this.b])};f.ni=function(){this.h=this.a[this.d++]+this.n&255;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};f.Ai=function(){this.w|=4}; +f.Td=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255};f.cg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.e=P(this,this.e,this.a[this.b])};f.Sd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255}; +f.bg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.e=P(this,this.e,this.a[this.b])};f.ki=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};f.Ei=function(){this.h=this.a[this.d++]+this.n&255;this.h=this.a[this.h]|this.a[this.h+1]<<8;this.a[this.h]=this.e};f.Mi=function(){this.h=this.a[this.d++];this.a[this.h]=this.p}; +f.Gi=function(){this.h=this.a[this.d++];this.a[this.h]=this.e};f.Ji=function(){this.h=this.a[this.d++];this.a[this.h]=this.n};f.dh=function(){this.f=this.g=this.p=this.p-1&255};f.Si=function(){this.f=this.g=this.e=this.n};f.Li=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.p};f.Bi=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.e};f.Ii=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.n}; +f.vg=function(){this.d+=(this.c&256?0:(this.F--,this.a[this.d]<<24>>24))+1};f.Fi=function(){this.h=this.a[this.d++];this.h=(this.a[this.h]|this.a[this.h+1]<<8)+this.p;this.a[this.h]=this.e};f.Ni=function(){this.h=this.a[this.d++]+this.n&255;this.a[this.h]=this.p};f.Hi=function(){this.h=this.a[this.d++]+this.n&255;this.a[this.h]=this.e};f.Ki=function(){this.h=this.a[this.d++]+this.p&255;this.a[this.h]=this.n};f.Ui=function(){this.f=this.g=this.e=this.p}; +f.Di=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.a[this.h]=this.e};f.Ti=function(){this.q=this.n|256};f.Ci=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.a[this.h]=this.e};f.Kh=function(){this.b=this.d++;this.f=this.g=this.p=this.a[this.b]};f.zh=function(){this.b=this.a[this.d++]+this.n&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e=this.a[this.b]};f.Fh=function(){this.b=this.d++;this.f=this.g=this.n=this.a[this.b]}; +f.Lh=function(){this.b=this.a[this.d++];this.f=this.g=this.p=this.a[this.b]};f.Bh=function(){this.b=this.a[this.d++];this.f=this.g=this.e=this.a[this.b]};f.Gh=function(){this.b=this.a[this.d++];this.f=this.g=this.n=this.a[this.b]};f.Qi=function(){this.f=this.g=this.p=this.e};f.yh=function(){this.b=this.d++;this.f=this.g=this.e=this.a[this.b]};f.Pi=function(){this.f=this.g=this.n=this.e};f.Ih=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.p=this.a[this.b]}; +f.vh=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e=this.a[this.b]};f.Dh=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.n=this.a[this.b]};f.wg=function(){this.d+=(this.c&256?(this.F--,this.a[this.d]<<24>>24):0)+1};f.Ah=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.p;this.f=this.g=this.e=this.a[this.b]};f.Mh=function(){this.b=this.a[this.d++]+this.n&255;this.f=this.g=this.p=this.a[this.b]}; +f.Ch=function(){this.b=this.a[this.d++]+this.n&255;this.f=this.g=this.e=this.a[this.b]};f.Hh=function(){this.b=this.a[this.d++]+this.p&255;this.f=this.g=this.n=this.a[this.b]};f.Jg=function(){this.v=this.u=0};f.xh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.f=this.g=this.e=this.a[this.b]};f.Ri=function(){this.f=this.g=this.n=this.q&255};f.Jh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.f=this.g=this.p=this.a[this.b]}; +f.wh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.f=this.g=this.e=this.a[this.b]};f.Eh=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.f=this.g=this.n=this.a[this.b]};f.Wg=function(){this.b=this.d++;this.f=this.g=this.c=this.p-this.a[this.b];this.c^=256};f.Og=function(){this.b=this.a[this.d++]+this.n&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256}; +f.Xg=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.p-this.a[this.b];this.c^=256};f.Qg=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.$g=function(){this.h=this.a[this.d++];this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.rh=function(){this.f=this.g=this.p=this.p+1&255};f.Ng=function(){this.b=this.d++;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.bh=function(){this.f=this.g=this.n=this.n-1&255}; +f.Vg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.p-this.a[this.b];this.c^=256};f.Kg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Yg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.Bg=function(){this.d+=(this.g&255?(this.F--,this.a[this.d]<<24>>24):0)+1}; +f.Pg=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.p;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Rg=function(){this.b=this.a[this.d++]+this.n&255;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.ah=function(){this.h=this.a[this.d++]+this.n&255;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.Hg=function(){Fa(this)}; +f.Mg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Lg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};f.Zg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};f.Tg=function(){this.b=this.d++;this.f=this.g=this.c=this.n-this.a[this.b];this.c^=256}; +f.ce=function(){this.b=this.a[this.d++]+this.n&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ui=function(){this.b=this.a[this.d++]+this.n&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.e=Q(this,this.e,this.a[this.b])};f.Ug=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.n-this.a[this.b];this.c^=256}; +f.ee=function(){this.b=this.a[this.d++];this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.wi=function(){this.b=this.a[this.d++];this.e=Q(this,this.e,this.a[this.b])};f.oh=function(){this.h=this.a[this.d++];this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};f.qh=function(){this.f=this.g=this.n=this.n+1&255}; +f.be=function(){this.b=this.d++;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ti=function(){this.b=this.d++;this.e=Q(this,this.e,this.a[this.b])};f.Sh=function(){};f.Sg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.n-this.a[this.b];this.c^=256}; +f.Zd=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.qi=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.e=Q(this,this.e,this.a[this.b])};f.mh=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};f.xg=function(){this.d+=(this.g&255?0:(this.F--,this.a[this.d]<<24>>24))+1}; +f.de=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.p;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.vi=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.p;this.e=Q(this,this.e,this.a[this.b])}; +f.fe=function(){this.b=this.a[this.d++]+this.n&255;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.xi=function(){this.b=this.a[this.d++]+this.n&255;this.e=Q(this,this.e,this.a[this.b])};f.ph=function(){this.h=this.a[this.d++]+this.n&255;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};f.zi=function(){Ea(this)}; +f.ae=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.si=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.p;this.e=Q(this,this.e,this.a[this.b])}; +f.$d=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.u=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};f.ri=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.e=Q(this,this.e,this.a[this.b])};f.nh=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.n;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255}; +f.Oi=function(){var a;a=this.a[this.d++];switch(a){case this.wf:this.i("HALT");this.T();break;case this.pd:a=this.d;for(var b="";a<this.a.length;){var c=this.a[a++];if(!c)break;b+=String.fromCharCode(c)}this.d=a;b=b.replace(/%A/g,n(this.e)).replace(/%X/g,n(this.n)).replace(/%Y/g,n(this.p));this.i(b);Ca(this);break;default:this.d-=2,this.i("undefined opSim: "+n(a)+" at "+q(this.d)),this.T()}};f.j=function(){var a=this.a[--this.d];this.i("undefined opcode: "+n(a)+" at "+q(this.d));this.T()}; +x(function(){for(var a=F(window.document,"c1pjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new pa(d);E(d,c)}});function R(a){z.call(this,"C1PROM",a);this.ta=this.a=null;this.Qa=a.size;if(this.tb=a.image){a=this.tb;var b;b=this.tb;var c="",d=b.lastIndexOf(".");0<=d&&(c=b.substr(d+1).toLowerCase());b=c;"json"!=b&&"hex"!=b&&(a="http://"+window.location.host+"/api/v1/dump?file="+this.tb);t(a,!0,null,this,this.If)}}B(R); +R.prototype.V=function(a,b,c,d){this.a=a;this.Gc=b;a=c-b+1;this.Qa||(this.Qa=a);a!=this.Qa?J(this,"computer-specified ROM size ("+q(a)+") does not match component-specified size ("+q(this.Qa)+")"):(d&&(this.l=d,N(d,b,c,this,this.O)),Ga(this))};R.prototype.ba=function(a,b){a&&!this.C&&(this.C=!0,this.m=L(b,"debugger"))};R.prototype.O=function(a,b){if(void 0!==b){this.m&&S(this.m,this,a,b,this.m.dc,!0);var c=a-this.Gc;this.a[this.Gc+c]=this.ta?this.ta[c]:0}}; +R.prototype.If=function(a,b,c){if(c)this.i("ROM load error ("+c+")");else{if("["==b[0])try{this.ta=eval("("+b+")")}catch(d){this.i("ROM data error: "+(d.message||d));return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.ta=Array(a.length),b=0;b<a.length;b++)this.ta[b]=parseInt(a[b],16);Ga(this)}}; +function Ga(a){if(!I(a))if(!a.tb)a.P();else if(a.ta&&a.a){var b=a.ta.length;if(b!=a.Qa)J(a,"ROM image size ("+q(b)+") does not match component-specified size ("+q(a.Qa)+")");else{for(var c=0;c<b;c++)a.a[a.Gc+c]=a.ta[c];a.P()}}}x(function(){for(var a=F(window.document,"c1pjs","rom"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new R(d);E(d,c)}});function Ha(a){z.call(this,"C1PRAM",a)}B(Ha);Ha.prototype.V=function(a){this.a=a;this.P()}; +x(function(){for(var a=F(window.document,"c1pjs","ram"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new Ha(d);E(d,c)}}); +function Ia(a){z.call(this,"C1PKeyboard",a);this.C=!1;this.yc=a.model;this.Qc=8;this.Ge=9;this.Ee=10;this.De=13;this.Fe=16;this.Ce=17;this.ze=18;this.Ae=20;this.Rc=27;this.Be=91;this.we=this.Qc;this.xe=this.Ee;this.te=this.De;this.Lc=this.Rc;this.S=224;this.o=this.Fe+this.S;this.zb=this.Ce+this.S;this.cc=this.ze+this.S;this.Mc=this.Ae+this.S;this.Kc=0+this.S;this.ue=3;this.ve=15;this.yb=1;this.xb=2;this.wb=4;this.$a=8;this.vb=64;this.bc=this.xb|this.wb|this.vb;this.od=0;this.uf=1;this.tf=2;this.vf= +3;this.sf=4;this.Wf=8192;this.Tf=250;this.Uf=100;this.Rf=300;this.Na=[];this.Na["break"]=this.Kc;this.Na.esc=this.Lc;this.Na["ctrl-c"]=this.ue;this.Na["ctrl-o"]=this.ve;this.k=[];this.k[49]=30464;this.k[33]=30464+this.o;this.k[50]=30208;this.k[34]=30208+this.o;this.k[51]=29952;this.k[35]=29952+this.o;this.k[52]=29696;this.k[36]=29696+this.o;this.k[53]=29440;this.k[37]=29440+this.o;this.k[54]=29184;this.k[38]=29184+this.o;this.k[55]=28928;this.k[39]=28928+this.o;this.k[56]=26368;this.k[40]=26368+this.o; +this.k[57]=26112;this.k[41]=26112+this.o;this.k[48]=25856;this.k[58]=25600;this.k[42]=25600+this.o;this.k[45]=25344;this.k[61]=25344+this.o;this.k[46]=22272;this.k[62]=22272+this.o;this.k[108]=22016;this.k[76]=22016+this.o;this.k[92]=22016+this.o;this.k[111]=21760;this.k[79]=21760+this.o;this.k[this.we]=21760+this.o;this.k[this.xe]=21504;this.k[this.te]=21248;this.k[119]=18176;this.k[87]=18176+this.o;this.k[101]=17920;this.k[69]=17920+this.o;this.k[114]=17664;this.k[82]=17664+this.o;this.k[116]=17408; +this.k[84]=17408+this.o;this.k[121]=17152;this.k[89]=17152+this.o;this.k[117]=16896;this.k[85]=16896+this.o;this.k[105]=16640;this.k[73]=16640+this.o;this.k[115]=14080;this.k[83]=14080+this.o;this.k[100]=13824;this.k[68]=13824+this.o;this.k[102]=13568;this.k[70]=13568+this.o;this.k[103]=13312;this.k[71]=13312+this.o;this.k[104]=13056;this.k[72]=13056+this.o;this.k[106]=12800;this.k[74]=12800+this.o;this.k[107]=12544;this.k[75]=12544+this.o;this.k[91]=12544+this.o;this.k[120]=9984;this.k[88]=9984+ +this.o;this.k[99]=9728;this.k[67]=9728+this.o;this.k[118]=9472;this.k[86]=9472+this.o;this.k[98]=9216;this.k[66]=9216+this.o;this.k[110]=8960;this.k[78]=8960+this.o;this.k[94]=8960+this.o;this.k[109]=8704;this.k[77]=8704+this.o;this.k[93]=8704+this.o;this.k[44]=8448;this.k[60]=8448+this.o;this.k[113]=5888;this.k[81]=5888+this.o;this.k[97]=5632;this.k[65]=5632+this.o;this.k[122]=5376;this.k[90]=5376+this.o;this.k[32]=5120;this.k[47]=4864;this.k[63]=4864+this.o;this.k[59]=4608;this.k[43]=4608+this.o; +this.k[112]=4352;this.k[80]=4352+this.o;this.k[64]=4352+this.o;this.k[this.zb]=1536;this.k[this.Lc]=1280;this.k[this.o]=512;this.k[this.cc]=256;this.k[this.Mc]=0;this.reset()}B(Ia);f=Ia.prototype;f.reset=function(){this.ub(this.yc);this.A=this.yb;this.yd=0;this.M=[this.yb,0,0,0,0,0,0,0];this.kc=[];if(this.da)for(var a in this.da)isNaN(a)||this.da[a]&&clearTimeout(this.da[a]);this.da=[];this.ge=this.xa=0;this.zd=-1;this.xd=this.M;this.Kd=this.Dc=0;this.Ja=""}; +f.I=function(a,b,c,d){if(void 0===this.r[c])switch(c){case "keyDown":return this.r[c]=d,d.onkeydown=function(a){return function(b){return Ja(a,b,!0)}}(this),!0;case "keyPress":return this.r[c]=d,d.onkeypress=function(a){return function(b){var c=!0;b=b||window.event;b=b.which||b.keyCode;a.Ja="";a.A&a.$a?a.A&=~a.$a:c=!Ka(a,b);a.m&&T(a.m,a.m.za)&&a.m.message("keyPress("+n(b)+"): "+(c?"pass":"consume"));return c}}(this),!0;case "keyUp":return this.r[c]=d,d.onkeyup=function(a){return function(b){return Ja(a, +b,!1)}}(this),!0;case "break":return this.r[c]=d,d.onclick=function(a){return function(){a.N&&a.N.reset(!0)}}(this),!0;default:if(void 0!==this.Na[c])return this.r[c]=d,d.onclick=function(a,b,c){return function(){a.l&&a.l.W();return!Ka(a,c)}}(this,c,this.Na[c]),!0}return!1};f.V=function(a,b,c,d){this.a=a;this.Pd=b;this.Ef=c-b+1;this.$f=this.Pd+this.Ef;d&&(this.l=d,N(d,b,c,this,this.O));this.P()};f.ub=function(a){this.rb=a;this.qc=255;600!=this.rb&&(this.qc=0,this.i("updated keyboard model: "+this.rb))}; +f.ba=function(a,b){a&&!this.C&&(this.C=!0,this.N=b,this.m=L(b,"debugger"))};f.P=function(){this.vc=(this.Mf=v("iOS"))||v("Android");this.m&&T(this.m,this.m.za)&&this.m.message("mobile keyboard support: "+(this.vc?"true":"false")+" ("+window.navigator.userAgent+")");z.prototype.P.call(this)};function La(a,b){var c=b?a.Uf:a.Tf;a.l&&a.l.ua&&(c/=a.l.ua);return c} +function Ma(a,b){!a.xa||void 0!==b&&b==a.xa||(a.m&&T(a.m,a.m.za)&&a.m.message("autoClear("+n(a.xa)+")"),clearTimeout(a.da[a.xa]),U(a,a.xa,!1,a.sf))}function V(a,b,c){a.Ja=b;Na(a,c||a.Rf)}function Na(a,b){if(0<a.Ja.length){var c=a.Ja.charCodeAt(0);10==c&&(c=13);65<=c&&90>=c&&(c+=32);a.Ja=a.Ja.substr(1);Ka(a,c)}0<a.Ja.length&&setTimeout(function(a){return function(){Na(a,b)}}(a),b)} +function Ja(a,b,c){var d,e=!c;b=b.keyCode;c&&(a.ge=b);b==a.o-a.S?(a.A&=~a.wb,c&&(a.A|=a.wb),b+=a.S,e=!1):b==a.cc-a.S?(a.A&=~a.xb,c&&(a.A|=a.xb),b+=a.S,e=!1):b==a.zb-a.S?(a.A&=~a.vb,c&&(a.A|=a.vb),b+=a.S,e=!1):b==a.Mc-a.S?(c=!c,a.A&=~a.yb,c&&(a.A|=a.yb),b+=a.S,e=!1):b==a.Be?(a.A&=~a.$a,c&&(a.A|=a.$a),e=!1,d=!0):d=b==a.Ge?e=!1:b==a.Rc||b==a.Qc?c?!Ka(a,b):!1:!0;e&&(a.A&=~a.$a,a.vc||b!=a.ge||Ma(a));void 0===d&&(d=!U(a,b,c,a.tf));a.m&&T(a.m,a.m.za)&&a.m.message("key"+(c?"Down":"Up")+"("+n(b)+"): "+(d? +"pass":"consume"));return d}function Ka(a,b){var c=!1;b==a.Kc?a.N&&(a.N.reset(!0),c=!0):(a.vc&&65<=b&&90>=b&&(b+=32),Ma(a,b),U(a,b,!0,a.od)&&(a.l.speed==a.l.Ma?U(a,b,!1,a.uf):(c=!1,a.da[b]&&(clearTimeout(a.da[b]),c=!0),c=La(a,c),a.da[a.xa=b]=setTimeout(function(a){return function(){U(a,b,!1,a.vf)}}(a),c),a.m&&T(a.m,a.m.za)&&a.m.message("keyPressSimulate("+n(b)+"): setTimeout()")),c=!0));a.m&&T(a.m,a.m.za)&&a.m.message("keyPressSimulate("+n(b)+"): "+(c?"true":"false"));return c} +function U(a,b,c,d){var e=!1;c||(a.da[b]=null,a.xa==b&&(a.xa=0));var g=0,h=a.k[b];void 0===h&&(1<=b&&26>=b&&(b+=64,g=a.zb),h=a.k[b]);void 0!==h&&(b=h>>12,e=h>>8&15,g||(g=h&255),c?(a.M[b]|=1<<e,a.M[0]=g==a.zb?a.M[0]|a.vb:g==a.o?a.M[0]|a.wb:g==a.cc?a.M[0]|a.xb:a.M[0]&~a.bc):(a.M[b]&=~(1<<e),a.M[0]&=~a.bc,a.M[0]|=a.A&a.bc),c=d==a.od&&!a.kc.length,a.kc.push(a.M.slice()),a.ac(c),e=!0);return e}f.H=function(){};f.O=function(a){var b=this.l.H(a);this.yd=b^this.qc;this.Dc++;this.ac(!1,a,b)}; +f.ac=function(a,b){var c=Da(this.l);if(!a)if(this.l.speed==this.l.Ma)a=void 0!==b&&32<=this.Dc;else{var d=c-this.Kd;a=0>d||d>=this.Wf}a&&(d=this.kc.shift(),void 0!==d&&(this.xd=d),this.Dc=0,this.Kd=c);for(d=c=0;8>d;d++)this.yd&1<<d&&(c|=this.xd[d]);c^=this.qc;if(void 0!==b)this.a[b]=c;else if(b=this.Pd,c!=this.zd)for(d=b;d<this.$f;d++)this.a[d]=c;this.zd=c};x(function(){for(var a=F(window.document,"c1pjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new Ia(d);E(d,c)}}); +function Oa(a,b,c,d){z.call(this,"C1PVideo",a);this.yc=a.model;this.Ld=a.charCols;this.Md=a.charRows;this.Jf=a.screenWidth;this.Kf=a.screenHeight;this.Ob=a.charWidth;this.Pb=a.charHeight;Pa(this);this.Qb=b;this.Hf=c;this.lb=d;this.ib=56832}B(Oa);f=Oa.prototype;f.reset=function(a){this.ub(this.yc);if(this.a)for(var b=this.Yb;b<this.Hc;b++)this.a[b]=a?Math.floor(256*Math.random()):32}; +f.I=function(a,b,c,d){switch(c){case "refresh":return this.r[c]=d,d.onclick=function(a){return function(){Qa(a);ra(a)}}(this),!0}return!1};f.V=function(a,b,c,d){this.a=a;this.Yb=b;this.Gf=c-b+1;this.Hc=this.Yb+this.Gf;d&&(this.l=d,void 0!==this.ib&&(sa(d,this.ib,this.ib,this,this.H),N(d,this.ib,this.ib,this,this.O)));this.reset(!0)}; +function Pa(a,b,c,d,e){a.Vb=void 0!==b?b:a.Ld;a.Xf=void 0!==c?c:a.Md;a.Ra=a.Vb*a.Xf;a.Hc=a.Yb+a.Ra;a.Ed=void 0!==d?d:0;a.Nd=void 0!==e?e:c;a.Ad=Math.floor(a.Jf/a.Vb);a.Bd=Math.floor(a.Kf/a.Nd)}f.W=function(){this.Qb.focus()};f.ub=function(a){this.rb=a;600==this.rb?(Pa(this,this.Ld,this.Md,4,24),1024==this.Ra&&this.l&&(this.Kb=this.Hc+this.Ra-1,N(this.l,this.Kb,this.Kb,this,this.le))):(this.i("updated video model: "+this.rb),Pa(this,64,32));Qa(this);ra(this)}; +f.ba=function(a,b){if(a&&!this.C&&I(this)){if(this.C=!0,this.m=L(b,"debugger"),this.G=L(b,"keyboard"))this.G.I("input","canvas","keyDown",this.Qb),this.G.I("input","canvas","keyPress",this.Qb),this.G.I("input","canvas","keyUp",this.Qb)}else!a&&this.C&&(this.C=!1)};f.P=function(){this.Ob||(this.Ob=Math.floor(this.lb.width/16));this.Pb||(this.Pb=Math.floor(this.lb.height/16));z.prototype.P.call(this)}; +f.H=function(a,b){var c=this.l.H(a);void 0!==b&&this.m&&S(this.m,this,a,b,this.m.Ab);this.l.O(a,c&127|(Math.floor(Da(this.l)/8333)&1?128:0))};f.O=function(a,b){void 0!==b&&this.m&&S(this.m,this,a,b,this.m.Ab)}; +f.le=function(a,b){if(void 0!==b){this.m&&S(this.m,this,a,b,this.m.Ab,!0);this.ub(540);this.G&&this.G.ub(542);var c=this.l,d=c.sa,e=[],g=ta(d,this.Kb,this.Kb,this,this.le);if(0<=g){e.push(d[g][0]);e.push(d[g][1]);d.splice(g,1);for(var h=65536,m=0,g=0;g<d.length;g++)h>d[g][0]&&(h=d[g][0]),m<d[g][1]&&(m=d[g][1]);e.push(h);e.push(m)}4==e.length&&(c.Lb=e[2],c.Mb=e[3])}};function Qa(a){a.lc=Array(a.Ra);for(var b=0;b<=a.Ra;b++)a.lc[b]=-1} +function ra(a){var b=0;if(a.C)for(;b<a.Ra;){var c=a.a[a.Yb+b];if(a.lc[b]!=c){var d=Math.floor(b/a.Vb);if(d>=a.Ed&&(d-=a.Ed,d<a.Nd)){var e=c*a.Ob;a.Hf.drawImage(a.lb,e%a.lb.width,Math.floor(e/a.lb.width)*a.Pb,a.Ob,a.Pb,b%a.Vb*a.Ad,d*a.Bd,a.Ad,a.Bd)}a.lc[b]=c}b++}} x(function(){for(var a=F(window.document,"c1pjs","video"),b=0;b<a.length;b++){var c=a[b],d=D(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing <canvas> support; try a new web browser.";break}e.setAttribute("class","c1pjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; -e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var g=new Image,k=e.getContext("2d"),e=new Ra(d,e,k,g);g.onload=function(a){return function(){a.O()}}(e,d.charSet);g.src=d.charSet;E(e,c)}}); -function Ua(a){z.call(this,"C1PSerialPort",a);this.B=!1;this.Ad=a.demo;this.vf=0;this.uf=1;this.reset()}B(Ua);f=Ua.prototype;f.reset=function(){2!=this.Ea&&(this.Mb=this.nc=0,this.Ya='10 PRINT "HELLO OSI #'+ia(this)+'"\n',this.Ea=this.Tb=0)};f.start=function(){this.F&&this.Ad&&(V(this.F," C\n\n",3E3),setTimeout(function(a){return function(){a.Ea=1;V(a.F,"LOAD\n")}}(this),12E3));this.Ad=!1}; -f.H=function(a,b,c,d){switch(c){case "listSerial":return this.q[c]=d,!0;case "loadSerial":return this.q[c]=d,d.onclick=function(a){return function(){a.q.listSerial&&s(a.q.listSerial.value,!0,null,a,a.Mf)}}(this),!0}return!1};f.U=function(a,b,c,d){this.a=a;this.Cc=b;this.Cf=c-b+1;this.Nd=this.Cc+this.Cf;if(this.k=d)va(d,b,c,this,this.G),N(d,b,c,this,this.N);this.O()};f.aa=function(a,b){a&&!this.B&&(this.B=!0,this.M=b,this.F=L(b,"keyboard"),this.l=L(b,"debugger"))}; -f.Mf=function(a,b,c){b?(this.Ya=b,this.Ea=this.Tb=0,this.M&&this.F&&this.k.fa?(G(this,"auto-loading "+a),this.k.V(),"."!=this.Ya.charAt(0)?(this.Ea=1,V(this.F,"NEW\nLOAD\n")):(this.Ea=2,this.M.reset(!0),V(this.F,"ML"))):G(this,a+" ready to load")):G(this,a+" load error ("+c+")")};f.G=function(a,b){void 0!==b&&(a&1?Va(this):this.Ya&&!this.Tb&&Va(this))};f.N=function(a,b){void 0!==b&&this.l&&S(this.l,this,a,b,this.l.Pc,!0)}; -function Va(a){if(void 0!==a.Ya){a.nc=0;a.Mb=0;if(a.Tb<a.Ya.length){var b=a.Ya.charCodeAt(a.Tb++);10==b&&(b=13);a.nc=b;a.Mb=1}else 1==a.Ea&&a.F&&V(a.F," \nRUN\n"),a.Ea=0;a.Zb()}}f.Zb=function(){var a;for(a=this.Cc+0;a<this.Nd;a+=2)this.a[a]=this.Mb?this.uf:this.vf;for(a=this.Cc+1;a<this.Nd;a+=2)this.a[a]=this.Mb?this.nc:0};x(function(){for(var a=F(window.document,"c1pjs","serial"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new Ua(d);E(d,c)}}); -function Wa(a){z.call(this,"C1PDiskController",a);this.B=!1;this.mf=this.jd=0;this.fd=1;this.nf=this.kd=2;this.gd=3;this.Kc=128;this.Lc=64;this.Ja=4;this.gf=1;this.bd=2;this.ff=4;this.jf=8;this.hf=16;this.cd=32;this.ad=64;this.hc=128;this.ed=4;this.dd=8;this.kf=32;this.of=this.lf=16;this.hd=17;this.Mc=3;this.qd=1;this.rd=2;this.pd=4;this.od=8;this.ve=0;this.Ee=40;this.reset(!0)}B(Wa);f=Wa.prototype; -f.reset=function(a){Xa(this);this.J=-1;a&&(this.T=[],this.T[0]={Vi:this.ve,Ld:this.Ee,If:!0,Va:20,ga:0,Ta:-1,Ib:[]})}; -function Xa(a){a.ee={r:a.ad,$:function(){},update:function(a){return function(c){void 0!==c&&(this.r=c);a.Xb.r&a.Ja||W(a,a.mf,this)}}(a)};a.Ga={r:255,$:function(){this.update()},update:function(a){return function(c){void 0===c?c=a.Ga.r:Ya(a,c,a.rb.r);c=c|a.hc|a.cd|a.jf|a.ff|a.bd|a.hf;c&=~a.gf;if(0<=a.J&&a.T[a.J].Ib.length){var d=a.T[a.J];d.If&&(c&=~a.cd);d.ga||(c&=~a.bd);10>=--d.Va&&(0<d.Va?(c&=~a.hc,Za(a)):(d.Va=100,0<=a.J&&(a.T[a.J].Ta=0,$a(a))))}this.r=c;a.Xb.r&a.Ja&&W(a,a.jd,this)}}(a)};a.Xb= -{r:0,$:function(){},update:function(a){return function(c){void 0!==c&&(this.r=c&~(a.Kc|a.Lc));W(a,a.fd,this);a.Ga.update();a.ee.update()}}(a)};a.fe={r:255,$:function(){},update:function(a){return function(c){void 0!==c&&(this.r=c);a.Yb.r&a.Ja||W(a,a.nf,this)}}(a)};a.rb={r:255,$:function(){},update:function(a){return function(c){void 0===c?c=a.rb.r:Ya(a,a.Ga.r,c);if(0<=a.J&&a.J<a.T.length){var d=a.T[a.J];d.Ib.length&&a.rb.r&a.dd&&!(c&a.dd)&&(c&a.ed?d.ga--:d.ga++,a.l&&T(a.l,a.l.Ka)&&a.l.message("stepping "+ -(c&a.ed?"down":"up")+" to track "+d.ga),d.ga>=d.Ld&&(d.ga=d.Ld),0>d.ga&&(d.ga=0),d.Va=20,a.Ga.update(a.Ga.r|a.hc),Za(a))}this.r=c;a.Yb.r&a.Ja&&W(a,a.kd,this)}}(a)};a.Yb={r:0,$:function(){},update:function(a){return function(c){void 0!==c&&(this.r=c&~(a.Kc|a.Lc));W(a,a.gd,this);a.rb.update();a.fe.update()}}(a)};a.Si={r:0,$:function(){},update:function(a){return function(c){void 0!==c&&((c&a.Mc)==a.Mc&&(a.Ha.r=a.rd|a.pd|a.od),this.r=c);a.Ha.update()}}(a)};a.Ha={r:a.rd|a.pd|a.od,$:function(){},update:function(a){return function(c){void 0=== -c&&(c=a.Ha.r);c&=~a.qd;0<=a.J&&0<=a.T[a.J].Ta&&(c|=a.qd);this.r=c;W(a,a.of,this)}}(a)};a.Gc={r:0,$:function(a){return function(){$a(a)}}(a),update:function(a){return function(c){void 0!==c&&(this.r=c);W(a,a.hd,this)}}(a)};a.Ti={r:0,$:function(){},update:function(){return function(){}}(a)}} -f.H=function(a,b,c,d){switch(c){case "listDisk":return this.q[c]=d,!0;case "loadDisk":return this.q[c]=d,d.onclick=function(a){return function(){if(a.q.listDisk){var b=a.q.listDisk.value,c=b;".json"!=b.substr(b.length-5)&&(c="http://"+window.location.host+"/api/v1/dump?disk="+b);G(a,"loading "+ba(b)+"...");s(c,!0,null,a,a.Lf)}}}(this),!0}return!1};f.U=function(a,b,c,d){this.a=a;this.kc=b;if(this.k=d)va(d,b,c,this,this.G),N(d,b,c,this,this.N);this.O()}; -f.aa=function(a,b){a&&!this.B&&(this.B=!0,this.l=L(b,"debugger"))}; -f.Lf=function(a,b,c){if(c)G(this,"disk load error ("+c+")");else{c=[];G(this,"mounting "+a+"...");try{if(c=eval("("+b+")"),c.length)if(c[0].length){var d=c[0];if(void 0===d[0].trackNum)G(this,"data error: "+d[0]);else if(this.T[0]){for(b=0;b<d.length;b++){var e,g=d[b],k=g.sectors;if(void 0===(e=g.trackNum)||void 0===k)throw"track "+b+" missing data";e!=b&&u("track "+e+" out of order (expected "+b+")");c=[];var n,m,l;if(e){ab(c,g,"trackSig");bb(c,g);X(c,g,"trackType");for(var q=0;q<k.length;q++){n= -k[q];m=n.sectorData;X(c,n,"sectorSig");X(c,n,"sectorNum");X(c,n,"sectorPages");for(l=0;l<m.length;l++)c.push(m[l]);ab(c,n,"sectorEndSig")}}else for(n=k[0],m=n.sectorData,X(c,g,"trackLoad",2),X(c,n,"sectorPages"),l=0;l<m.length;l++)c.push(m[l]);d[e].he=c;this.l&&T(this.l,this.l.Ka)&&this.l.message("track "+e+": "+c.length+" bytes")}this.T[0].Ib=d;G(this,"mount of "+a+" complete")}else G(this,"no available drives")}else G(this,"no tracks: "+a);else G(this,"no data: "+a)}catch(t){G(this,"disk data error: "+ -(t.message||t))}}};function bb(a,b){var c=b.trackNum;if(void 0===c)throw"missing bcd value: trackNum";a.push(Math.floor(c/10)<<4|c%10)}function X(a,b,c,d){b=b[c];if(void 0===b)throw"missing binary value: "+c;2==d&&a.push(b>>8&255);a.push(b&255)}function ab(a,b,c){b=b[c];if(void 0===b)throw"missing signature: "+c;for(c=0;c<b.length;c++)a.push(b.charCodeAt(c))} -function cb(a,b,c){b&=63;16>b?b&=3:32>b&&(b&=17);switch(b){case a.jd:a=a.Xb.r&a.Ja?a.Ga:a.ee;break;case a.fd:a=a.Xb;break;case a.kd:a=a.Yb.r&a.Ja?a.rb:a.fe;break;case a.gd:a=a.Yb;break;case a.lf:a=c?a.Si:a.Ha;break;case a.hd:a=a.Gc;break;default:a=a.Ti}return a}f.G=function(a,b){if(void 0!==b){var c=cb(this,a-this.kc,!1);this.l&&S(this.l,this,a,b,this.l.Ka,!1,c.ge);c.$()}}; -f.N=function(a,b){if(void 0!==b){var c=this.k.G(a),d=cb(this,a-this.kc,!0);if(this.l&&T(this.l,this.l.Ka|this.l.bc)&&(S(this.l,this,a,b,this.l.Ka,!0,d.ge),d.xf))for(var e=128,g=d.r^c;g&&e;)g&e&&this.l.message(" changed "+d.ge+"."+d.xf[e]+" to "+(c&e?"1":"0")),e>>=1;d.update(c)}};function Ya(a,b,c){var d=-1;void 0!==b&&void 0!==c&&(d=0,c&a.kf||(d|=2),a.Ga.r&a.ad||(d|=1));a.J!=d&&(a.J=d,a.Ha.update())}function Za(a){0<=a.J&&(a.T[a.J].Ta=-1,a.Gc.update(255),a.Ha.update())} -function $a(a){var b=null;if(0<=a.J){var b=a.T[a.J],c=b.Ib[b.ga];void 0!==c&&(0<=b.Ta&&b.Ta<c.he.length?(b.Va=100,b=c.he[b.Ta++],a.Gc.update(b),a.Ha.update()):(b.Va=10,Za(a)))}}function W(a,b,c){a.k.N(b+a.kc,c.r)}x(function(){for(var a=F(window.document,"c1pjs","disk"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new Wa(d);E(d,c)}}); -function db(a){z.call(this,"C1PDebugger",a);this.Oa=-1;this.va=0;this.Fc=null;this.Rb=!1;this.Y=0;this.qa=[];this.Aa=[];this.Da=[];this.jb=0;this.Ca=[];this.ea=[];this.bc=1;this.ya=16;this.zb=32;this.Ka=64;this.Pc=128;this.Fa=this.Fe=0;this.Hb={port:this.bc,kbd:this.ya,video:this.zb,disk:this.Ka,serial:this.Pc};this.ja=0;this.ka=1;this.$a=2;this.Sc=3;this.Tc=4;this.Uc=5;this.Vc=6;this.Wc=7;this.Xc=8;this.Yc=9;this.Ge=10;this.Zc=11;this.$c=12;this.He=13;this.Ie=14;this.Je=15;this.Ke=16;this.la=17; -this.cc=18;this.dc=19;this.Cb=20;this.Me=21;this.Ne=22;this.ma=23;this.Db=24;this.Oe=25;this.Pe=26;this.Eb=27;this.Fb=28;this.na=29;this.ab=30;this.bb=31;this.cb=32;this.Qe=33;this.oa=34;this.Re=35;this.Se=36;this.Te=37;this.Ue=38;this.eb=39;this.fb=40;this.Ve=41;this.We=42;this.pa=43;this.Xe=44;this.Ye=45;this.Ze=46;this.za=47;this.fc=48;this.gc=49;this.$e=50;this.af=51;this.bf=52;this.cf=53;this.df=54;this.ef=55;this.ec=56;this.Le=57;this.gb="ADC AND ASL BCC BCS BEQ BIT BMI BNE BPL BRK BVC BVS CLC CLD CLI CLV CMP CPX CPY DEC DEX DEY EOR INC INX INY JMP JSR LDA LDX LDY LSR NOP ORA PHA PHP PLA PLP ROL ROR RTI RTS SBC SEC SED SEI STA STX STY TAX TAY TSX TXA TXS TYA SIM .DB".split(" "); -this.sd=["HLT","MSG"];eb(this,!0);this.X=[[this.Ge],[this.oa,1,this.ha],[this.ec,1],[],[],[this.oa,1,this.C],[this.$a,1,this.C],[],[this.Se],[this.oa,1,this.Q],[this.$a,0,this.Ab],[],[],[this.oa,2,this.A],[this.$a,2,this.A],[],[this.Yc,1,this.W],[this.oa,1,this.ia],[],[],[],[this.oa,1,this.I],[this.$a,1,this.I],[],[this.He],[this.oa,2,this.ba],[],[],[],[this.oa,2,this.K],[this.$a,2,this.K],[],[this.Fb,2,this.Bb],[this.ka,1,this.ha],[],[],[this.Vc,1,this.C],[this.ka,1,this.C],[this.eb,1,this.C],[], -[this.Ue],[this.ka,1,this.Q],[this.eb,0,this.Ab],[],[this.Vc,2,this.A],[this.ka,2,this.A],[this.eb,2,this.A],[],[this.Wc,1,this.W],[this.ka,1,this.ia],[],[],[],[this.ka,1,this.I],[this.eb,1,this.I],[],[this.Xe],[this.ka,2,this.ba],[],[],[],[this.ka,2,this.K],[this.eb,2,this.K],[],[this.Ve],[this.ma,1,this.ha],[],[],[],[this.ma,1,this.C],[this.cb,1,this.C],[],[this.Re],[this.ma,1,this.Q],[this.cb,0,this.Ab],[],[this.Eb,2,this.Bb],[this.ma,2,this.A],[this.cb,2,this.A],[],[this.Zc,1,this.W],[this.ma, -1,this.ia],[],[],[],[this.ma,1,this.I],[this.cb,1,this.I],[],[this.Je],[this.ma,2,this.ba],[],[],[],[this.ma,2,this.K],[this.cb,2,this.K],[],[this.We],[this.ja,1,this.ha],[],[],[],[this.ja,1,this.C],[this.fb,1,this.C],[],[this.Te],[this.ja,1,this.Q],[this.fb,0,this.Ab],[],[this.Eb,2,this.Qc],[this.ja,2,this.A],[this.fb,2,this.A],[],[this.$c,1,this.W],[this.ja,1,this.ia],[],[],[],[this.ja,1,this.I],[this.fb,1,this.I],[],[this.Ze],[this.ja,2,this.ba],[],[],[],[this.ja,2,this.K],[this.fb,2,this.K],[], -[],[this.za,1,this.ha],[],[],[this.gc,1,this.C],[this.za,1,this.C],[this.fc,1,this.C],[],[this.Ne],[],[this.cf],[],[this.gc,2,this.A],[this.za,2,this.A],[this.fc,2,this.A],[],[this.Sc,1,this.W],[this.za,1,this.ia],[],[],[this.gc,1,this.I],[this.za,1,this.I],[this.fc,1,this.Rc],[],[this.ef],[this.za,2,this.ba],[this.df],[],[],[this.za,2,this.K],[],[],[this.bb,1,this.Q],[this.na,1,this.ha],[this.ab,1,this.Q],[],[this.bb,1,this.C],[this.na,1,this.C],[this.ab,1,this.C],[],[this.af],[this.na,1,this.Q], -[this.$e],[],[this.bb,2,this.A],[this.na,2,this.A],[this.ab,2,this.A],[],[this.Tc,1,this.W],[this.na,1,this.ia],[],[],[this.bb,1,this.I],[this.na,1,this.I],[this.ab,1,this.Rc],[],[this.Ke],[this.na,2,this.ba],[this.bf],[],[this.bb,2,this.K],[this.na,2,this.K],[this.ab,2,this.ba],[],[this.dc,1,this.Q],[this.la,1,this.ha],[],[],[this.dc,1,this.C],[this.la,1,this.C],[this.Cb,1,this.C],[],[this.Pe],[this.la,1,this.Q],[this.Me],[],[this.dc,2,this.A],[this.la,2,this.A],[this.Cb,2,this.A],[],[this.Xc,1, -this.W],[this.la,1,this.ia],[],[],[],[this.la,1,this.I],[this.Cb,1,this.I],[],[this.Ie],[this.la,2,this.ba],[],[],[],[this.la,2,this.K],[this.Cb,2,this.K],[],[this.cc,1,this.Q],[this.pa,1,this.ha],[],[],[this.cc,1,this.C],[this.pa,1,this.C],[this.Db,1,this.C],[],[this.Oe],[this.pa,1,this.Q],[this.Qe],[],[this.cc,2,this.A],[this.pa,2,this.A],[this.Db,2,this.A],[],[this.Uc,1,this.W],[this.pa,1,this.ia],[],[],[],[this.pa,1,this.I],[this.Db,1,this.I],[],[this.Ye],[this.pa,2,this.ba],[],[],[],[this.pa, -2,this.K],[this.Db,2,this.K],[]]}B(db);f=db.prototype;f.H=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Qb=this.q[c]=d,this.Qb.focus(),d.onkeypress=function(a,b){return function(d){13==d.keyCode&&(c=b.value,b.value="",fb(a,c))}}(this,d),!0;case "debugEnter":return this.q[c]=d,fa(d,function(){return e.Qb?(c=e.Qb.value,fb(e,c),!0):!1}),!0;case "step":return this.q[c]=d,fa(d,function(a){var b=!1;I(e,!0)||(H(e,!0),b=e.step(a?1:0),H(e,!1));return b}),!0}return!1}; -f.U=function(a,b,c){this.a=a;this.Z=b;this.pc=c-b+1;this.Xa=this.Z+this.pc;this.O()};f.aa=function(a,b){a&&!this.B&&(this.B=!0,this.k=L(b,"cpu"))};f.V=function(){this.Qb.focus()}; -function eb(a,b){a.Ab=0;a.Q=1;a.K=2;a.ba=3;a.Bb=4;a.Qc=5;a.I=6;a.Rc=7;a.ha=8;a.ia=9;a.A=10;a.C=11;a.W=a.Bb;var c="",d,e;if(b)for(a.da="A #$nn $nnnn,X $nnnn,Y $nnnn ($nnnn) $nn,X $nn,Y ($nn,X) ($nn),Y $nnnn $nn".split(" "),d=0;d<a.da.length;d++)e=a.da[d],c+="("+e.replace(/\(/g,"\\(").replace(/\)/g,"\\)").replace(/nnnn/g,"[0-9A-F][0-9A-F][0-9A-F][0-9A-F]?").replace(/nn/g,"[0-9A-F][0-9A-F]?").replace(/\$/g,"\\$")+"|)";else for(a.da="A nn [nnnn+X] [nnnn+Y] nnnn [nnnn] [nn+X] [nn+Y] [[nn+X]] [[nn]+Y] [nnnn] [nn]".split(" "), -d=0;d<a.da.length;d++)e=a.da[d],c+="("+e.replace(/\[/g,"\\[").replace(/\]/g,"\\]").replace(/nnnn/g,"[0-9A-F][0-9A-F][0-9A-F][0-9A-F]?").replace(/nn/g,"[0-9A-F][0-9A-F]?").replace(/\+/g,"\\+")+"|)";a.Ui=new RegExp(c);a.yf=[a.Eb,a.Fb,a.Yc,a.Wc,a.Zc,a.$c,a.Sc,a.Tc,a.Xc,a.Uc]}f.S=function(){this.k.S()};function T(a,b){return(a.Fa&b)===b}function S(a,b,c,d,e,g,k){(a.Fa&e)==e&&(e=a.k.G(c),a.message(b.id+"."+(g?"setByte":"getByte")+"("+p(c)+")"+(void 0!==d?" @"+p(d):"")+": "+(k?k+"=":"")+h(e)))} -f.message=function(a){G(this,a);Fa(this.k)};f.Kf=function(){G(this,"Type ? for list of debugger commands\n")};f.xa=function(){if(!gb(this))return!1;this.k.xa();return!0};f.step=function(a){if(!gb(this))return!1;var b;try{b=this.k.step(a)}catch(c){b=void 0,K(this.k,c.message||c)}void 0!==b&&this.Oa++;this.k.update(!0);this.update(!0);return b};f.update=function(a){this.va=this.k.d;a||this.Sa?hb(this):ib(this)}; -function gb(a){a.k&&J(a.k)&&!I(a.k)?(a=a.k,a.ib?(G(a,a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}f.reset=function(){var a;this.Ca.length||(this.Ca=Array(1E3));for(a=0;a<this.Ca.length;a++)this.Ca[a]=-1;this.ea.length||(this.ea=Array(256));for(a=0;a<this.ea.length;a++)this.ea[a]=[a,0];this.Oa&&this.update();this.Oa=0};f.start=function(){this.Sa||G(this,"running")}; -f.stop=function(a,b){if(!this.Sa&&(G(this,"stopped"),b)){var c=r();G(this,c-a+"ms ("+b+" cycles)")}this.update();this.V();this.Sa||(this.Oa=0);jb(this,this.k.d)};function kb(a,b){return a+(b<<24>>24)}f.G=function(a){var b;a>=this.Z&&a<this.Xa&&(xa(this.k,a),b=this.a[this.Z+a],b&=255);return b};f.N=function(a,b){a<this.Z||a>=this.Xa?G(this,"invalid address: "+p(a)):(this.a[this.Z+a]=b&255,za(this.k,a),this.k.update())};function lb(a,b){Y(a.qa,b,void 0)||a.qa.push(b);return!0} -function Y(a,b,c){for(var d=!1,e=0;e<a.length;e++)if(a[e]==b){c&&a.splice(e,1);d=!0;break}return d}function mb(a,b){void 0!==b&&(jb(a,a.Na),lb(a,b)&&(a.Na=b))}function jb(a,b){void 0!==a.Na&&b==a.Na&&Y(a.qa,a.Na,!0)&&(a.Na=void 0);a.Sa=!1}function Ea(a,b,c,d){for(var e=!1,g=0;g<c.length;g++)if(c[g]==b){b!=a.Na&&G(a,"breakpoint hit: "+p(b)+" ("+d+")");e=!0;break}return e} -function nb(a,b,c){var d=p(b),e=a.G(b++),g=a.X[e],k=void 0===e?0:e,n=[],m=void 0===g[1]?0:g[1];do{d+=" "+h(k);if(!m--)break;k=a.G(b++);if(void 0===k)break;n.push(k)}while(1);void 0===g[0]&&(g=[a.Le,1,a.Q],n.push(e));var d=(d+" ").substr(0,15),d=d+a.gb[g[0]],l=null;if(void 0!==g[2]){m=g[2];l=a.da[m];if(1==g[1]&&m==a.W)l=l.replace(/nnnn/,p(kb(b,k=n.pop())));else for(;n.length;)l=l.replace(/nn/,h(k=n.pop()));m==a.Q&&1==g[1]&&32<=k&&128>k&&(l+=" ;'"+String.fromCharCode(k)+"'")}if(e==a.k.ec&&(k< -a.sd.length&&(l=a.sd[k]),k==a.k.md)){m=0;for(l='"';k=a.G(b++);)16>m?l+=String.fromCharCode(k):16==m&&(l+="\u2026"),m++;l+='"'}l&&(d+=" "+l);c&&(d=(d+" ").substr(0,30),d+=";"+c.toString());a.Wf=b;return d} -function Z(a,b){var c=a.va;if(void 0!==b){var d=16;"$"==b.charAt(0)?b=b.substr(1):"0x"==b.substr(0,2)?b=b.substr(2):"."==b.charAt(b.length-1)&&(d=10,b=b.substr(0,b.length-1));c=parseInt(b,d);isNaN(c)&&(G(a,"invalid base-"+d+" address: "+b),c=void 0)}void 0!==c&&(c<a.Z||c>=a.Xa)&&(G(a,"address out of range: "+aa(c)),c=void 0);return c} -function ob(a,b){if("?"==b)G(a,"\nfrequency commands:"),G(a,"clear\tclear all frequency counts");else{var c=0,d;if(a.ea)if("clear"==b){for(d=0;d<a.ea.length;d++)a.ea[d]=[d,0];G(a,"frequency data cleared");c++}else if(void 0!==b)G(a,"unknown frequency command: "+b),c++;else{var e=a.ea.slice();e.sort(function(a,b){return b[1]-a[1]});for(d=0;d<e.length;d++){var g=e[d][0],k=e[d][1];k&&(G(a,a.gb[a.X[g][0]]+" ("+h(g)+"): "+k+" times"),c++)}}c||G(a,"no frequency data available")}} -function hb(a,b,c,d){var e=Z(a,b);if(void 0!==e){void 0===d&&(d=1);b=a.Xa;if(void 0!==c){b=Z(a,c);if(void 0===b||b<e)return;if(256<b-e){G(a,"range too large");return}b++;d=-1}for(e!=a.va&&G(a);d--&&e<b;)c=nb(a,e,I(a,!1)||a.Sa?a.Oa:0),G(a,c),a.va=e=a.Wf}} -function ib(a,b){if(b&&"?"==b[1])G(a,"\nregister commands:"),G(a,"r to display all"),G(a,"r [target=value] to modify"),G(a,"supported targets:"),G(a,"A,X,Y,S,PC and flags C,Z,D,V,N");else{var c=!0;if(void 0!==b&&1<b.length){var c=!1,d=b[1],e=null,g=d.indexOf("=");if(0<g)e=d.substr(g+1),d=d.substr(0,g);else if(2<b.length)e=b[2];else{G(a,"missing value for "+b[1]);return}g=parseInt(e,16);if(isNaN(g)){G(a,"invalid value: "+e);return}switch(d.toUpperCase()){case "A":a.k.e=g&255;break;case "X":a.k.m=g& -255;break;case "Y":a.k.o=g&255;break;case "C":a.k.c=g?256:0;break;case "Z":a.k.g=g?0:1;break;case "D":g?Ha(a.k):Ia(a.k);break;case "V":g?(d=a.k,d.t=0,d.u=128):(d=a.k,d.t=0,d.u=0);break;case "N":a.k.f=g?128:0;break;case "S":if(256!=(g&-256)){G(a,"invalid stack pointer: "+e);return}a.k.p=g;break;case "PC":c=!0;a.k.d=g&65535;a.va=a.k.d;break;default:G(a,"unknown register: "+d);return}a.k.update()}G(a,"A="+h(a.k.e)+" X="+h(a.k.m)+" Y="+h(a.k.o)+" P="+h(Ca(a.k))+" S="+p(a.k.p)+" PC="+p(a.k.d));c&&hb(a, -p(a.va=a.k.d))}}function pb(a,b){var c=void 0===b?1:parseInt(b,10),d=1==c?0:1;ea(c,function(a){return function(){return H(a,!0)&&a.step(d)}}(a),function(a){return function(){H(a,!1)}}(a))} -function fb(a,b){b.length||(a.Rb?(G(a,"ended assemble @"+p(a.Y)),a.va=a.Y,a.Rb=!1):a.Fc&&(b=a.Fc));if(J(a)&&!I(a,!0)&&0<b.length){a.Rb?b="a "+p(a.Y)+" "+b:1<b.length&&1!=b.indexOf(" ")&&(b=b.charAt(0).toLowerCase()+" "+b.substr(1));var c=b.split(" ");a.Fc=c[0];switch(c[0].toLowerCase()){case "a":var d=Z(a,c[1]);if(void 0!==d)if(a.Y=d,void 0===c[2])G(a,"begin assemble @"+p(a.Y)),a.Rb=!0,a.k.update();else{var e,g=c[2],k=c[3],c=a.Y,d=[];if(void 0!==g){var n,g=g.toUpperCase();"?"==g.charAt(g.length-1)&& -(k="?",g=g.substr(0,g.length-1));for(n=0;n<a.gb.length&&g!=a.gb[n];n++);n==a.gb.length&&(G(a,"unknown operation: "+g),n=-1);var m="",l;if(0<=n&&void 0!==k)if(m=k.toUpperCase(),"?"==m){for(k=l=0;k<a.X.length;k++)a.X[k][0]===n&&(l||G(a,"supported opcodes:"),G(a," "+h(k)+": "+g+(void 0!==a.X[k][2]?" "+a.da[a.X[k][2]]:"")),l++);n=-1}else if(l=m.match(a.Ui),null!==l&&l[0]==m){for(k=1;k<l.length;k++)if(l[k]==m)if(void 0===e)e=k-1;else{G(a,"too many operand matches (both "+a.da[e]+" and "+a.da[k-1]+ -")");n=-1;break}e==a.Bb&&0>a.yf.indexOf(n)&&(e=a.A);e==a.Qc&&n!=a.Eb&&(e=a.A)}else G(a,"unknown operand: "+m),n=-1;if(0<=n){l=-1;for(k=0;k<a.X.length;k++)if(a.X[k][0]===n&&a.X[k][2]===e)if(0>l)l=k;else{G(a,"too many instruction matches (both "+h(l)+" and "+h(k)+")");l=-2;break}if(0<=l){if(d.push(l),void 0!==e)if(g=a.X[l][1],m=m.match(/[0-9A-F]+/),null!==m)for(m=parseInt(m[0],16),1==g&&e==a.W&&(m-=c+2,-128>m||127<m)&&(G(a,"branch out of range ("+m+")"),d=[],g=0),k=0;k<g;k++)d.push(m&255),m>>>=8;else g&& -G(a,"instruction missing "+g+" bytes")}else G(a,"unknown instruction: "+g+" "+m+"")}}e=d;if(e.length){for(c=0;c<e.length;c++)a.N(a.Y+c,e[c]);G(a,nb(a,a.Y));a.Y+=e.length}}break;case "b":e=c[1];c=c[2];if(void 0===e||"?"==e)G(a,"\nbreakpoint commands:"),G(a,"bp [a]\tset exec breakpoint at [a]"),G(a,"br [a]\tset read breakpoint at [a]"),G(a,"bw [a]\tset write breakpoint at [a]"),G(a,"bc [a]\tclear breakpoint at [a]"),G(a,"bl\tlist all breakpoints");else if(void 0===c&&1<e.length&&(c=e.substr(1),e=e.substr(0, -1)),"l"==e){e=0;d=a.qa;for(c=0;c<d.length;c++)G(a,"breakpoint enabled: "+p(d[c])+" (exec)"),e++;d=a.Aa;for(c=0;c<d.length;c++)G(a,"breakpoint enabled: "+p(d[c])+" (read)"),e++;d=a.Da;for(c=0;c<d.length;c++)G(a,"breakpoint enabled: "+p(d[c])+" (write)"),e++;e||G(a,"no breakpoints")}else void 0===c?G(a,"missing breakpoint address"):"c"==e&&"*"==c?(a.qa=[],a.Aa=[],a.Da=[],G(a,"all breakpoints cleared")):(c=Z(a,c),void 0!==c&&("p"==e?lb(a,c)?G(a,"breakpoint enabled: "+p(c)+" (exec)"):G(a,"breakpoint not set: "+ -p(c)):"c"==e?Y(a.qa,c,!0)?G(a,"breakpoint cleared: "+p(c)+" (exec)"):Y(a.Aa,c,!0)?G(a,"breakpoint cleared: "+p(c)+" (read)"):Y(a.Da,c,!0)?G(a,"breakpoint cleared: "+p(c)+" (write)"):G(a,"breakpoint missing: "+p(c)):"r"==e?(Y(a.Aa,c,void 0)||a.Aa.push(c),G(a,"breakpoint enabled: "+p(c)+" (read)")):"w"==e?(Y(a.Da,c,void 0)||a.Da.push(c),G(a,"breakpoint enabled: "+p(c)+" (write)")):G(a,"unknown breakpoint command: "+e)));break;case "d":e=c[1];d=c[2];if("?"==e)G(a,"\ndump commands:"),G(a,"d [a] [#] dump # lines of memory"); -else if(e=Z(a,e),void 0!==e){c=0;void 0!==d&&("l"==d.charAt(0)&&(d=d.substr(1)),c=parseInt(d,10));c||(c=1);for(d=0;d<c;d++){m=g="";k=e;for(n=0;8>n&&e<a.Xa;n++)l=a.G(e),void 0===l&&(l=0),g+=h(l)+" ",m+=32<=l&&128>l?String.fromCharCode(l):".",e++;G(a,p(k)+" "+g+m)}a.va=e}break;case "e":e=c[1];if(void 0===e)G(a,"missing address");else if(e=Z(a,e),void 0!==e)for(d=2;d<c.length;d++)g=parseInt(c[d],16),a.N(e++,g);break;case "f":ob(a,c[1]);break;case "g":e=c[1];void 0!==e&&mb(a,Z(a,e));a.xa()||a.k.V();break; -case "h":a.S();break;case "o":if(void 0===c[1]||"?"==c[1])G(a,"\noption commands:"),G(a,"max\trun at maximum speed"),G(a,"fast\trun faster (up to "+a.k.lb+"Mhz)"),G(a,"slow\trun at normal speed (1Mhz)"),G(a,"classic\tuse classic operand syntax"),G(a,"modern\tuse modern operand syntax"),G(a,"msg\tenable message categories");else switch(e=c[1],e){case "slow":M(a.k,a.k.Gb);break;case "fast":M(a.k,a.k.nd);break;case "max":M(a.k,a.k.La);break;case "classic":eb(a,!0);G(a,"classic syntax enabled");break; -case "modern":eb(a,!1);G(a,"modern syntax enabled");break;case "msg":e=0;void 0!==c[2]&&("all"==c[2]?e=255:void 0!==a.Hb[c[2]]&&(e=a.Hb[c[2]]),e&&("on"==c[3]?a.Fa|=e:"off"==c[3]&&(a.Fa&=~e)));for(d in a.Hb)if(void 0===c[2]||"all"==c[2]||c[2]==d)e=a.Hb[d],G(a,d+" messages: "+(a.Fa&e?"on":"off"));break;default:G(a,"unknown option: "+e)}break;case "p":m=c[1];e=10;c=a.jb;d=a.Ca;if(void 0!==d){g=void 0===m?a.Vf:parseInt(m,10);void 0===g&&(g=10);g>d.length&&(G(a,"note: only "+d.length+" available"),g=d.length); -void 0!==m&&(a.wc=0,G(a,g+" instructions earlier:"));m=a.wc?a.wc:1;c-=g;for(0>c&&(c=d.length-1);e&&c!=a.jb;){k=d[c];if(0>k)break;G(a,nb(a,k,m++));++c==d.length&&(c=0);e--;g--}a.Vf=g;a.wc=m}10==e&&G(a,"no history available");break;case "r":ib(a,c);break;case "s":a.G(a.k.d)==a.k.Fb?(mb(a,a.k.d+3),a.Sa=!0,a.xa()||a.k.V()):pb(a);break;case "t":pb(a,c[1]);break;case "u":hb(a,c[1],c[2],8);break;case "?":case "help":G(a,"\ncommands:\n?\thelp\na [#]\tassemble\nb [#]\tbreakpoint\nd [#]\tdump memory\ne [#]\tedit memory\nf\tdump frequencies\ng [#]\trun to [#]\nh\thalt\no\toptions\np [#]\tdump history\nr\tdump/edit registers\ns\tstep over instruction\nt [#]\tstep instruction(s)\nu [#]\tunassemble"); -G(a,"note: frequency and history commands operate only when breakpoints are set");break;default:G(a,"unknown command: "+b)}}}x(function(){for(var a=F(window.document,"c1pjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new db(d);E(d,c)}});function $(a,b){z.call(this,"C1PComputer",a);this.P=b}B($);$.prototype.reset=function(a){var b=null,c;for(c in this.P)for(var d=0;d<this.P[c].length;d++){var e=this.P[c][d];e&&e.reset&&(e.reset(),"cpu"==c&&(b=e))}b&&(b.update(),a&&b.xa())}; -$.prototype.start=function(){for(var a in this.P)if("cpu"!=a)for(var b=0;b<this.P[a].length;b++){var c=this.P[a][b];c&&c.start&&c.start()}};$.prototype.stop=function(a,b){for(var c in this.P)if("cpu"!=c)for(var d=0;d<this.P[c].length;d++){var e=this.P[c][d];e&&e.stop&&e.stop(a,b)}};$.prototype.H=function(a,b,c,d){switch(c){case "reset":return this.q[c]=d,d.onclick=function(a){return function(){a.reset()}}(this),!0}return!1};function L(a,b){return a.P[b]?a.P[b][0]:null} -function qb(a){var b=null,c;for(c in a.P)for(var d=0;d<a.P[c].length;d++){var e=a.P[c][d];if(e){if(!J(e)){J(e,function(a){return function(){qb(a)}}(a));return}"cpu"==c?b=e:e.aa&&e.aa(!0,a)}}a.O();G(a,"C1Pjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>");b&&b.aa(!0,a)} -x(function(){for(var a=F(window.document,"c1pjs","computer"),b=0;b<a.length;b++){for(var c=a[b],d=D(c),e,g={},k,n=0,m=0,l=0;l<d.modules.length;l++){var q=d.modules[l];if(!l){if("cpu"!=q.type)break;n=q.start;m=q.end;k=Array(m+1-n);for(e=n;e<k.length;e++)k[e]=0}if(e=C(q.refID,d.id)){var t=q.type;void 0===g[t]&&(g[t]=[]);g[t].push(e);e.U&&void 0!==q.start&&e.U(k,q.start,q.end,g.cpu[0])}else{u('no component for <module refid="'+q.refID+'">');return}}if(void 0===k){u('<module type="cpu"> definition must appear first in the <computer> specification'); -break}if(e=C("debugger",d.id))g["debugger"]=[e],e.U&&e.U(k,n,m,g.cpu[0]);(e=C("panel",d.id))&&(g.panel=[e]);d=new $(d,g);E(d,c);qb(d)}});function rb(a,b,c,d){var e=s(a);if(e[0])throw Error(e[1]);return sb(e[1],a,b,c,d)} -function sb(a,b,c,d,e){var g=null;if(a){if(e)for(var k=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;g=k.exec(a);){var n=g[2],m=s(n),l=m[1];if(m[0]||!l)throw c="unable to resolve XML reference: "+g[0]+" ("+m[0]+")",Error(c);if(m=g[3]){var q=l.match(new RegExp("<"+g[1]+"[^>]*>"));if(q){for(var n=q[0],t,ya=/( [a-z]+=)(['"])(.*?)\2/g;t=ya.exec(m);)n=0>n.indexOf(t[1])?n.replace(">",t[0]+">"):n.replace(new RegExp(t[1]+"(['\"])(.*?)\\1"),t[0]);q[0]!=n&&(l=l.replace(q[0],n))}else throw c="missing <"+g[1]+"> in "+n, -Error(c);}l=l.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(g[0],l);k.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*\]>\s*/g,"")),g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+ +e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var g=new Image,h=e.getContext("2d"),e=new Oa(d,e,h,g);g.onload=function(a){return function(){a.P()}}(e,d.charSet);g.src=d.charSet;E(e,c)}}); +function Ra(a){z.call(this,"C1PSerialPort",a);this.C=!1;this.Dd=a.demo;this.yf=0;this.xf=1;this.reset()}B(Ra);f=Ra.prototype;f.reset=function(){2!=this.Fa&&(this.Nb=this.pc=0,this.Za='10 PRINT "HELLO OSI #'+ia(this)+'"\n',this.Fa=this.Ub=0)};f.start=function(){this.G&&this.Dd&&(V(this.G," C\n\n",3E3),setTimeout(function(a){return function(){a.Fa=1;V(a.G,"LOAD\n")}}(this),12E3));this.Dd=!1}; +f.I=function(a,b,c,d){switch(c){case "listSerial":return this.r[c]=d,!0;case "loadSerial":return this.r[c]=d,d.onclick=function(a){return function(){a.r.listSerial&&t(a.r.listSerial.value,!0,null,a,a.Pf)}}(this),!0}return!1};f.V=function(a,b,c,d){this.a=a;this.Fc=b;this.Ff=c-b+1;this.Qd=this.Fc+this.Ff;if(this.l=d)sa(d,b,c,this,this.H),N(d,b,c,this,this.O);this.P()};f.ba=function(a,b){a&&!this.C&&(this.C=!0,this.N=b,this.G=L(b,"keyboard"),this.m=L(b,"debugger"))}; +f.Pf=function(a,b,c){b?(this.Za=b,this.Fa=this.Ub=0,this.N&&this.G&&this.l.ga?(this.i("auto-loading "+a),this.l.W(),"."!=this.Za.charAt(0)?(this.Fa=1,V(this.G,"NEW\nLOAD\n")):(this.Fa=2,this.N.reset(!0),V(this.G,"ML"))):this.i(a+" ready to load")):this.i(a+" load error ("+c+")")};f.H=function(a,b){void 0!==b&&(a&1?Sa(this):this.Za&&!this.Ub&&Sa(this))};f.O=function(a,b){void 0!==b&&this.m&&S(this.m,this,a,b,this.m.Sc,!0)}; +function Sa(a){if(void 0!==a.Za){a.pc=0;a.Nb=0;if(a.Ub<a.Za.length){var b=a.Za.charCodeAt(a.Ub++);10==b&&(b=13);a.pc=b;a.Nb=1}else 1==a.Fa&&a.G&&V(a.G," \nRUN\n"),a.Fa=0;a.ac()}}f.ac=function(){var a;for(a=this.Fc+0;a<this.Qd;a+=2)this.a[a]=this.Nb?this.xf:this.yf;for(a=this.Fc+1;a<this.Qd;a+=2)this.a[a]=this.Nb?this.pc:0};x(function(){for(var a=F(window.document,"c1pjs","serial"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new Ra(d);E(d,c)}}); +function Ta(a){z.call(this,"C1PDiskController",a);this.C=!1;this.pf=this.md=0;this.jd=1;this.qf=this.nd=2;this.kd=3;this.Nc=128;this.Oc=64;this.Ka=4;this.kf=1;this.ed=2;this.jf=4;this.mf=8;this.lf=16;this.fd=32;this.dd=64;this.jc=128;this.hd=4;this.gd=8;this.nf=32;this.rf=this.of=16;this.ld=17;this.Pc=3;this.td=1;this.ud=2;this.sd=4;this.rd=8;this.ye=0;this.He=40;this.reset(!0)}B(Ta);f=Ta.prototype; +f.reset=function(a){Ua(this);this.K=-1;a&&(this.U=[],this.U[0]={Yi:this.ye,Od:this.He,Lf:!0,Wa:20,ha:0,Ua:-1,Jb:[]})}; +function Ua(a){a.he={s:a.dd,aa:function(){},update:function(a){return function(c){void 0!==c&&(this.s=c);a.Zb.s&a.Ka||W(a,a.pf,this)}}(a)};a.Ha={s:255,aa:function(){this.update()},update:function(a){return function(c){void 0===c?c=a.Ha.s:Va(a,c,a.sb.s);c=c|a.jc|a.fd|a.mf|a.jf|a.ed|a.lf;c&=~a.kf;if(0<=a.K&&a.U[a.K].Jb.length){var d=a.U[a.K];d.Lf&&(c&=~a.fd);d.ha||(c&=~a.ed);10>=--d.Wa&&(0<d.Wa?(c&=~a.jc,Wa(a)):(d.Wa=100,0<=a.K&&(a.U[a.K].Ua=0,Xa(a))))}this.s=c;a.Zb.s&a.Ka&&W(a,a.md,this)}}(a)};a.Zb= +{s:0,aa:function(){},update:function(a){return function(c){void 0!==c&&(this.s=c&~(a.Nc|a.Oc));W(a,a.jd,this);a.Ha.update();a.he.update()}}(a)};a.ie={s:255,aa:function(){},update:function(a){return function(c){void 0!==c&&(this.s=c);a.$b.s&a.Ka||W(a,a.qf,this)}}(a)};a.sb={s:255,aa:function(){},update:function(a){return function(c){void 0===c?c=a.sb.s:Va(a,a.Ha.s,c);if(0<=a.K&&a.K<a.U.length){var d=a.U[a.K];d.Jb.length&&a.sb.s&a.gd&&!(c&a.gd)&&(c&a.hd?d.ha--:d.ha++,a.m&&T(a.m,a.m.La)&&a.m.message("stepping "+ +(c&a.hd?"down":"up")+" to track "+d.ha),d.ha>=d.Od&&(d.ha=d.Od),0>d.ha&&(d.ha=0),d.Wa=20,a.Ha.update(a.Ha.s|a.jc),Wa(a))}this.s=c;a.$b.s&a.Ka&&W(a,a.nd,this)}}(a)};a.$b={s:0,aa:function(){},update:function(a){return function(c){void 0!==c&&(this.s=c&~(a.Nc|a.Oc));W(a,a.kd,this);a.sb.update();a.ie.update()}}(a)};a.Vi={s:0,aa:function(){},update:function(a){return function(c){void 0!==c&&((c&a.Pc)==a.Pc&&(a.Ia.s=a.ud|a.sd|a.rd),this.s=c);a.Ia.update()}}(a)};a.Ia={s:a.ud|a.sd|a.rd,aa:function(){},update:function(a){return function(c){void 0=== +c&&(c=a.Ia.s);c&=~a.td;0<=a.K&&0<=a.U[a.K].Ua&&(c|=a.td);this.s=c;W(a,a.rf,this)}}(a)};a.Jc={s:0,aa:function(a){return function(){Xa(a)}}(a),update:function(a){return function(c){void 0!==c&&(this.s=c);W(a,a.ld,this)}}(a)};a.Wi={s:0,aa:function(){},update:function(){return function(){}}(a)}} +f.I=function(a,b,c,d){switch(c){case "listDisk":return this.r[c]=d,!0;case "loadDisk":return this.r[c]=d,d.onclick=function(a){return function(){if(a.r.listDisk){var b=a.r.listDisk.value,c=b;".json"!=b.substr(b.length-5)&&(c="http://"+window.location.host+"/api/v1/dump?disk="+b);a.i("loading "+ba(b)+"...");t(c,!0,null,a,a.Of)}}}(this),!0}return!1};f.V=function(a,b,c,d){this.a=a;this.mc=b;if(this.l=d)sa(d,b,c,this,this.H),N(d,b,c,this,this.O);this.P()}; +f.ba=function(a,b){a&&!this.C&&(this.C=!0,this.m=L(b,"debugger"))}; +f.Of=function(a,b,c){if(c)this.i("disk load error ("+c+")");else{c=[];this.i("mounting "+a+"...");try{if(c=eval("("+b+")"),c.length)if(c[0].length){var d=c[0];if(void 0===d[0].trackNum)this.i("data error: "+d[0]);else if(this.U[0]){for(b=0;b<d.length;b++){var e,g=d[b],h=g.sectors;if(void 0===(e=g.trackNum)||void 0===h)throw"track "+b+" missing data";e!=b&&u("track "+e+" out of order (expected "+b+")");c=[];var m,l,k;if(e){Ya(c,g,"trackSig");Za(c,g);X(c,g,"trackType");for(var p=0;p<h.length;p++){m= +h[p];l=m.sectorData;X(c,m,"sectorSig");X(c,m,"sectorNum");X(c,m,"sectorPages");for(k=0;k<l.length;k++)c.push(l[k]);Ya(c,m,"sectorEndSig")}}else for(m=h[0],l=m.sectorData,X(c,g,"trackLoad",2),X(c,m,"sectorPages"),k=0;k<l.length;k++)c.push(l[k]);d[e].ke=c;this.m&&T(this.m,this.m.La)&&this.m.message("track "+e+": "+c.length+" bytes")}this.U[0].Jb=d;this.i("mount of "+a+" complete")}else this.i("no available drives")}else this.i("no tracks: "+a);else this.i("no data: "+a)}catch(s){this.i("disk data error: "+ +(s.message||s))}}};function Za(a,b){var c=b.trackNum;if(void 0===c)throw"missing bcd value: trackNum";a.push(Math.floor(c/10)<<4|c%10)}function X(a,b,c,d){b=b[c];if(void 0===b)throw"missing binary value: "+c;2==d&&a.push(b>>8&255);a.push(b&255)}function Ya(a,b,c){b=b[c];if(void 0===b)throw"missing signature: "+c;for(c=0;c<b.length;c++)a.push(b.charCodeAt(c))} +function $a(a,b,c){b&=63;16>b?b&=3:32>b&&(b&=17);switch(b){case a.md:a=a.Zb.s&a.Ka?a.Ha:a.he;break;case a.jd:a=a.Zb;break;case a.nd:a=a.$b.s&a.Ka?a.sb:a.ie;break;case a.kd:a=a.$b;break;case a.of:a=c?a.Vi:a.Ia;break;case a.ld:a=a.Jc;break;default:a=a.Wi}return a}f.H=function(a,b){if(void 0!==b){var c=$a(this,a-this.mc,!1);this.m&&S(this.m,this,a,b,this.m.La,!1,c.je);c.aa()}}; +f.O=function(a,b){if(void 0!==b){var c=this.l.H(a),d=$a(this,a-this.mc,!0);if(this.m&&T(this.m,this.m.La|this.m.dc)&&(S(this.m,this,a,b,this.m.La,!0,d.je),d.Af))for(var e=128,g=d.s^c;g&&e;)g&e&&this.m.message(" changed "+d.je+"."+d.Af[e]+" to "+(c&e?"1":"0")),e>>=1;d.update(c)}};function Va(a,b,c){var d=-1;void 0!==b&&void 0!==c&&(d=0,c&a.nf||(d|=2),a.Ha.s&a.dd||(d|=1));a.K!=d&&(a.K=d,a.Ia.update())}function Wa(a){0<=a.K&&(a.U[a.K].Ua=-1,a.Jc.update(255),a.Ia.update())} +function Xa(a){var b=null;if(0<=a.K){var b=a.U[a.K],c=b.Jb[b.ha];void 0!==c&&(0<=b.Ua&&b.Ua<c.ke.length?(b.Wa=100,b=c.ke[b.Ua++],a.Jc.update(b),a.Ia.update()):(b.Wa=10,Wa(a)))}}function W(a,b,c){a.l.O(b+a.mc,c.s)}x(function(){for(var a=F(window.document,"c1pjs","disk"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new Ta(d);E(d,c)}}); +function ab(a){z.call(this,"C1PDebugger",a);this.Pa=-1;this.wa=0;this.Ic=null;this.Sb=!1;this.Z=0;this.ra=[];this.Ba=[];this.Ea=[];this.kb=0;this.Da=[];this.fa=[];this.dc=1;this.za=16;this.Ab=32;this.La=64;this.Sc=128;this.Ga=this.Ie=0;this.Ib={port:this.dc,kbd:this.za,video:this.Ab,disk:this.La,serial:this.Sc};this.ka=0;this.la=1;this.ab=2;this.Vc=3;this.Wc=4;this.Xc=5;this.Yc=6;this.Zc=7;this.$c=8;this.ad=9;this.Je=10;this.bd=11;this.cd=12;this.Ke=13;this.Le=14;this.Me=15;this.Ne=16;this.ma=17; +this.ec=18;this.fc=19;this.Db=20;this.Pe=21;this.Qe=22;this.na=23;this.Eb=24;this.Re=25;this.Se=26;this.Fb=27;this.Gb=28;this.oa=29;this.bb=30;this.cb=31;this.eb=32;this.Te=33;this.pa=34;this.Ue=35;this.Ve=36;this.We=37;this.Xe=38;this.fb=39;this.gb=40;this.Ye=41;this.Ze=42;this.qa=43;this.$e=44;this.af=45;this.bf=46;this.Aa=47;this.hc=48;this.ic=49;this.cf=50;this.df=51;this.ef=52;this.ff=53;this.gf=54;this.hf=55;this.gc=56;this.Oe=57;this.hb="ADC AND ASL BCC BCS BEQ BIT BMI BNE BPL BRK BVC BVS CLC CLD CLI CLV CMP CPX CPY DEC DEX DEY EOR INC INX INY JMP JSR LDA LDX LDY LSR NOP ORA PHA PHP PLA PLP ROL ROR RTI RTS SBC SEC SED SEI STA STX STY TAX TAY TSX TXA TXS TYA SIM .DB".split(" "); +this.vd=["HLT","MSG"];bb(this,!0);this.Y=[[this.Je],[this.pa,1,this.ia],[this.gc,1],[],[],[this.pa,1,this.D],[this.ab,1,this.D],[],[this.Ve],[this.pa,1,this.R],[this.ab,0,this.Bb],[],[],[this.pa,2,this.B],[this.ab,2,this.B],[],[this.ad,1,this.X],[this.pa,1,this.ja],[],[],[],[this.pa,1,this.J],[this.ab,1,this.J],[],[this.Ke],[this.pa,2,this.ca],[],[],[],[this.pa,2,this.L],[this.ab,2,this.L],[],[this.Gb,2,this.Cb],[this.la,1,this.ia],[],[],[this.Yc,1,this.D],[this.la,1,this.D],[this.fb,1,this.D],[], +[this.Xe],[this.la,1,this.R],[this.fb,0,this.Bb],[],[this.Yc,2,this.B],[this.la,2,this.B],[this.fb,2,this.B],[],[this.Zc,1,this.X],[this.la,1,this.ja],[],[],[],[this.la,1,this.J],[this.fb,1,this.J],[],[this.$e],[this.la,2,this.ca],[],[],[],[this.la,2,this.L],[this.fb,2,this.L],[],[this.Ye],[this.na,1,this.ia],[],[],[],[this.na,1,this.D],[this.eb,1,this.D],[],[this.Ue],[this.na,1,this.R],[this.eb,0,this.Bb],[],[this.Fb,2,this.Cb],[this.na,2,this.B],[this.eb,2,this.B],[],[this.bd,1,this.X],[this.na, +1,this.ja],[],[],[],[this.na,1,this.J],[this.eb,1,this.J],[],[this.Me],[this.na,2,this.ca],[],[],[],[this.na,2,this.L],[this.eb,2,this.L],[],[this.Ze],[this.ka,1,this.ia],[],[],[],[this.ka,1,this.D],[this.gb,1,this.D],[],[this.We],[this.ka,1,this.R],[this.gb,0,this.Bb],[],[this.Fb,2,this.Tc],[this.ka,2,this.B],[this.gb,2,this.B],[],[this.cd,1,this.X],[this.ka,1,this.ja],[],[],[],[this.ka,1,this.J],[this.gb,1,this.J],[],[this.bf],[this.ka,2,this.ca],[],[],[],[this.ka,2,this.L],[this.gb,2,this.L],[], +[],[this.Aa,1,this.ia],[],[],[this.ic,1,this.D],[this.Aa,1,this.D],[this.hc,1,this.D],[],[this.Qe],[],[this.ff],[],[this.ic,2,this.B],[this.Aa,2,this.B],[this.hc,2,this.B],[],[this.Vc,1,this.X],[this.Aa,1,this.ja],[],[],[this.ic,1,this.J],[this.Aa,1,this.J],[this.hc,1,this.Uc],[],[this.hf],[this.Aa,2,this.ca],[this.gf],[],[],[this.Aa,2,this.L],[],[],[this.cb,1,this.R],[this.oa,1,this.ia],[this.bb,1,this.R],[],[this.cb,1,this.D],[this.oa,1,this.D],[this.bb,1,this.D],[],[this.df],[this.oa,1,this.R], +[this.cf],[],[this.cb,2,this.B],[this.oa,2,this.B],[this.bb,2,this.B],[],[this.Wc,1,this.X],[this.oa,1,this.ja],[],[],[this.cb,1,this.J],[this.oa,1,this.J],[this.bb,1,this.Uc],[],[this.Ne],[this.oa,2,this.ca],[this.ef],[],[this.cb,2,this.L],[this.oa,2,this.L],[this.bb,2,this.ca],[],[this.fc,1,this.R],[this.ma,1,this.ia],[],[],[this.fc,1,this.D],[this.ma,1,this.D],[this.Db,1,this.D],[],[this.Se],[this.ma,1,this.R],[this.Pe],[],[this.fc,2,this.B],[this.ma,2,this.B],[this.Db,2,this.B],[],[this.$c,1, +this.X],[this.ma,1,this.ja],[],[],[],[this.ma,1,this.J],[this.Db,1,this.J],[],[this.Le],[this.ma,2,this.ca],[],[],[],[this.ma,2,this.L],[this.Db,2,this.L],[],[this.ec,1,this.R],[this.qa,1,this.ia],[],[],[this.ec,1,this.D],[this.qa,1,this.D],[this.Eb,1,this.D],[],[this.Re],[this.qa,1,this.R],[this.Te],[],[this.ec,2,this.B],[this.qa,2,this.B],[this.Eb,2,this.B],[],[this.Xc,1,this.X],[this.qa,1,this.ja],[],[],[],[this.qa,1,this.J],[this.Eb,1,this.J],[],[this.af],[this.qa,2,this.ca],[],[],[],[this.qa, +2,this.L],[this.Eb,2,this.L],[]]}B(ab);f=ab.prototype;f.I=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Rb=this.r[c]=d,this.Rb.focus(),d.onkeypress=function(a,b){return function(d){13==d.keyCode&&(c=b.value,b.value="",cb(a,c))}}(this,d),!0;case "debugEnter":return this.r[c]=d,fa(d,function(){return e.Rb?(c=e.Rb.value,cb(e,c),!0):!1}),!0;case "step":return this.r[c]=d,fa(d,function(a){var b=!1;H(e,!0)||(G(e,!0),b=e.step(a?1:0),G(e,!1));return b}),!0}return!1}; +f.V=function(a,b,c){this.a=a;this.$=b;this.rc=c-b+1;this.Ya=this.$+this.rc;this.P()};f.ba=function(a,b){a&&!this.C&&(this.C=!0,this.l=L(b,"cpu"))};f.W=function(){this.Rb.focus()}; +function bb(a,b){a.Bb=0;a.R=1;a.L=2;a.ca=3;a.Cb=4;a.Tc=5;a.J=6;a.Uc=7;a.ia=8;a.ja=9;a.B=10;a.D=11;a.X=a.Cb;var c="",d,e;if(b)for(a.ea="A #$nn $nnnn,X $nnnn,Y $nnnn ($nnnn) $nn,X $nn,Y ($nn,X) ($nn),Y $nnnn $nn".split(" "),d=0;d<a.ea.length;d++)e=a.ea[d],c+="("+e.replace(/\(/g,"\\(").replace(/\)/g,"\\)").replace(/nnnn/g,"[0-9A-F][0-9A-F][0-9A-F][0-9A-F]?").replace(/nn/g,"[0-9A-F][0-9A-F]?").replace(/\$/g,"\\$")+"|)";else for(a.ea="A nn [nnnn+X] [nnnn+Y] nnnn [nnnn] [nn+X] [nn+Y] [[nn+X]] [[nn]+Y] [nnnn] [nn]".split(" "), +d=0;d<a.ea.length;d++)e=a.ea[d],c+="("+e.replace(/\[/g,"\\[").replace(/\]/g,"\\]").replace(/nnnn/g,"[0-9A-F][0-9A-F][0-9A-F][0-9A-F]?").replace(/nn/g,"[0-9A-F][0-9A-F]?").replace(/\+/g,"\\+")+"|)";a.Xi=new RegExp(c);a.Bf=[a.Fb,a.Gb,a.ad,a.Zc,a.bd,a.cd,a.Vc,a.Wc,a.$c,a.Xc]}f.T=function(){this.l.T()};function T(a,b){return(a.Ga&b)===b}function S(a,b,c,d,e,g,h){(a.Ga&e)==e&&(e=a.l.H(c),a.message(b.id+"."+(g?"setByte":"getByte")+"("+q(c)+")"+(void 0!==d?" @"+q(d):"")+": "+(h?h+"=":"")+n(e)))} +f.message=function(a){this.i(a);Ca(this.l)};f.Nf=function(){this.i("Type ? for list of debugger commands\n")};f.ya=function(){if(!db(this))return!1;this.l.ya();return!0};f.step=function(a){if(!db(this))return!1;var b;try{b=this.l.step(a)}catch(c){b=void 0,J(this.l,c.message||c)}void 0!==b&&this.Pa++;this.l.update(!0);this.update(!0);return b};f.update=function(a){this.wa=this.l.d;a||this.Ta?eb(this):fb(this)}; +function db(a){a.l&&I(a.l)&&!H(a.l)?(a=a.l,a.jb?(a.i(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}f.reset=function(){var a;this.Da.length||(this.Da=Array(1E3));for(a=0;a<this.Da.length;a++)this.Da[a]=-1;this.fa.length||(this.fa=Array(256));for(a=0;a<this.fa.length;a++)this.fa[a]=[a,0];this.Pa&&this.update();this.Pa=0};f.start=function(){this.Ta||this.i("running")}; +f.stop=function(a,b){if(!this.Ta&&(this.i("stopped"),b)){var c=r();this.i(c-a+"ms ("+b+" cycles)")}this.update();this.W();this.Ta||(this.Pa=0);gb(this,this.l.d)};function hb(a,b){return a+(b<<24>>24)}f.H=function(a){var b;a>=this.$&&a<this.Ya&&(ua(this.l,a),b=this.a[this.$+a],b&=255);return b};f.O=function(a,b){a<this.$||a>=this.Ya?this.i("invalid address: "+q(a)):(this.a[this.$+a]=b&255,va(this.l,a),this.l.update())};function ib(a,b){Y(a.ra,b,void 0)||a.ra.push(b);return!0} +function Y(a,b,c){for(var d=!1,e=0;e<a.length;e++)if(a[e]==b){c&&a.splice(e,1);d=!0;break}return d}function jb(a,b){void 0!==b&&(gb(a,a.Oa),ib(a,b)&&(a.Oa=b))}function gb(a,b){void 0!==a.Oa&&b==a.Oa&&Y(a.ra,a.Oa,!0)&&(a.Oa=void 0);a.Ta=!1}function Ba(a,b,c,d){for(var e=!1,g=0;g<c.length;g++)if(c[g]==b){b!=a.Oa&&a.i("breakpoint hit: "+q(b)+" ("+d+")");e=!0;break}return e} +function kb(a,b,c){var d=q(b),e=a.H(b++),g=a.Y[e],h=void 0===e?0:e,m=[],l=void 0===g[1]?0:g[1];do{d+=" "+n(h);if(!l--)break;h=a.H(b++);if(void 0===h)break;m.push(h)}while(1);void 0===g[0]&&(g=[a.Oe,1,a.R],m.push(e));var d=(d+" ").substr(0,15),d=d+a.hb[g[0]],k=null;if(void 0!==g[2]){l=g[2];k=a.ea[l];if(1==g[1]&&l==a.X)k=k.replace(/nnnn/,q(hb(b,h=m.pop())));else for(;m.length;)k=k.replace(/nn/,n(h=m.pop()));l==a.R&&1==g[1]&&32<=h&&128>h&&(k+=" ;'"+String.fromCharCode(h)+"'")}if(e==a.l.gc&&(h< +a.vd.length&&(k=a.vd[h]),h==a.l.pd)){l=0;for(k='"';h=a.H(b++);)16>l?k+=String.fromCharCode(h):16==l&&(k+="\u2026"),l++;k+='"'}k&&(d+=" "+k);c&&(d=(d+" ").substr(0,30),d+=";"+c.toString());a.Zf=b;return d} +function Z(a,b){var c=a.wa;if(void 0!==b){var d=16;"$"==b.charAt(0)?b=b.substr(1):"0x"==b.substr(0,2)?b=b.substr(2):"."==b.charAt(b.length-1)&&(d=10,b=b.substr(0,b.length-1));c=parseInt(b,d);isNaN(c)&&(a.i("invalid base-"+d+" address: "+b),c=void 0)}void 0!==c&&(c<a.$||c>=a.Ya)&&(a.i("address out of range: "+aa(c)),c=void 0);return c} +function lb(a,b){if("?"==b)a.i("\nfrequency commands:"),a.i("clear\tclear all frequency counts");else{var c=0,d;if(a.fa)if("clear"==b){for(d=0;d<a.fa.length;d++)a.fa[d]=[d,0];a.i("frequency data cleared");c++}else if(void 0!==b)a.i("unknown frequency command: "+b),c++;else{var e=a.fa.slice();e.sort(function(a,b){return b[1]-a[1]});for(d=0;d<e.length;d++){var g=e[d][0],h=e[d][1];h&&(a.i(a.hb[a.Y[g][0]]+" ("+n(g)+"): "+h+" times"),c++)}}c||a.i("no frequency data available")}} +function eb(a,b,c,d){var e=Z(a,b);if(void 0!==e){void 0===d&&(d=1);b=a.Ya;if(void 0!==c){b=Z(a,c);if(void 0===b||b<e)return;if(256<b-e){a.i("range too large");return}b++;d=-1}for(e!=a.wa&&a.i();d--&&e<b;)c=kb(a,e,H(a,!1)||a.Ta?a.Pa:0),a.i(c),a.wa=e=a.Zf}} +function fb(a,b){if(b&&"?"==b[1])a.i("\nregister commands:"),a.i("r to display all"),a.i("r [target=value] to modify"),a.i("supported targets:"),a.i("A,X,Y,S,PC and flags C,Z,D,V,N");else{var c=!0;if(void 0!==b&&1<b.length){var c=!1,d=b[1],e=null,g=d.indexOf("=");if(0<g)e=d.substr(g+1),d=d.substr(0,g);else if(2<b.length)e=b[2];else{a.i("missing value for "+b[1]);return}g=parseInt(e,16);if(isNaN(g)){a.i("invalid value: "+e);return}switch(d.toUpperCase()){case "A":a.l.e=g&255;break;case "X":a.l.n=g& +255;break;case "Y":a.l.p=g&255;break;case "C":a.l.c=g?256:0;break;case "Z":a.l.g=g?0:1;break;case "D":g?Ea(a.l):Fa(a.l);break;case "V":g?(d=a.l,d.u=0,d.v=128):(d=a.l,d.u=0,d.v=0);break;case "N":a.l.f=g?128:0;break;case "S":if(256!=(g&-256)){a.i("invalid stack pointer: "+e);return}a.l.q=g;break;case "PC":c=!0;a.l.d=g&65535;a.wa=a.l.d;break;default:a.i("unknown register: "+d);return}a.l.update()}a.i("A="+n(a.l.e)+" X="+n(a.l.n)+" Y="+n(a.l.p)+" P="+n(za(a.l))+" S="+q(a.l.q)+" PC="+q(a.l.d));c&&eb(a, +q(a.wa=a.l.d))}}function mb(a,b){var c=void 0===b?1:parseInt(b,10),d=1==c?0:1;ea(c,function(a){return function(){return G(a,!0)&&a.step(d)}}(a),function(a){return function(){G(a,!1)}}(a))} +function cb(a,b){b.length||(a.Sb?(a.i("ended assemble @"+q(a.Z)),a.wa=a.Z,a.Sb=!1):a.Ic&&(b=a.Ic));if(I(a)&&!H(a,!0)&&0<b.length){a.Sb?b="a "+q(a.Z)+" "+b:1<b.length&&1!=b.indexOf(" ")&&(b=b.charAt(0).toLowerCase()+" "+b.substr(1));var c=b.split(" ");a.Ic=c[0];switch(c[0].toLowerCase()){case "a":var d=Z(a,c[1]);if(void 0!==d)if(a.Z=d,void 0===c[2])a.i("begin assemble @"+q(a.Z)),a.Sb=!0,a.l.update();else{var e,g=c[2],h=c[3],c=a.Z,d=[];if(void 0!==g){var m,g=g.toUpperCase();"?"==g.charAt(g.length-1)&& +(h="?",g=g.substr(0,g.length-1));for(m=0;m<a.hb.length&&g!=a.hb[m];m++);m==a.hb.length&&(a.i("unknown operation: "+g),m=-1);var l="",k;if(0<=m&&void 0!==h)if(l=h.toUpperCase(),"?"==l){for(h=k=0;h<a.Y.length;h++)a.Y[h][0]===m&&(k||a.i("supported opcodes:"),a.i(" "+n(h)+": "+g+(void 0!==a.Y[h][2]?" "+a.ea[a.Y[h][2]]:"")),k++);m=-1}else if(k=l.match(a.Xi),null!==k&&k[0]==l){for(h=1;h<k.length;h++)if(k[h]==l)if(void 0===e)e=h-1;else{a.i("too many operand matches (both "+a.ea[e]+" and "+a.ea[h-1]+ +")");m=-1;break}e==a.Cb&&0>a.Bf.indexOf(m)&&(e=a.B);e==a.Tc&&m!=a.Fb&&(e=a.B)}else a.i("unknown operand: "+l),m=-1;if(0<=m){k=-1;for(h=0;h<a.Y.length;h++)if(a.Y[h][0]===m&&a.Y[h][2]===e)if(0>k)k=h;else{a.i("too many instruction matches (both "+n(k)+" and "+n(h)+")");k=-2;break}if(0<=k){if(d.push(k),void 0!==e)if(g=a.Y[k][1],l=l.match(/[0-9A-F]+/),null!==l)for(l=parseInt(l[0],16),1==g&&e==a.X&&(l-=c+2,-128>l||127<l)&&(a.i("branch out of range ("+l+")"),d=[],g=0),h=0;h<g;h++)d.push(l&255),l>>>=8;else g&& +a.i("instruction missing "+g+" bytes")}else a.i("unknown instruction: "+g+" "+l+"")}}e=d;if(e.length){for(c=0;c<e.length;c++)a.O(a.Z+c,e[c]);a.i(kb(a,a.Z));a.Z+=e.length}}break;case "b":e=c[1];c=c[2];if(void 0===e||"?"==e)a.i("\nbreakpoint commands:"),a.i("bp [a]\tset exec breakpoint at [a]"),a.i("br [a]\tset read breakpoint at [a]"),a.i("bw [a]\tset write breakpoint at [a]"),a.i("bc [a]\tclear breakpoint at [a]"),a.i("bl\tlist all breakpoints");else if(void 0===c&&1<e.length&&(c=e.substr(1),e=e.substr(0, +1)),"l"==e){e=0;d=a.ra;for(c=0;c<d.length;c++)a.i("breakpoint enabled: "+q(d[c])+" (exec)"),e++;d=a.Ba;for(c=0;c<d.length;c++)a.i("breakpoint enabled: "+q(d[c])+" (read)"),e++;d=a.Ea;for(c=0;c<d.length;c++)a.i("breakpoint enabled: "+q(d[c])+" (write)"),e++;e||a.i("no breakpoints")}else void 0===c?a.i("missing breakpoint address"):"c"==e&&"*"==c?(a.ra=[],a.Ba=[],a.Ea=[],a.i("all breakpoints cleared")):(c=Z(a,c),void 0!==c&&("p"==e?ib(a,c)?a.i("breakpoint enabled: "+q(c)+" (exec)"):a.i("breakpoint not set: "+ +q(c)):"c"==e?Y(a.ra,c,!0)?a.i("breakpoint cleared: "+q(c)+" (exec)"):Y(a.Ba,c,!0)?a.i("breakpoint cleared: "+q(c)+" (read)"):Y(a.Ea,c,!0)?a.i("breakpoint cleared: "+q(c)+" (write)"):a.i("breakpoint missing: "+q(c)):"r"==e?(Y(a.Ba,c,void 0)||a.Ba.push(c),a.i("breakpoint enabled: "+q(c)+" (read)")):"w"==e?(Y(a.Ea,c,void 0)||a.Ea.push(c),a.i("breakpoint enabled: "+q(c)+" (write)")):a.i("unknown breakpoint command: "+e)));break;case "d":e=c[1];d=c[2];if("?"==e)a.i("\ndump commands:"),a.i("d [a] [#] dump # lines of memory"); +else if(e=Z(a,e),void 0!==e){c=0;void 0!==d&&("l"==d.charAt(0)&&(d=d.substr(1)),c=parseInt(d,10));c||(c=1);for(d=0;d<c;d++){l=g="";h=e;for(m=0;8>m&&e<a.Ya;m++)k=a.H(e),void 0===k&&(k=0),g+=n(k)+" ",l+=32<=k&&128>k?String.fromCharCode(k):".",e++;a.i(q(h)+" "+g+l)}a.wa=e}break;case "e":e=c[1];if(void 0===e)a.i("missing address");else if(e=Z(a,e),void 0!==e)for(d=2;d<c.length;d++)g=parseInt(c[d],16),a.O(e++,g);break;case "f":lb(a,c[1]);break;case "g":e=c[1];void 0!==e&&jb(a,Z(a,e));a.ya()||a.l.W();break; +case "h":a.T();break;case "o":if(void 0===c[1]||"?"==c[1])a.i("\noption commands:"),a.i("max\trun at maximum speed"),a.i("fast\trun faster (up to "+a.l.mb+"Mhz)"),a.i("slow\trun at normal speed (1Mhz)"),a.i("classic\tuse classic operand syntax"),a.i("modern\tuse modern operand syntax"),a.i("msg\tenable message categories");else switch(e=c[1],e){case "slow":M(a.l,a.l.Hb);break;case "fast":M(a.l,a.l.qd);break;case "max":M(a.l,a.l.Ma);break;case "classic":bb(a,!0);a.i("classic syntax enabled");break; +case "modern":bb(a,!1);a.i("modern syntax enabled");break;case "msg":e=0;void 0!==c[2]&&("all"==c[2]?e=255:void 0!==a.Ib[c[2]]&&(e=a.Ib[c[2]]),e&&("on"==c[3]?a.Ga|=e:"off"==c[3]&&(a.Ga&=~e)));for(d in a.Ib)if(void 0===c[2]||"all"==c[2]||c[2]==d)e=a.Ib[d],a.i(d+" messages: "+(a.Ga&e?"on":"off"));break;default:a.i("unknown option: "+e)}break;case "p":l=c[1];e=10;c=a.kb;d=a.Da;if(void 0!==d){g=void 0===l?a.Yf:parseInt(l,10);void 0===g&&(g=10);g>d.length&&(a.i("note: only "+d.length+" available"),g=d.length); +void 0!==l&&(a.zc=0,a.i(g+" instructions earlier:"));l=a.zc?a.zc:1;c-=g;for(0>c&&(c=d.length-1);e&&c!=a.kb;){h=d[c];if(0>h)break;a.i(kb(a,h,l++));++c==d.length&&(c=0);e--;g--}a.Yf=g;a.zc=l}10==e&&a.i("no history available");break;case "r":fb(a,c);break;case "s":a.H(a.l.d)==a.l.Gb?(jb(a,a.l.d+3),a.Ta=!0,a.ya()||a.l.W()):mb(a);break;case "t":mb(a,c[1]);break;case "u":eb(a,c[1],c[2],8);break;case "?":case "help":a.i("\ncommands:\n?\thelp\na [#]\tassemble\nb [#]\tbreakpoint\nd [#]\tdump memory\ne [#]\tedit memory\nf\tdump frequencies\ng [#]\trun to [#]\nh\thalt\no\toptions\np [#]\tdump history\nr\tdump/edit registers\ns\tstep over instruction\nt [#]\tstep instruction(s)\nu [#]\tunassemble"); +a.i("note: frequency and history commands operate only when breakpoints are set");break;default:a.i("unknown command: "+b)}}}x(function(){for(var a=F(window.document,"c1pjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new ab(d);E(d,c)}});function $(a,b){z.call(this,"C1PComputer",a);this.Q=b}B($);$.prototype.reset=function(a){var b=null,c;for(c in this.Q)for(var d=0;d<this.Q[c].length;d++){var e=this.Q[c][d];e&&e.reset&&(e.reset(),"cpu"==c&&(b=e))}b&&(b.update(),a&&b.ya())}; +$.prototype.start=function(){for(var a in this.Q)if("cpu"!=a)for(var b=0;b<this.Q[a].length;b++){var c=this.Q[a][b];c&&c.start&&c.start()}};$.prototype.stop=function(a,b){for(var c in this.Q)if("cpu"!=c)for(var d=0;d<this.Q[c].length;d++){var e=this.Q[c][d];e&&e.stop&&e.stop(a,b)}};$.prototype.I=function(a,b,c,d){switch(c){case "reset":return this.r[c]=d,d.onclick=function(a){return function(){a.reset()}}(this),!0}return!1};function L(a,b){return a.Q[b]?a.Q[b][0]:null} +function nb(a){var b=null,c;for(c in a.Q)for(var d=0;d<a.Q[c].length;d++){var e=a.Q[c][d];if(e){if(!I(e)){I(e,function(a){return function(){nb(a)}}(a));return}"cpu"==c?b=e:e.ba&&e.ba(!0,a)}}a.P();a.i("C1Pjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>");b&&b.ba(!0,a)} +x(function(){for(var a=F(window.document,"c1pjs","computer"),b=0;b<a.length;b++){var c=a[b],d=D(c),e,g={},h=C("panel",d.id);if(h&&(g.panel=[h],h.sc)){var m;e=d.id;m=void 0;var l=[];e&&(e=0<(m=e.indexOf("."))?e.substr(0,m+1):"");for(m=0;m<A.length;m++){var k=A[m];e&&k.id.indexOf(e)||l.push(k)}m=l;for(l=0;l<m.length;l++)e=m[l],e!=h&&(e.Xb=h.Xb,e.i=h.i,e.sc=h.sc)}for(var p,l=m=h=0;l<d.modules.length;l++){k=d.modules[l];if(!l){if("cpu"!=k.type)break;h=k.start;m=k.end;p=Array(m+1-h);for(e=h;e<p.length;e++)p[e]= +0}if(e=C(k.refID,d.id)){var s=k.type;void 0===g[s]&&(g[s]=[]);g[s].push(e);e.V&&void 0!==k.start&&e.V(p,k.start,k.end,g.cpu[0])}else{u('no component for <module refid="'+k.refID+'">');return}}if(void 0===p){u('<module type="cpu"> definition must appear first in the <computer> specification');break}if(e=C("debugger",d.id))g["debugger"]=[e],e.V&&e.V(p,h,m,g.cpu[0]);d=new $(d,g);E(d,c);nb(d)}});function ob(a,b,c,d){var e=t(a);if(e[0])throw Error(e[1]);return pb(e[1],a,b,c,d)} +function pb(a,b,c,d,e){var g=null;if(a){if(e)for(var h=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;g=h.exec(a);){var m=g[2],l=t(m),k=l[1];if(l[0]||!k)throw c="unable to resolve XML reference: "+g[0]+" ("+l[0]+")",Error(c);if(l=g[3]){var p=k.match(new RegExp("<"+g[1]+"[^>]*>"));if(p){for(var m=p[0],s,wa=/( [a-z]+=)(['"])(.*?)\2/g;s=wa.exec(l);)m=0>m.indexOf(s[1])?m.replace(">",s[0]+">"):m.replace(new RegExp(s[1]+"(['\"])(.*?)\\1"),s[0]);p[0]!=m&&(k=k.replace(p[0],m))}else throw c="missing <"+g[1]+"> in "+m, +Error(c);}k=k.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(g[0],k);h.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*\]>\s*/g,"")),g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+ (255<a.length?a.substr(0,255)+"...":a));}return[a,g]} -window.embedC1P=function(a,b,c){var d=c,e=c="",g=null;try{if(g=window.document.getElementById(a)){d||(d="/versions/c1pjs/1.15.4/components.xsl");var k="<"==b.substr(0,1)?sb(b,null,a,void 0,!1):rb(b,a,void 0,!0);c=k[0];var n=k[1];if(n){var k=rb(d),m=k[1];if(m)if(window.ActiveXObject||"ActiveXObject"in window){var l=n.transformNode(m);l?g.outerHTML=l:e="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var q=new XSLTProcessor;q.importStylesheet(m); -var t=q.transformToFragment(n,window.document);t?g.parentNode.replaceChild(t,g):e="transformToFragment failed"}else e="unable to transform XML: unsupported browser";else e="failed to load XSL file: "+d}else e="failed to load XML file: "+b}else e="failed to find machine element: "+a}catch(ya){e=ya.message}e&&g&&(a=F(g,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+da(e)));return e||c};window.enableEvents=function(a){ga=a};window.sendEvent=function(a){w[a]&&y(w[a])};})();//@ sourceMappingURL=/tmp/c1pjs/1.15.4/c1p-dbg.map +window.embedC1P=function(a,b,c){var d=c,e=c="",g=null;try{if(g=window.document.getElementById(a)){d||(d="/versions/c1pjs/1.15.4/components.xsl");var h="<"==b.substr(0,1)?pb(b,null,a,void 0,!1):ob(b,a,void 0,!0);c=h[0];var m=h[1];if(m){var h=ob(d),l=h[1];if(l)if(window.ActiveXObject||"ActiveXObject"in window){var k=m.transformNode(l);k?g.outerHTML=k:e="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var p=new XSLTProcessor;p.importStylesheet(l); +var s=p.transformToFragment(m,window.document);s?g.parentNode.replaceChild(s,g):e="transformToFragment failed"}else e="unable to transform XML: unsupported browser";else e="failed to load XSL file: "+d}else e="failed to load XML file: "+b}else e="failed to find machine element: "+a}catch(wa){e=wa.message}e&&g&&(a=F(g,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+da(e)));return e||c};window.enableEvents=function(a){ga=a};window.sendEvent=function(a){w[a]&&y(w[a])};})();//@ sourceMappingURL=/tmp/c1pjs/1.15.4/c1p-dbg.map diff --git a/versions/c1pjs/1.15.4/c1p.js b/versions/c1pjs/1.15.4/c1p.js index 2f724f238..95313ba4c 100644 --- a/versions/c1pjs/1.15.4/c1p.js +++ b/versions/c1pjs/1.15.4/c1p.js @@ -1,127 +1,127 @@ -(function(){var e;function p(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function aa(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));return b}var ba={"&":"&","<":"<",">":">",'"':""","'":"'"};function ca(a){return a.replace(/[&<>"']/g,function(a){return ba[a]})} -function r(a,b,c,d,f){b=!!b;var g=0,h=null,l=aa(a),m=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(m.onreadystatechange=function(){4===m.readyState&&(m.onreadystatechange=void 0,h=m.responseText,200!=m.status&&(g=m.status||-1),d&&f&&f.call(d,l,h,g,void 0))});if(c){var k="",n;for(n in c)c.hasOwnProperty(n)&&(k&&(k+="&"),k+=n+"="+encodeURIComponent(c[n]));k=k.replace(/%20/g,"+");m.open("POST",a,b);m.setRequestHeader("Content-type","application/x-www-form-urlencoded"); -m.send(k)}else m.open("GET",a,b),m.send();a=[];b||(h=m.responseText,200!=m.status&&(g=m.status||-1),d&&f&&f.call(d,l,h,g,void 0),a=[g,h]);return a}function s(a){window?window.alert(a):console.log(a)}function t(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var u={init:[],show:[],exit:[]},da=!0; +(function(){var e;function q(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function aa(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));return b}var ba={"&":"&","<":"<",">":">",'"':""","'":"'"};function ca(a){return a.replace(/[&<>"']/g,function(a){return ba[a]})} +function r(a,b,c,d,f){b=!!b;var g=0,l=null,h=aa(a),m=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(m.onreadystatechange=function(){4===m.readyState&&(m.onreadystatechange=void 0,l=m.responseText,200!=m.status&&(g=m.status||-1),d&&f&&f.call(d,h,l,g,void 0))});if(c){var k="",n;for(n in c)c.hasOwnProperty(n)&&(k&&(k+="&"),k+=n+"="+encodeURIComponent(c[n]));k=k.replace(/%20/g,"+");m.open("POST",a,b);m.setRequestHeader("Content-type","application/x-www-form-urlencoded"); +m.send(k)}else m.open("GET",a,b),m.send();a=[];b||(l=m.responseText,200!=m.status&&(g=m.status||-1),d&&f&&f.call(d,h,l,g,void 0),a=[g,l]);return a}function s(a){window?window.alert(a):console.log(a)}function t(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var u={init:[],show:[],exit:[]},da=!0; function v(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function w(a){u.init.push(a)}function x(a){if(da)for(var b=0;b<a.length;b++)a[b]()}v("onload",function(){x(u.init)});v("onpageshow",function(){x(u.show)});v(t("Opera")||t("iOS")?"onunload":"onbeforeunload",function(){x(u.exit)}); -function y(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.bc=this.id.substr(0,b),this.ac=this.id.substr(b+1)):this.ac=this.id;this[a]=c;this.jb=null;this.Ma=this.pa=this.ib=this.Na=!1;this.o={};ea(this);z[z.length]=this}var A=void 0;if(window){A||(A=window.location.search.substr(1));for(var B,fa=/\+/g,ga=/([^&=]+)=?([^&]*)/g;B=ga.exec(A);)B[1].replace(fa," "),B[2].replace(fa," ")} -function ha(){var a=y.prototype;function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function C(a){a.prototype=ha()}var z=[];function D(){}function ia(a,b){b||s(a)}function E(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<z.length;c++)if(z[c].id===a)return z[c]}return null} -function F(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){s(c.message+" ("+a+")")}return b} -function G(a,b){var c,d;d=H(b.parentNode,"c1pjs-control");for(c=0;c<d.length;c++){var f,g;g=d[c].childNodes;for(f=0;f<g.length;f++){var h=g[f];if(h.nodeType===window.document.ELEMENT_NODE){var l=h.getAttribute("class");if(l){var m,k;k=l.split(" ");for(m=0;m<k.length;m++)switch(l=k[m],l){case "c1pjs-input":case "c1pjs-output":(k=F(h))&&k.binding&&a.G(l,k.type,k.binding,h),k=[]}}}}}} -function H(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var f=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)f.test(a[b].className)&&c.push(a[b]);return c} -y.prototype={toString:function(){return this.name?this.name:this.id||this.type},G:function(a,b,c,d){switch(c){case "clear":return this.o[c]||(this.o[c]=d,d.onclick=function(a){return function(){a.o.print&&(a.o.print.value="")}}(this)),!0;case "print":return this.o[c]||(this.o[c]=d,d.value="",D=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),ia=function(a,b,c){D(a,"notice", -c)}),!0}return!1},log:function(){},status:function(a){I(this,this.ac+": "+a)},I:function(a){!this.Ma&&(this.Na=!1!==a)&&(this.name&&this.log("ready"),a=this.jb,this.jb=null,a&&a())}};function ja(a,b){if(a.ib)return a.pa&&(a.pa=!1),a.ib=!1;if(a.Ma)return I(a,a.toString()+" error"),!1;a.pa=b;return a.pa}function J(a,b){b&&(a.Na?b():a.jb=b);return a.Na}function K(a,b){a.Ma=!0;ia("Fatal error: "+b,void 0,a.id)}function I(a,b){D(b,void 0,a.id)} -function ea(a){var b=1;a.bc&&(a=a.bc.match(/\d+/),null!==a&&(b=parseInt(a[0],10)));return b}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);function L(a){y.call(this,"C1PPanel",a);this.w=!1}C(L);L.prototype.G=function(a,b,c,d){return this.F&&this.F.G(a,b,c,d)||this.s&&this.s.G(a,b,c,d)||this.B&&this.B.G(a,b,c,d)?!0:y.prototype.G.call(this,a,b,c,d)};L.prototype.R=function(a,b){a&&!this.w&&(this.w=!0,this.F=b,this.s=M(b,"cpu"),this.B=M(b,"keyboard"),ka())}; -function ka(){for(var a=!1,b=H(window.document,"c1pjs","panel"),c=0;c<b.length;c++){var d=b[c],f=F(d),g=E(f.id);g||(a=!0,g=new L(f));G(g,d);a&&g.I()}}w(ka); -function N(a){y.call(this,"C1PCPU",a);la(this);this.Q=this.w=!1;this.Xb=a.autoStart;this.Za=0;this.ud=1;this.na=2;this.speed=this.Za;this.ta=1E6;this.ob=this.qb=30;this.nb=5;this.Ld=1;this.Pa=8;this.Rb=["Slow","Fast","Max"];this.zd=["("+this.Ld+"Mhz)","(up to "+this.Pa+"Mhz)","(unlimited)"];this.X=[];this.S=[];this.cb=65536;this.eb=0;this.Ga=65536;this.Ha=0;this.Mc=128;this.Nc=64;this.Ic=16;this.Kc=8;this.Lc=4;this.Oc=2;this.Jc=1;this.xd=65532;this.sd=0;this.td=1;this.q=[this.we,this.Qf,this.Hg,this.i, -this.i,this.Sf,this.me,this.i,this.Vf,this.Pf,this.le,this.i,this.i,this.Mf,this.je,this.i,this.ve,this.Rf,this.i,this.i,this.i,this.Tf,this.ne,this.i,this.ze,this.Of,this.i,this.i,this.i,this.Nf,this.ke,this.i,this.nf,this.fe,this.i,this.i,this.se,this.he,this.ag,this.i,this.Xf,this.ee,this.$f,this.i,this.re,this.be,this.Yf,this.i,this.te,this.ge,this.i,this.i,this.i,this.ie,this.bg,this.i,this.rg,this.de,this.i,this.i,this.i,this.ce,this.Zf,this.i,this.hg,this.af,this.i,this.i,this.i,this.cf,this.Jf, -this.i,this.Uf,this.$e,this.If,this.i,this.mf,this.Xe,this.Gf,this.i,this.xe,this.bf,this.i,this.i,this.i,this.df,this.Kf,this.i,this.Be,this.Ze,this.i,this.i,this.i,this.Ye,this.Hf,this.i,this.ig,this.rc,this.i,this.i,this.i,this.tc,this.fg,this.i,this.Wf,this.qc,this.eg,this.i,this.lf,this.nc,this.cg,this.i,this.ye,this.sc,this.i,this.i,this.i,this.uc,this.gg,this.i,this.tg,this.pc,this.i,this.i,this.i,this.oc,this.dg,this.i,this.i,this.xg,this.i,this.i,this.Fg,this.zg,this.Cg,this.i,this.We,this.i, -this.Lg,this.i,this.Eg,this.ug,this.Bg,this.i,this.oe,this.yg,this.i,this.i,this.Gg,this.Ag,this.Dg,this.i,this.Ng,this.wg,this.Mg,this.i,this.i,this.vg,this.i,this.i,this.Df,this.sf,this.yf,this.i,this.Ef,this.uf,this.zf,this.i,this.Jg,this.rf,this.Ig,this.i,this.Bf,this.of,this.wf,this.i,this.pe,this.tf,this.i,this.i,this.Ff,this.vf,this.Af,this.i,this.Ce,this.qf,this.Kg,this.i,this.Cf,this.pf,this.xf,this.i,this.Pe,this.He,this.i,this.i,this.Qe,this.Je,this.Te,this.i,this.kf,this.Ge,this.Ve,this.i, -this.Oe,this.De,this.Re,this.i,this.ue,this.Ie,this.i,this.i,this.i,this.Ke,this.Ue,this.i,this.Ae,this.Fe,this.i,this.i,this.i,this.Ee,this.Se,this.i,this.Me,this.zc,this.i,this.i,this.Ne,this.Bc,this.gf,this.i,this.jf,this.yc,this.Lf,this.i,this.Le,this.vc,this.ef,this.i,this.qe,this.Ac,this.i,this.i,this.i,this.Cc,this.hf,this.i,this.sg,this.xc,this.i,this.i,this.i,this.wc,this.ff,this.i];this.yd=[7,6,0,0,0,3,5,0,3,2,2,0,0,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,3,6,0,0,3,3,5,0,4,2,2,0,4,4,6,0,2, -5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,6,6,0,0,0,3,5,0,3,2,2,0,3,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,6,6,0,0,0,3,5,0,4,2,2,0,5,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,0,6,0,0,3,3,3,0,2,0,2,0,4,4,4,0,2,5,0,0,4,4,4,0,2,4,2,0,0,4,0,0,2,6,2,0,3,3,3,0,2,2,2,0,4,4,4,0,2,5,0,0,4,4,4,0,2,4,2,0,4,4,4,0,2,6,0,0,3,3,5,0,2,2,2,0,4,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,2,6,0,0,3,3,5,0,2,2,2,0,4,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0]}C(N);e=N.prototype; -e.reset=function(a){this.Q&&O(this);la(this);var b=this.xd;this.d=this.a[b]|this.a[b+1]<<8;this.Ma=!1;a&&(!0===this.Xb||null===this.Xb&&void 0===this.o.run)&&P(this)}; -e.G=function(a,b,c,d){a=!1;switch(c){case "run":this.o[c]=d;d.onclick=function(a){return function(){a.Q?O(a):P(a)}}(this);a=!0;break;case "A":case "X":case "Y":case "S":case "PC":case "C":case "Z":case "I":case "D":case "B":case "V":case "N":case "speed":this.o[c]=d;a=!0;break;case "setSpeed":this.o[c]=d,d.onclick=function(a){return function(){na(a,a.speed>=a.na?a.Za:a.speed+1,!0)}}(this),a=!0}return a}; -e.O=function(a,b){this.a=a;(this.lc=b)?s("unsupported CPU address buffer offset ("+this.lc+")"):this.I()};e.R=function(a,b){if(a&&!this.w){this.F=b;var c=M(b,"video");c&&(this.hb=function(a){return function(){oa(a)}}(c),this.ca=function(a){return function(){a.ca()}}(c));this.w=!0;this.reset(!0);this.update()}};function pa(a,b,c,d,f){0>qa(a.X,b,c,d,f)&&(a.cb>b&&(a.cb=b),a.eb<c&&(a.eb=c),a.X.push([b,c,d,f]))} -function Q(a,b,c,d,f){0>qa(a.S,b,c,d,f)&&(a.Ga>b&&(a.Ga=b),a.Ha<c&&(a.Ha=c),a.S.push([b,c,d,f]))}function qa(a,b,c,d,f){for(var g=0;g<a.length;g++)if(a[g][0]==b&&a[g][1]==c&&a[g][2]==d&&a[g][3]==f)return g;return-1}function na(a,b,c){void 0!==b&&(a.speed=b,a.o.setSpeed&&(a.o.setSpeed.innerHTML=a.Rb[2<=b?0:b+1]),I(a,"running at "+a.Rb[b].toLowerCase()+" speed "+a.zd[b]),c&&a.ca());a.ka=0;a.cc=Date.now()||+new Date;ra(a)}e.hb=function(){};e.ca=function(){}; -function R(a,b,c,d){void 0!==a.o[b]&&(void 0===d&&(d=1),c="0000"+c.toString(16),a.o[b].innerHTML=c.slice(c.length-d).toUpperCase())}function sa(a){R(a,"A",a.e,2);R(a,"X",a.k,2);R(a,"Y",a.m,2);var b=ta(a);R(a,"C",b&a.Jc?1:0);R(a,"Z",b&a.Oc?1:0);R(a,"I",b&a.Lc?1:0);R(a,"D",b&a.Kc?1:0);R(a,"B",b&a.Ic?1:0);R(a,"V",b&a.Nc?1:0);R(a,"N",b&a.Mc?1:0);R(a,"S",a.n,4);R(a,"PC",a.d,4);a.o.speed&&a.V&&(a.o.speed.innerHTML=a.V.toFixed(1)+"Mhz")} -function ra(a,b){var c=a.qb;c<a.ob&&(c=a.ob);c<a.nb&&(c=a.nb);var d=1;b&&a.speed>a.Za&&a.V&&(d=a.V);d>a.Pa&&a.speed<a.na&&(d=a.Pa);a.Nd=Math.round(1E3/a.qb);a.Ra=Math.floor(a.ta/c*d);a.kb=Math.floor(a.ta/a.qb*d);a.ec=Math.floor(a.ta/a.ob*d);a.dc=Math.floor(a.ta/a.nb*d);b||(a.ia=a.kb,a.sa=a.ec,a.ra=a.dc);a.mb=0}function ua(a){a.mb>=a.ta&&ra(a,!0);a.ua=0;a.Qd=Date.now()||+new Date} -function va(a){var b=Date.now()||+new Date,c=a.Nd;a.ua&&(c=Math.round(c*a.ua/a.kb));c-=b-a.Qd;if(b-=a.cc)a.V=Math.round(a.ka/(100*b))/10,864E5<=b&&na(a);0>c?c=0:a.speed==a.ud?a.V<=a.Pa&&(c=0):a.speed==a.na&&(c=0);a.mb+=a.ua;return c} -function P(a){if(ja(a,!0)){a.Q||(na(a),a.F&&a.F.start(),a.Q=!0,a.o.run&&(a.o.run.innerHTML="Halt"),a.ca());ua(a);try{do{a.step(a.Ra);var b=a.W-a.A;a.ka+=b;a.ua+=b;a.W=a.A=0;a.sa-=a.Ra;0>=a.sa&&(a.sa+=a.ec,a.hb());a.ra-=a.Ra;0>=a.ra&&(a.ra+=a.dc,sa(a));a.ia-=a.Ra;if(0>=a.ia){a.ia+=a.kb;break}}while(a.Q)}catch(c){O(a);a.update();ja(a,!1);K(a,c.message||c);return}setTimeout(function(a){return function(){P(a)}}(a),va(a))}else a.update(),a.F&&a.F.stop(a.cc,a.ka)} -e.step=function(a){this.b=this.h=-1;this.W=this.A=a;do{a=this.a[this.d];this.d++;this.q[a].call(this);if(0<=this.b){if(this.b>=this.cb&&this.b<=this.eb)for(var b=this.b,c=this.d,d=0;d<this.X.length;d++)b>=this.X[d][0]&&b<=this.X[d][1]&&this.X[d][3].call(this.X[d][2],b,c);this.b=-1}else if(0<=this.h){if(this.h>=this.Ga&&this.h<=this.Ha)for(b=this.h,c=this.d,d=0;d<this.S.length;d++)b>=this.S[d][0]&&b<=this.S[d][1]&&this.S[d][3].call(this.S[d][2],b,c);this.h=-1}this.A-=this.yd[a]}while(0<this.A);return!0}; -function O(a){a.pa&&(a.ib=!0);a.W-=a.A;a.A=0;a.Q&&(a.Q=!1,a.o.run&&(a.o.run.innerHTML="Run"))}e.update=function(){this.hb();sa(this)};function wa(a){return a.Q?a.ka+a.W-a.A:0}e.M=function(a){return this.a[a]};e.K=function(a,b){this.a[a]=b};function ta(a){var b=a.c&256?1:0,b=b|(a.g&255?0:2),b=b|((a.r&255^a.v^a.r>>1)&128?64:0),b=b|(a.f&128?128:0);return a.t&60|b} -function S(a,b,c){var d=a.c&256?1:0,f=(b&15)+(c&15)+d;10<=f&&(f=f+6&15|16);f+=(b&240)+(c&240);a.v=b^c;a.r=f;a.f=f&255;160<=f&&(f+=96);512<=f&&(f-=256);a.c=f;a.g=b+c+d&255;a.A--;return f&255}function T(a,b,c){var d=a.c&256?0:1,f=(b&15)-(c&15)-d;0>f&&(f=(f-6&15)-16);f+=(b&240)-(c&240);0>f&&(f-=96);a.f=a.g=(a.c=b-c-d)&255;a.v=b^c;a.r=a.c;a.c^=256;a.A--;return f&255}function la(a){a.e=0;a.k=0;a.m=0;a.n=256;a.t=0;a.f=0;a.g=0;a.v=0;a.r=0;a.c=0;a.d=0;a.b=-1;a.h=-1;a.V=0;a.ka=a.W=a.A=0} -e.we=function(){this.d++;this.a[this.n--]=this.d>>8;this.n|=256;this.a[this.n--]=this.d&255;this.n|=256;this.t|=16;this.t=ta(this);this.a[this.n--]=this.t;this.n|=256;this.t&=239;this.b=65534;this.d=this.a[this.b]|this.a[this.b+1]<<8};e.Qf=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e|=this.a[this.b]};e.Sf=function(){this.b=this.a[this.d++];this.f=this.g=this.e|=this.a[this.b]}; -e.me=function(){this.h=this.a[this.d++];this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};e.Vf=function(){this.t=ta(this);this.a[this.n--]=this.t;this.n|=256};e.Pf=function(){this.b=this.d++;this.f=this.g=this.e|=this.a[this.b]};e.le=function(){this.c=this.e<<1;this.f=this.g=this.e=this.c&255};e.Mf=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e|=this.a[this.b]}; -e.je=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};e.ve=function(){this.d+=(this.f&128?0:(this.A--,this.a[this.d]<<24>>24))+1};e.Rf=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.f=this.g=this.e|=this.a[this.b]};e.Tf=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.e|=this.a[this.b]}; -e.ne=function(){this.h=this.a[this.d++]+this.k&255;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};e.ze=function(){this.c=0};e.Of=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e|=this.a[this.b]};e.Nf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.e|=this.a[this.b]};e.ke=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255}; -e.nf=function(){this.b=this.d++;this.a[this.n--]=this.d>>8;this.n|=256;this.a[this.n--]=this.d&255;this.n|=256;this.d=this.a[this.b]|this.a[this.b+1]<<8};e.fe=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e&=this.a[this.b]};e.se=function(){this.b=this.a[this.d++];this.g=this.e&this.a[this.b];this.f=this.f&127|this.a[this.b]&128;this.r=0;this.v=this.a[this.b]&64?128:0};e.he=function(){this.b=this.a[this.d++];this.f=this.g=this.e&=this.a[this.b]}; -e.ag=function(){this.h=this.a[this.d++];this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};e.Xf=function(){this.n=this.n+1&255|256;this.t=this.a[this.n];this.c=this.t&1?256:0;this.g=this.t&2?0:1;this.f=this.t&128;this.r=0;this.v=this.t&64?128:0};e.ee=function(){this.b=this.d++;this.f=this.g=this.e&=this.a[this.b]}; -e.$f=function(){this.c=this.c&65280|this.e;this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.e=this.c&255};e.re=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.g=this.e&this.a[this.b];this.f=this.f&127|this.a[this.b]&128;this.r=0;this.v=this.a[this.b]&64?128:0};e.be=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e&=this.a[this.b]}; -e.Yf=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};e.te=function(){this.d+=(this.f&128?(this.A--,this.a[this.d]<<24>>24):0)+1};e.ge=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.f=this.g=this.e&=this.a[this.b]};e.ie=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.e&=this.a[this.b]}; -e.bg=function(){this.h=this.a[this.d++]+this.k&255;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};e.rg=function(){this.c=256};e.de=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e&=this.a[this.b]};e.ce=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.e&=this.a[this.b]}; -e.Zf=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};e.hg=function(){this.n=this.n+1&255|256;this.t=this.a[this.n];this.c=this.t&1?256:0;this.g=this.t&2?0:1;this.f=this.t&128;this.r=0;this.v=this.t&64?128:0;this.n=this.n+2&255|256;this.d=this.a[this.n-1|256]|this.a[this.n]<<8}; -e.af=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e^=this.a[this.b]};e.cf=function(){this.b=this.a[this.d++];this.f=this.g=this.e^=this.a[this.b]};e.Jf=function(){this.h=this.a[this.d++];this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255};e.Uf=function(){this.a[this.n--]=this.e;this.n|=256};e.$e=function(){this.b=this.d++;this.f=this.g=this.e^=this.a[this.b]}; -e.If=function(){this.c=this.c&65279|(this.e&1?256:0);this.e=(this.c=this.c&65280|this.e>>1)&255;this.f=this.g=this.c&255};e.mf=function(){this.b=this.d;this.d=this.a[this.b]|this.a[this.b+1]<<8};e.Xe=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e^=this.a[this.b]};e.Gf=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; -e.xe=function(){this.d+=((this.r&255^this.v^this.r>>1)&128?0:(this.A--,this.a[this.d]<<24>>24))+1};e.bf=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.f=this.g=this.e^=this.a[this.b]};e.df=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.e^=this.a[this.b]};e.Kf=function(){this.h=this.a[this.d++]+this.k&255;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; -e.Be=function(){this.t&=251};e.Ze=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e^=this.a[this.b]};e.Ye=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.e^=this.a[this.b]};e.Hf=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; -e.ig=function(){this.n=this.n+2&255|256;this.d=(this.a[this.n-1|256]|this.a[this.n]<<8)+1};e.rc=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.Yd=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.e=S(this,this.e,this.a[this.b])}; -e.tc=function(){this.b=this.a[this.d++];this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.$d=function(){this.b=this.a[this.d++];this.e=S(this,this.e,this.a[this.b])};e.fg=function(){this.h=this.a[this.d++];this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};e.Wf=function(){this.n=this.n+1&255|256;this.f=this.g=this.e=this.a[this.n]}; -e.qc=function(){this.b=this.d++;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.Xd=function(){this.b=this.d++;this.e=S(this,this.e,this.a[this.b])};e.eg=function(){this.c=this.c&65280|this.e;this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.e=this.c&255};e.lf=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.d=this.a[this.b]|this.a[this.b+1]<<8}; -e.nc=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.Ud=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.e=S(this,this.e,this.a[this.b])};e.cg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255}; -e.ye=function(){this.d+=((this.r&255^this.v^this.r>>1)&128?(this.A--,this.a[this.d]<<24>>24):0)+1};e.sc=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.Zd=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.e=S(this,this.e,this.a[this.b])}; -e.uc=function(){this.b=this.a[this.d++]+this.k&255;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.ae=function(){this.b=this.a[this.d++]+this.k&255;this.e=S(this,this.e,this.a[this.b])};e.gg=function(){this.h=this.a[this.d++]+this.k&255;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};e.tg=function(){this.t|=4}; -e.pc=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.Wd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.e=S(this,this.e,this.a[this.b])};e.oc=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255}; -e.Vd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.e=S(this,this.e,this.a[this.b])};e.dg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};e.xg=function(){this.h=this.a[this.d++]+this.k&255;this.h=this.a[this.h]|this.a[this.h+1]<<8;this.a[this.h]=this.e};e.Fg=function(){this.h=this.a[this.d++];this.a[this.h]=this.m}; -e.zg=function(){this.h=this.a[this.d++];this.a[this.h]=this.e};e.Cg=function(){this.h=this.a[this.d++];this.a[this.h]=this.k};e.We=function(){this.f=this.g=this.m=this.m-1&255};e.Lg=function(){this.f=this.g=this.e=this.k};e.Eg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.m};e.ug=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.e};e.Bg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.k}; -e.oe=function(){this.d+=(this.c&256?0:(this.A--,this.a[this.d]<<24>>24))+1};e.yg=function(){this.h=this.a[this.d++];this.h=(this.a[this.h]|this.a[this.h+1]<<8)+this.m;this.a[this.h]=this.e};e.Gg=function(){this.h=this.a[this.d++]+this.k&255;this.a[this.h]=this.m};e.Ag=function(){this.h=this.a[this.d++]+this.k&255;this.a[this.h]=this.e};e.Dg=function(){this.h=this.a[this.d++]+this.m&255;this.a[this.h]=this.k};e.Ng=function(){this.f=this.g=this.e=this.m}; -e.wg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.a[this.h]=this.e};e.Mg=function(){this.n=this.k|256};e.vg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.a[this.h]=this.e};e.Df=function(){this.b=this.d++;this.f=this.g=this.m=this.a[this.b]};e.sf=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e=this.a[this.b]};e.yf=function(){this.b=this.d++;this.f=this.g=this.k=this.a[this.b]}; -e.Ef=function(){this.b=this.a[this.d++];this.f=this.g=this.m=this.a[this.b]};e.uf=function(){this.b=this.a[this.d++];this.f=this.g=this.e=this.a[this.b]};e.zf=function(){this.b=this.a[this.d++];this.f=this.g=this.k=this.a[this.b]};e.Jg=function(){this.f=this.g=this.m=this.e};e.rf=function(){this.b=this.d++;this.f=this.g=this.e=this.a[this.b]};e.Ig=function(){this.f=this.g=this.k=this.e};e.Bf=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.m=this.a[this.b]}; -e.of=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e=this.a[this.b]};e.wf=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.k=this.a[this.b]};e.pe=function(){this.d+=(this.c&256?(this.A--,this.a[this.d]<<24>>24):0)+1};e.tf=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.f=this.g=this.e=this.a[this.b]};e.Ff=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.m=this.a[this.b]}; -e.vf=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.e=this.a[this.b]};e.Af=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.k=this.a[this.b]};e.Ce=function(){this.v=this.r=0};e.qf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e=this.a[this.b]};e.Kg=function(){this.f=this.g=this.k=this.n&255};e.Cf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.m=this.a[this.b]}; -e.pf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.e=this.a[this.b]};e.xf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.k=this.a[this.b]};e.Pe=function(){this.b=this.d++;this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256};e.He=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256}; -e.Qe=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256};e.Je=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Te=function(){this.h=this.a[this.d++];this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};e.kf=function(){this.f=this.g=this.m=this.m+1&255};e.Ge=function(){this.b=this.d++;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Ve=function(){this.f=this.g=this.k=this.k-1&255}; -e.Oe=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256};e.De=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Re=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};e.ue=function(){this.d+=(this.g&255?(this.A--,this.a[this.d]<<24>>24):0)+1}; -e.Ie=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Ke=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Ue=function(){this.h=this.a[this.d++]+this.k&255;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255}; -e.Ae=function(){this.t&=-9;this.q[97]=this.rc;this.q[101]=this.tc;this.q[105]=this.qc;this.q[109]=this.nc;this.q[113]=this.sc;this.q[117]=this.uc;this.q[121]=this.pc;this.q[125]=this.oc;this.q[225]=this.zc;this.q[229]=this.Bc;this.q[233]=this.yc;this.q[237]=this.vc;this.q[241]=this.Ac;this.q[245]=this.Cc;this.q[249]=this.xc;this.q[253]=this.wc};e.Fe=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256}; -e.Ee=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Se=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};e.Me=function(){this.b=this.d++;this.f=this.g=this.c=this.k-this.a[this.b];this.c^=256}; -e.zc=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.ng=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.e=T(this,this.e,this.a[this.b])};e.Ne=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.k-this.a[this.b];this.c^=256}; -e.Bc=function(){this.b=this.a[this.d++];this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.pg=function(){this.b=this.a[this.d++];this.e=T(this,this.e,this.a[this.b])};e.gf=function(){this.h=this.a[this.d++];this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};e.jf=function(){this.f=this.g=this.k=this.k+1&255}; -e.yc=function(){this.b=this.d++;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.mg=function(){this.b=this.d++;this.e=T(this,this.e,this.a[this.b])};e.Lf=function(){};e.Le=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.k-this.a[this.b];this.c^=256}; -e.vc=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.jg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.e=T(this,this.e,this.a[this.b])};e.ef=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};e.qe=function(){this.d+=(this.g&255?0:(this.A--,this.a[this.d]<<24>>24))+1}; -e.Ac=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.og=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.e=T(this,this.e,this.a[this.b])}; -e.Cc=function(){this.b=this.a[this.d++]+this.k&255;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.qg=function(){this.b=this.a[this.d++]+this.k&255;this.e=T(this,this.e,this.a[this.b])};e.hf=function(){this.h=this.a[this.d++]+this.k&255;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255}; -e.sg=function(){this.t|=8;this.q[97]=this.Yd;this.q[101]=this.$d;this.q[105]=this.Xd;this.q[109]=this.Ud;this.q[113]=this.Zd;this.q[117]=this.ae;this.q[121]=this.Wd;this.q[125]=this.Vd;this.q[225]=this.ng;this.q[229]=this.pg;this.q[233]=this.mg;this.q[237]=this.jg;this.q[241]=this.og;this.q[245]=this.qg;this.q[249]=this.lg;this.q[253]=this.kg}; -e.xc=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.lg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.e=T(this,this.e,this.a[this.b])}; -e.wc=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.v=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.kg=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.e=T(this,this.e,this.a[this.b])};e.ff=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255}; -e.Hg=function(){var a;a=this.a[this.d++];switch(a){case this.sd:I(this,"HALT");O(this);break;case this.td:a=this.d;for(var b="";a<this.a.length;){var c=this.a[a++];if(!c)break;b+=String.fromCharCode(c)}this.d=a;b=b.replace(/%A/g,p(this.e,2)).replace(/%X/g,p(this.k,2)).replace(/%Y/g,p(this.m,2));I(this,b);this.ia=0;this.W-=this.A;this.A=0;break;default:this.d-=2,I(this,"undefined opSim: "+p(a,2)+" at "+p(this.d,4)),O(this)}}; -e.i=function(){var a=this.a[--this.d];I(this,"undefined opcode: "+p(a,2)+" at "+p(this.d,4));O(this)};w(function(){for(var a=H(window.document,"c1pjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=F(c),d=new N(d);G(d,c)}}); -function U(a){y.call(this,"C1PROM",a);this.T=this.a=null;this.fa=a.size;if(this.xa=a.image){a=this.xa;var b;b=this.xa;var c="",d=b.lastIndexOf(".");0<=d&&(c=b.substr(d+1).toLowerCase());b=c;"json"!=b&&"hex"!=b&&(a="http://"+window.location.host+"/api/v1/dump?file="+this.xa);r(a,!0,null,this,this.Ed)}}C(U); -U.prototype.O=function(a,b,c,d){this.a=a;this.sb=b;a=c-b+1;this.fa||(this.fa=a);a!=this.fa?K(this,"computer-specified ROM size ("+p(a,4)+") does not match component-specified size ("+p(this.fa,4)+")"):(d&&(this.s=d,Q(d,b,c,this,this.K)),xa(this))};U.prototype.R=function(a){a&&!this.w&&(this.w=!0)};U.prototype.K=function(a,b){if(void 0!==b){var c=a-this.sb;this.a[this.sb+c]=this.T?this.T[c]:0}}; -U.prototype.Ed=function(a,b,c){if(c)I(this,"ROM load error ("+c+")");else{if("["==b[0])try{this.T=eval("("+b+")")}catch(d){I(this,"ROM data error: "+(d.message||d));return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.T=Array(a.length),b=0;b<a.length;b++)this.T[b]=parseInt(a[b],16);xa(this)}}; -function xa(a){if(!J(a))if(!a.xa)a.I();else if(a.T&&a.a){var b=a.T.length;if(b!=a.fa)K(a,"ROM image size ("+p(b,4)+") does not match component-specified size ("+p(a.fa,4)+")");else{for(var c=0;c<b;c++)a.a[a.sb+c]=a.T[c];a.I()}}}w(function(){for(var a=H(window.document,"c1pjs","rom"),b=0;b<a.length;b++){var c=a[b],d=F(c),d=new U(d);G(d,c)}});function ya(a){y.call(this,"C1PRAM",a)}C(ya);ya.prototype.O=function(a){this.a=a;this.I()}; -w(function(){for(var a=H(window.document,"c1pjs","ram"),b=0;b<a.length;b++){var c=a[b],d=F(c),d=new ya(d);G(d,c)}}); -function za(a){y.call(this,"C1PKeyboard",a);this.w=!1;this.lb=a.model;this.Bb=8;this.bd=9;this.$c=10;this.Zc=13;this.ad=16;this.Yc=17;this.Vc=18;this.Wc=20;this.Cb=27;this.Xc=91;this.Sc=this.Bb;this.Tc=this.$c;this.Pc=this.Zc;this.wb=this.Cb;this.J=224;this.l=this.ad+this.J;this.Da=this.Yc+this.J;this.Xa=this.Vc+this.J;this.xb=this.Wc+this.J;this.vb=0+this.J;this.Qc=3;this.Rc=15;this.Ca=1;this.Ba=2;this.Aa=4;this.ma=8;this.za=64;this.Wa=this.Ba|this.Aa|this.za;this.Mb=0;this.qd=1;this.pd=2;this.rd= -3;this.od=4;this.Rd=8192;this.Od=250;this.Pd=100;this.Md=300;this.ea=[];this.ea["break"]=this.vb;this.ea.esc=this.wb;this.ea["ctrl-c"]=this.Qc;this.ea["ctrl-o"]=this.Rc;this.j=[];this.j[49]=30464;this.j[33]=30464+this.l;this.j[50]=30208;this.j[34]=30208+this.l;this.j[51]=29952;this.j[35]=29952+this.l;this.j[52]=29696;this.j[36]=29696+this.l;this.j[53]=29440;this.j[37]=29440+this.l;this.j[54]=29184;this.j[38]=29184+this.l;this.j[55]=28928;this.j[39]=28928+this.l;this.j[56]=26368;this.j[40]=26368+this.l; -this.j[57]=26112;this.j[41]=26112+this.l;this.j[48]=25856;this.j[58]=25600;this.j[42]=25600+this.l;this.j[45]=25344;this.j[61]=25344+this.l;this.j[46]=22272;this.j[62]=22272+this.l;this.j[108]=22016;this.j[76]=22016+this.l;this.j[92]=22016+this.l;this.j[111]=21760;this.j[79]=21760+this.l;this.j[this.Sc]=21760+this.l;this.j[this.Tc]=21504;this.j[this.Pc]=21248;this.j[119]=18176;this.j[87]=18176+this.l;this.j[101]=17920;this.j[69]=17920+this.l;this.j[114]=17664;this.j[82]=17664+this.l;this.j[116]=17408; +function y(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.ec=this.id.substr(0,b),this.dc=this.id.substr(b+1)):this.dc=this.id;this[a]=c;this.mb=null;this.Na=this.qa=this.lb=this.Oa=!1;this.o={};ea(this);z[z.length]=this}var A=void 0;if(window){A||(A=window.location.search.substr(1));for(var B,fa=/\+/g,ga=/([^&=]+)=?([^&]*)/g;B=ga.exec(A);)B[1].replace(fa," "),B[2].replace(fa," ")} +function ha(){var a=y.prototype;function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function C(a){a.prototype=ha()}var z=[];function D(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<z.length;c++)if(z[c].id===a)return z[c]}return null} +function E(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){s(c.message+" ("+a+")")}return b} +function F(a,b){var c,d;d=G(b.parentNode,"c1pjs-control");for(c=0;c<d.length;c++){var f,g;g=d[c].childNodes;for(f=0;f<g.length;f++){var l=g[f];if(l.nodeType===window.document.ELEMENT_NODE){var h=l.getAttribute("class");if(h){var m,k;k=h.split(" ");for(m=0;m<k.length;m++)switch(h=k[m],h){case "c1pjs-input":case "c1pjs-output":(k=E(l))&&k.binding&&a.H(h,k.type,k.binding,l),k=[]}}}}}} +function G(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var f=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)f.test(a[b].className)&&c.push(a[b]);return c} +y.prototype={toString:function(){return this.name?this.name:this.id||this.type},H:function(a,b,c,d){switch(c){case "clear":return this.o[c]||(this.o[c]=d,d.onclick=function(a){return function(){a.o.print&&(a.o.print.value="")}}(this)),!0;case "print":return this.o[c]||(this.jb=this.o[c]=d,d.value="",this.t=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.Ta=function(a, +b,c){this.t(a,"notice",c)}),!0;default:return!1}},log:function(){},t:function(){},status:function(a){this.t(this.dc+": "+a)},Ta:function(a,b){b||s(a)},J:function(a){!this.Na&&(this.Oa=!1!==a)&&(this.name&&this.log("ready"),a=this.mb,this.mb=null,a&&a())}};function ia(a,b){if(a.lb)return a.qa&&(a.qa=!1),a.lb=!1;if(a.Na)return a.t(a.toString()+" error"),!1;a.qa=b;return a.qa}function H(a,b){b&&(a.Oa?b():a.mb=b);return a.Oa}function I(a,b){a.Na=!0;a.Ta("Fatal error: "+b)} +function ea(a){var b=1;a.ec&&(a=a.ec.match(/\d+/),null!==a&&(b=parseInt(a[0],10)));return b}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);function J(a){y.call(this,"C1PPanel",a);this.A=!1}C(J);J.prototype.H=function(a,b,c,d){return this.G&&this.G.H(a,b,c,d)||this.s&&this.s.H(a,b,c,d)||this.C&&this.C.H(a,b,c,d)?!0:y.prototype.H.call(this,a,b,c,d)};J.prototype.S=function(a,b){a&&!this.A&&(this.A=!0,this.G=b,this.s=K(b,"cpu"),this.C=K(b,"keyboard"),ja())}; +function ja(){for(var a=!1,b=G(window.document,"c1pjs","panel"),c=0;c<b.length;c++){var d=b[c],f=E(d),g=D(f.id);g||(a=!0,g=new J(f));F(g,d);a&&g.J()}}w(ja); +function L(a){y.call(this,"C1PCPU",a);la(this);this.R=this.A=!1;this.$b=a.autoStart;this.ab=0;this.xd=1;this.oa=2;this.speed=this.ab;this.ua=1E6;this.rb=this.tb=30;this.qb=5;this.Od=1;this.Qa=8;this.Ub=["Slow","Fast","Max"];this.Cd=["("+this.Od+"Mhz)","(up to "+this.Qa+"Mhz)","(unlimited)"];this.Y=[];this.T=[];this.fb=65536;this.gb=0;this.Ha=65536;this.Ia=0;this.Pc=128;this.Qc=64;this.Lc=16;this.Nc=8;this.Oc=4;this.Rc=2;this.Mc=1;this.Ad=65532;this.vd=0;this.wd=1;this.q=[this.ze,this.Tf,this.Kg,this.i, +this.i,this.Vf,this.pe,this.i,this.Yf,this.Sf,this.oe,this.i,this.i,this.Pf,this.me,this.i,this.ye,this.Uf,this.i,this.i,this.i,this.Wf,this.qe,this.i,this.Ce,this.Rf,this.i,this.i,this.i,this.Qf,this.ne,this.i,this.qf,this.ie,this.i,this.i,this.ve,this.ke,this.dg,this.i,this.$f,this.he,this.cg,this.i,this.ue,this.ee,this.ag,this.i,this.we,this.je,this.i,this.i,this.i,this.le,this.eg,this.i,this.ug,this.ge,this.i,this.i,this.i,this.fe,this.bg,this.i,this.kg,this.df,this.i,this.i,this.i,this.ff,this.Mf, +this.i,this.Xf,this.cf,this.Lf,this.i,this.pf,this.$e,this.Jf,this.i,this.Ae,this.ef,this.i,this.i,this.i,this.gf,this.Nf,this.i,this.Ee,this.bf,this.i,this.i,this.i,this.af,this.Kf,this.i,this.lg,this.uc,this.i,this.i,this.i,this.wc,this.ig,this.i,this.Zf,this.tc,this.hg,this.i,this.of,this.qc,this.fg,this.i,this.Be,this.vc,this.i,this.i,this.i,this.xc,this.jg,this.i,this.wg,this.sc,this.i,this.i,this.i,this.rc,this.gg,this.i,this.i,this.Ag,this.i,this.i,this.Ig,this.Cg,this.Fg,this.i,this.Ze,this.i, +this.Og,this.i,this.Hg,this.xg,this.Eg,this.i,this.re,this.Bg,this.i,this.i,this.Jg,this.Dg,this.Gg,this.i,this.Qg,this.zg,this.Pg,this.i,this.i,this.yg,this.i,this.i,this.Gf,this.vf,this.Bf,this.i,this.Hf,this.xf,this.Cf,this.i,this.Mg,this.uf,this.Lg,this.i,this.Ef,this.rf,this.zf,this.i,this.se,this.wf,this.i,this.i,this.If,this.yf,this.Df,this.i,this.Fe,this.tf,this.Ng,this.i,this.Ff,this.sf,this.Af,this.i,this.Se,this.Ke,this.i,this.i,this.Te,this.Me,this.We,this.i,this.nf,this.Je,this.Ye,this.i, +this.Re,this.Ge,this.Ue,this.i,this.xe,this.Le,this.i,this.i,this.i,this.Ne,this.Xe,this.i,this.De,this.Ie,this.i,this.i,this.i,this.He,this.Ve,this.i,this.Pe,this.Cc,this.i,this.i,this.Qe,this.Ec,this.kf,this.i,this.mf,this.Bc,this.Of,this.i,this.Oe,this.yc,this.hf,this.i,this.te,this.Dc,this.i,this.i,this.i,this.Fc,this.lf,this.i,this.vg,this.Ac,this.i,this.i,this.i,this.zc,this.jf,this.i];this.Bd=[7,6,0,0,0,3,5,0,3,2,2,0,0,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,3,6,0,0,3,3,5,0,4,2,2,0,4,4,6,0,2, +5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,6,6,0,0,0,3,5,0,3,2,2,0,3,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,6,6,0,0,0,3,5,0,4,2,2,0,5,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,0,6,0,0,3,3,3,0,2,0,2,0,4,4,4,0,2,5,0,0,4,4,4,0,2,4,2,0,0,4,0,0,2,6,2,0,3,3,3,0,2,2,2,0,4,4,4,0,2,5,0,0,4,4,4,0,2,4,2,0,4,4,4,0,2,6,0,0,3,3,5,0,2,2,2,0,4,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0,2,6,0,0,3,3,5,0,2,2,2,0,4,4,6,0,2,5,0,0,0,4,6,0,2,4,0,0,0,4,7,0]}C(L);e=L.prototype; +e.reset=function(a){this.R&&M(this);la(this);var b=this.Ad;this.d=this.a[b]|this.a[b+1]<<8;this.Na=!1;a&&(!0===this.$b||null===this.$b&&void 0===this.o.run)&&N(this)}; +e.H=function(a,b,c,d){a=!1;switch(c){case "run":this.o[c]=d;d.onclick=function(a){return function(){a.R?M(a):N(a)}}(this);a=!0;break;case "A":case "X":case "Y":case "S":case "PC":case "C":case "Z":case "I":case "D":case "B":case "V":case "N":case "speed":this.o[c]=d;a=!0;break;case "setSpeed":this.o[c]=d,d.onclick=function(a){return function(){O(a,a.speed>=a.oa?a.ab:a.speed+1,!0)}}(this),a=!0}return a}; +e.P=function(a,b){this.a=a;(this.oc=b)?s("unsupported CPU address buffer offset ("+this.oc+")"):this.J()};e.S=function(a,b){if(a&&!this.A){this.G=b;var c=K(b,"video");c&&(this.kb=function(a){return function(){P(a)}}(c),this.da=function(a){return function(){a.da()}}(c));this.A=!0;this.reset(!0);this.update()}};function ma(a,b,c,d,f){0>na(a.Y,b,c,d,f)&&(a.fb>b&&(a.fb=b),a.gb<c&&(a.gb=c),a.Y.push([b,c,d,f]))} +function Q(a,b,c,d,f){0>na(a.T,b,c,d,f)&&(a.Ha>b&&(a.Ha=b),a.Ia<c&&(a.Ia=c),a.T.push([b,c,d,f]))}function na(a,b,c,d,f){for(var g=0;g<a.length;g++)if(a[g][0]==b&&a[g][1]==c&&a[g][2]==d&&a[g][3]==f)return g;return-1}function O(a,b,c){void 0!==b&&(a.speed=b,a.o.setSpeed&&(a.o.setSpeed.innerHTML=a.Ub[2<=b?0:b+1]),a.t("running at "+a.Ub[b].toLowerCase()+" speed "+a.Cd[b]),c&&a.da());a.la=0;a.fc=Date.now()||+new Date;oa(a)}e.kb=function(){};e.da=function(){}; +function R(a,b,c,d){void 0!==a.o[b]&&(void 0===d&&(d=1),c="0000"+c.toString(16),a.o[b].innerHTML=c.slice(c.length-d).toUpperCase())}function pa(a){R(a,"A",a.e,2);R(a,"X",a.k,2);R(a,"Y",a.m,2);var b=qa(a);R(a,"C",b&a.Mc?1:0);R(a,"Z",b&a.Rc?1:0);R(a,"I",b&a.Oc?1:0);R(a,"D",b&a.Nc?1:0);R(a,"B",b&a.Lc?1:0);R(a,"V",b&a.Qc?1:0);R(a,"N",b&a.Pc?1:0);R(a,"S",a.n,4);R(a,"PC",a.d,4);a.o.speed&&a.W&&(a.o.speed.innerHTML=a.W.toFixed(1)+"Mhz")} +function oa(a,b){var c=a.tb;c<a.rb&&(c=a.rb);c<a.qb&&(c=a.qb);var d=1;b&&a.speed>a.ab&&a.W&&(d=a.W);d>a.Qa&&a.speed<a.oa&&(d=a.Qa);a.Qd=Math.round(1E3/a.tb);a.Sa=Math.floor(a.ua/c*d);a.nb=Math.floor(a.ua/a.tb*d);a.hc=Math.floor(a.ua/a.rb*d);a.gc=Math.floor(a.ua/a.qb*d);b||(a.ja=a.nb,a.ta=a.hc,a.sa=a.gc);a.pb=0}function ra(a){a.pb>=a.ua&&oa(a,!0);a.va=0;a.Td=Date.now()||+new Date} +function sa(a){var b=Date.now()||+new Date,c=a.Qd;a.va&&(c=Math.round(c*a.va/a.nb));c-=b-a.Td;if(b-=a.fc)a.W=Math.round(a.la/(100*b))/10,864E5<=b&&O(a);0>c?c=0:a.speed==a.xd?a.W<=a.Qa&&(c=0):a.speed==a.oa&&(c=0);a.pb+=a.va;return c} +function N(a){if(ia(a,!0)){a.R||(O(a),a.G&&a.G.start(),a.R=!0,a.o.run&&(a.o.run.innerHTML="Halt"),a.da());ra(a);try{do{a.step(a.Sa);var b=a.X-a.B;a.la+=b;a.va+=b;a.X=a.B=0;a.ta-=a.Sa;0>=a.ta&&(a.ta+=a.hc,a.kb());a.sa-=a.Sa;0>=a.sa&&(a.sa+=a.gc,pa(a));a.ja-=a.Sa;if(0>=a.ja){a.ja+=a.nb;break}}while(a.R)}catch(c){M(a);a.update();ia(a,!1);I(a,c.message||c);return}setTimeout(function(a){return function(){N(a)}}(a),sa(a))}else a.update(),a.G&&a.G.stop(a.fc,a.la)} +e.step=function(a){this.b=this.h=-1;this.X=this.B=a;do{a=this.a[this.d];this.d++;this.q[a].call(this);if(0<=this.b){if(this.b>=this.fb&&this.b<=this.gb)for(var b=this.b,c=this.d,d=0;d<this.Y.length;d++)b>=this.Y[d][0]&&b<=this.Y[d][1]&&this.Y[d][3].call(this.Y[d][2],b,c);this.b=-1}else if(0<=this.h){if(this.h>=this.Ha&&this.h<=this.Ia)for(b=this.h,c=this.d,d=0;d<this.T.length;d++)b>=this.T[d][0]&&b<=this.T[d][1]&&this.T[d][3].call(this.T[d][2],b,c);this.h=-1}this.B-=this.Bd[a]}while(0<this.B);return!0}; +function M(a){a.qa&&(a.lb=!0);a.X-=a.B;a.B=0;a.R&&(a.R=!1,a.o.run&&(a.o.run.innerHTML="Run"))}e.update=function(){this.kb();pa(this)};function ta(a){return a.R?a.la+a.X-a.B:0}e.N=function(a){return this.a[a]};e.L=function(a,b){this.a[a]=b};function qa(a){var b=a.c&256?1:0,b=b|(a.g&255?0:2),b=b|((a.r&255^a.w^a.r>>1)&128?64:0),b=b|(a.f&128?128:0);return a.u&60|b} +function S(a,b,c){var d=a.c&256?1:0,f=(b&15)+(c&15)+d;10<=f&&(f=f+6&15|16);f+=(b&240)+(c&240);a.w=b^c;a.r=f;a.f=f&255;160<=f&&(f+=96);512<=f&&(f-=256);a.c=f;a.g=b+c+d&255;a.B--;return f&255}function T(a,b,c){var d=a.c&256?0:1,f=(b&15)-(c&15)-d;0>f&&(f=(f-6&15)-16);f+=(b&240)-(c&240);0>f&&(f-=96);a.f=a.g=(a.c=b-c-d)&255;a.w=b^c;a.r=a.c;a.c^=256;a.B--;return f&255}function la(a){a.e=0;a.k=0;a.m=0;a.n=256;a.u=0;a.f=0;a.g=0;a.w=0;a.r=0;a.c=0;a.d=0;a.b=-1;a.h=-1;a.W=0;a.la=a.X=a.B=0} +e.ze=function(){this.d++;this.a[this.n--]=this.d>>8;this.n|=256;this.a[this.n--]=this.d&255;this.n|=256;this.u|=16;this.u=qa(this);this.a[this.n--]=this.u;this.n|=256;this.u&=239;this.b=65534;this.d=this.a[this.b]|this.a[this.b+1]<<8};e.Tf=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e|=this.a[this.b]};e.Vf=function(){this.b=this.a[this.d++];this.f=this.g=this.e|=this.a[this.b]}; +e.pe=function(){this.h=this.a[this.d++];this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};e.Yf=function(){this.u=qa(this);this.a[this.n--]=this.u;this.n|=256};e.Sf=function(){this.b=this.d++;this.f=this.g=this.e|=this.a[this.b]};e.oe=function(){this.c=this.e<<1;this.f=this.g=this.e=this.c&255};e.Pf=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e|=this.a[this.b]}; +e.me=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};e.ye=function(){this.d+=(this.f&128?0:(this.B--,this.a[this.d]<<24>>24))+1};e.Uf=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.f=this.g=this.e|=this.a[this.b]};e.Wf=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.e|=this.a[this.b]}; +e.qe=function(){this.h=this.a[this.d++]+this.k&255;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255};e.Ce=function(){this.c=0};e.Rf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e|=this.a[this.b]};e.Qf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.e|=this.a[this.b]};e.ne=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.a[this.h]<<1;this.f=this.g=this.a[this.h]=this.c&255}; +e.qf=function(){this.b=this.d++;this.a[this.n--]=this.d>>8;this.n|=256;this.a[this.n--]=this.d&255;this.n|=256;this.d=this.a[this.b]|this.a[this.b+1]<<8};e.ie=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e&=this.a[this.b]};e.ve=function(){this.b=this.a[this.d++];this.g=this.e&this.a[this.b];this.f=this.f&127|this.a[this.b]&128;this.r=0;this.w=this.a[this.b]&64?128:0};e.ke=function(){this.b=this.a[this.d++];this.f=this.g=this.e&=this.a[this.b]}; +e.dg=function(){this.h=this.a[this.d++];this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};e.$f=function(){this.n=this.n+1&255|256;this.u=this.a[this.n];this.c=this.u&1?256:0;this.g=this.u&2?0:1;this.f=this.u&128;this.r=0;this.w=this.u&64?128:0};e.he=function(){this.b=this.d++;this.f=this.g=this.e&=this.a[this.b]}; +e.cg=function(){this.c=this.c&65280|this.e;this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.e=this.c&255};e.ue=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.g=this.e&this.a[this.b];this.f=this.f&127|this.a[this.b]&128;this.r=0;this.w=this.a[this.b]&64?128:0};e.ee=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e&=this.a[this.b]}; +e.ag=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};e.we=function(){this.d+=(this.f&128?(this.B--,this.a[this.d]<<24>>24):0)+1};e.je=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.f=this.g=this.e&=this.a[this.b]};e.le=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.e&=this.a[this.b]}; +e.eg=function(){this.h=this.a[this.d++]+this.k&255;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};e.ug=function(){this.c=256};e.ge=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e&=this.a[this.b]};e.fe=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.e&=this.a[this.b]}; +e.bg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.c&65280|this.a[this.h];this.c<<=1;this.c=this.c&65534|(this.c&512?1:0);this.f=this.g=this.a[this.h]=this.c&255};e.kg=function(){this.n=this.n+1&255|256;this.u=this.a[this.n];this.c=this.u&1?256:0;this.g=this.u&2?0:1;this.f=this.u&128;this.r=0;this.w=this.u&64?128:0;this.n=this.n+2&255|256;this.d=this.a[this.n-1|256]|this.a[this.n]<<8}; +e.df=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e^=this.a[this.b]};e.ff=function(){this.b=this.a[this.d++];this.f=this.g=this.e^=this.a[this.b]};e.Mf=function(){this.h=this.a[this.d++];this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255};e.Xf=function(){this.a[this.n--]=this.e;this.n|=256};e.cf=function(){this.b=this.d++;this.f=this.g=this.e^=this.a[this.b]}; +e.Lf=function(){this.c=this.c&65279|(this.e&1?256:0);this.e=(this.c=this.c&65280|this.e>>1)&255;this.f=this.g=this.c&255};e.pf=function(){this.b=this.d;this.d=this.a[this.b]|this.a[this.b+1]<<8};e.$e=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e^=this.a[this.b]};e.Jf=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; +e.Ae=function(){this.d+=((this.r&255^this.w^this.r>>1)&128?0:(this.B--,this.a[this.d]<<24>>24))+1};e.ef=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.f=this.g=this.e^=this.a[this.b]};e.gf=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.e^=this.a[this.b]};e.Nf=function(){this.h=this.a[this.d++]+this.k&255;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; +e.Ee=function(){this.u&=251};e.bf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e^=this.a[this.b]};e.af=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.e^=this.a[this.b]};e.Kf=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.c&65279|(this.a[this.h]&1?256:0);this.a[this.h]=(this.c=this.c&65280|this.a[this.h]>>1)&255;this.f=this.g=this.c&255}; +e.lg=function(){this.n=this.n+2&255|256;this.d=(this.a[this.n-1|256]|this.a[this.n]<<8)+1};e.uc=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.ae=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.e=S(this,this.e,this.a[this.b])}; +e.wc=function(){this.b=this.a[this.d++];this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.ce=function(){this.b=this.a[this.d++];this.e=S(this,this.e,this.a[this.b])};e.ig=function(){this.h=this.a[this.d++];this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};e.Zf=function(){this.n=this.n+1&255|256;this.f=this.g=this.e=this.a[this.n]}; +e.tc=function(){this.b=this.d++;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.$d=function(){this.b=this.d++;this.e=S(this,this.e,this.a[this.b])};e.hg=function(){this.c=this.c&65280|this.e;this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.e=this.c&255};e.of=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.d=this.a[this.b]|this.a[this.b+1]<<8}; +e.qc=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.Xd=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.e=S(this,this.e,this.a[this.b])};e.fg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255}; +e.Be=function(){this.d+=((this.r&255^this.w^this.r>>1)&128?(this.B--,this.a[this.d]<<24>>24):0)+1};e.vc=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.be=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.e=S(this,this.e,this.a[this.b])}; +e.xc=function(){this.b=this.a[this.d++]+this.k&255;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.de=function(){this.b=this.a[this.d++]+this.k&255;this.e=S(this,this.e,this.a[this.b])};e.jg=function(){this.h=this.a[this.d++]+this.k&255;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};e.wg=function(){this.u|=4}; +e.sc=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255};e.Zd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.e=S(this,this.e,this.a[this.b])};e.rc=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.e+this.a[this.b]+(this.c&256?1:0);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255}; +e.Yd=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.e=S(this,this.e,this.a[this.b])};e.gg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.c&65280|this.a[this.h];this.c=this.c&65023|(this.c&1?512:0);this.c>>=1;this.f=this.g=this.a[this.h]=this.c&255};e.Ag=function(){this.h=this.a[this.d++]+this.k&255;this.h=this.a[this.h]|this.a[this.h+1]<<8;this.a[this.h]=this.e};e.Ig=function(){this.h=this.a[this.d++];this.a[this.h]=this.m}; +e.Cg=function(){this.h=this.a[this.d++];this.a[this.h]=this.e};e.Fg=function(){this.h=this.a[this.d++];this.a[this.h]=this.k};e.Ze=function(){this.f=this.g=this.m=this.m-1&255};e.Og=function(){this.f=this.g=this.e=this.k};e.Hg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.m};e.xg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.e};e.Eg=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.a[this.h]=this.k}; +e.re=function(){this.d+=(this.c&256?0:(this.B--,this.a[this.d]<<24>>24))+1};e.Bg=function(){this.h=this.a[this.d++];this.h=(this.a[this.h]|this.a[this.h+1]<<8)+this.m;this.a[this.h]=this.e};e.Jg=function(){this.h=this.a[this.d++]+this.k&255;this.a[this.h]=this.m};e.Dg=function(){this.h=this.a[this.d++]+this.k&255;this.a[this.h]=this.e};e.Gg=function(){this.h=this.a[this.d++]+this.m&255;this.a[this.h]=this.k};e.Qg=function(){this.f=this.g=this.e=this.m}; +e.zg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.a[this.h]=this.e};e.Pg=function(){this.n=this.k|256};e.yg=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.a[this.h]=this.e};e.Gf=function(){this.b=this.d++;this.f=this.g=this.m=this.a[this.b]};e.vf=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.e=this.a[this.b]};e.Bf=function(){this.b=this.d++;this.f=this.g=this.k=this.a[this.b]}; +e.Hf=function(){this.b=this.a[this.d++];this.f=this.g=this.m=this.a[this.b]};e.xf=function(){this.b=this.a[this.d++];this.f=this.g=this.e=this.a[this.b]};e.Cf=function(){this.b=this.a[this.d++];this.f=this.g=this.k=this.a[this.b]};e.Mg=function(){this.f=this.g=this.m=this.e};e.uf=function(){this.b=this.d++;this.f=this.g=this.e=this.a[this.b]};e.Lg=function(){this.f=this.g=this.k=this.e};e.Ef=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.m=this.a[this.b]}; +e.rf=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.e=this.a[this.b]};e.zf=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.k=this.a[this.b]};e.se=function(){this.d+=(this.c&256?(this.B--,this.a[this.d]<<24>>24):0)+1};e.wf=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.f=this.g=this.e=this.a[this.b]};e.If=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.m=this.a[this.b]}; +e.yf=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.e=this.a[this.b]};e.Df=function(){this.b=this.a[this.d++]+this.m&255;this.f=this.g=this.k=this.a[this.b]};e.Fe=function(){this.w=this.r=0};e.tf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.e=this.a[this.b]};e.Ng=function(){this.f=this.g=this.k=this.n&255};e.Ff=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.m=this.a[this.b]}; +e.sf=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.e=this.a[this.b]};e.Af=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.k=this.a[this.b]};e.Se=function(){this.b=this.d++;this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256};e.Ke=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256}; +e.Te=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256};e.Me=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.We=function(){this.h=this.a[this.d++];this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};e.nf=function(){this.f=this.g=this.m=this.m+1&255};e.Je=function(){this.b=this.d++;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Ye=function(){this.f=this.g=this.k=this.k-1&255}; +e.Re=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.m-this.a[this.b];this.c^=256};e.Ge=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Ue=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};e.xe=function(){this.d+=(this.g&255?(this.B--,this.a[this.d]<<24>>24):0)+1}; +e.Le=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Ne=function(){this.b=this.a[this.d++]+this.k&255;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Xe=function(){this.h=this.a[this.d++]+this.k&255;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255}; +e.De=function(){this.u&=-9;this.q[97]=this.uc;this.q[101]=this.wc;this.q[105]=this.tc;this.q[109]=this.qc;this.q[113]=this.vc;this.q[117]=this.xc;this.q[121]=this.sc;this.q[125]=this.rc;this.q[225]=this.Cc;this.q[229]=this.Ec;this.q[233]=this.Bc;this.q[237]=this.yc;this.q[241]=this.Dc;this.q[245]=this.Fc;this.q[249]=this.Ac;this.q[253]=this.zc};e.Ie=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256}; +e.He=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.c=this.e-this.a[this.b];this.c^=256};e.Ve=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.a[this.h]=this.a[this.h]-1&255};e.Pe=function(){this.b=this.d++;this.f=this.g=this.c=this.k-this.a[this.b];this.c^=256}; +e.Cc=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.qg=function(){this.b=this.a[this.d++]+this.k&255;this.b=this.a[this.b]|this.a[this.b+1]<<8;this.e=T(this,this.e,this.a[this.b])};e.Qe=function(){this.b=this.a[this.d++];this.f=this.g=this.c=this.k-this.a[this.b];this.c^=256}; +e.Ec=function(){this.b=this.a[this.d++];this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.sg=function(){this.b=this.a[this.d++];this.e=T(this,this.e,this.a[this.b])};e.kf=function(){this.h=this.a[this.d++];this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};e.mf=function(){this.f=this.g=this.k=this.k+1&255}; +e.Bc=function(){this.b=this.d++;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.pg=function(){this.b=this.d++;this.e=T(this,this.e,this.a[this.b])};e.Of=function(){};e.Oe=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.c=this.k-this.a[this.b];this.c^=256}; +e.yc=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.mg=function(){this.b=this.a[this.d++]|this.a[this.d++]<<8;this.e=T(this,this.e,this.a[this.b])};e.hf=function(){this.h=this.a[this.d++]|this.a[this.d++]<<8;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255};e.te=function(){this.d+=(this.g&255?0:(this.B--,this.a[this.d]<<24>>24))+1}; +e.Dc=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.rg=function(){this.b=this.a[this.d++];this.b=(this.a[this.b]|this.a[this.b+1]<<8)+this.m;this.e=T(this,this.e,this.a[this.b])}; +e.Fc=function(){this.b=this.a[this.d++]+this.k&255;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.tg=function(){this.b=this.a[this.d++]+this.k&255;this.e=T(this,this.e,this.a[this.b])};e.lf=function(){this.h=this.a[this.d++]+this.k&255;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255}; +e.vg=function(){this.u|=8;this.q[97]=this.ae;this.q[101]=this.ce;this.q[105]=this.$d;this.q[109]=this.Xd;this.q[113]=this.be;this.q[117]=this.de;this.q[121]=this.Zd;this.q[125]=this.Yd;this.q[225]=this.qg;this.q[229]=this.sg;this.q[233]=this.pg;this.q[237]=this.mg;this.q[241]=this.rg;this.q[245]=this.tg;this.q[249]=this.og;this.q[253]=this.ng}; +e.Ac=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.og=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.m;this.e=T(this,this.e,this.a[this.b])}; +e.zc=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.c=this.e-this.a[this.b]-(this.c&256?0:1);this.w=this.e^this.a[this.b];this.r=this.c;this.f=this.g=this.e=this.c&255;this.c^=256};e.ng=function(){this.b=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.e=T(this,this.e,this.a[this.b])};e.jf=function(){this.h=(this.a[this.d++]|this.a[this.d++]<<8)+this.k;this.f=this.g=this.a[this.h]=this.a[this.h]+1&255}; +e.Kg=function(){var a;a=this.a[this.d++];switch(a){case this.vd:this.t("HALT");M(this);break;case this.wd:a=this.d;for(var b="";a<this.a.length;){var c=this.a[a++];if(!c)break;b+=String.fromCharCode(c)}this.d=a;b=b.replace(/%A/g,q(this.e,2)).replace(/%X/g,q(this.k,2)).replace(/%Y/g,q(this.m,2));this.t(b);this.ja=0;this.X-=this.B;this.B=0;break;default:this.d-=2,this.t("undefined opSim: "+q(a,2)+" at "+q(this.d,4)),M(this)}}; +e.i=function(){var a=this.a[--this.d];this.t("undefined opcode: "+q(a,2)+" at "+q(this.d,4));M(this)};w(function(){for(var a=G(window.document,"c1pjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=E(c),d=new L(d);F(d,c)}}); +function U(a){y.call(this,"C1PROM",a);this.U=this.a=null;this.ga=a.size;if(this.ya=a.image){a=this.ya;var b;b=this.ya;var c="",d=b.lastIndexOf(".");0<=d&&(c=b.substr(d+1).toLowerCase());b=c;"json"!=b&&"hex"!=b&&(a="http://"+window.location.host+"/api/v1/dump?file="+this.ya);r(a,!0,null,this,this.Hd)}}C(U); +U.prototype.P=function(a,b,c,d){this.a=a;this.vb=b;a=c-b+1;this.ga||(this.ga=a);a!=this.ga?I(this,"computer-specified ROM size ("+q(a,4)+") does not match component-specified size ("+q(this.ga,4)+")"):(d&&(this.s=d,Q(d,b,c,this,this.L)),ua(this))};U.prototype.S=function(a){a&&!this.A&&(this.A=!0)};U.prototype.L=function(a,b){if(void 0!==b){var c=a-this.vb;this.a[this.vb+c]=this.U?this.U[c]:0}}; +U.prototype.Hd=function(a,b,c){if(c)this.t("ROM load error ("+c+")");else{if("["==b[0])try{this.U=eval("("+b+")")}catch(d){this.t("ROM data error: "+(d.message||d));return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.U=Array(a.length),b=0;b<a.length;b++)this.U[b]=parseInt(a[b],16);ua(this)}}; +function ua(a){if(!H(a))if(!a.ya)a.J();else if(a.U&&a.a){var b=a.U.length;if(b!=a.ga)I(a,"ROM image size ("+q(b,4)+") does not match component-specified size ("+q(a.ga,4)+")");else{for(var c=0;c<b;c++)a.a[a.vb+c]=a.U[c];a.J()}}}w(function(){for(var a=G(window.document,"c1pjs","rom"),b=0;b<a.length;b++){var c=a[b],d=E(c),d=new U(d);F(d,c)}});function va(a){y.call(this,"C1PRAM",a)}C(va);va.prototype.P=function(a){this.a=a;this.J()}; +w(function(){for(var a=G(window.document,"c1pjs","ram"),b=0;b<a.length;b++){var c=a[b],d=E(c),d=new va(d);F(d,c)}}); +function wa(a){y.call(this,"C1PKeyboard",a);this.A=!1;this.ob=a.model;this.Eb=8;this.ed=9;this.cd=10;this.bd=13;this.dd=16;this.ad=17;this.Yc=18;this.Zc=20;this.Fb=27;this.$c=91;this.Vc=this.Eb;this.Wc=this.cd;this.Sc=this.bd;this.zb=this.Fb;this.K=224;this.l=this.dd+this.K;this.Ea=this.ad+this.K;this.Za=this.Yc+this.K;this.Ab=this.Zc+this.K;this.yb=0+this.K;this.Tc=3;this.Uc=15;this.Da=1;this.Ca=2;this.Ba=4;this.na=8;this.Aa=64;this.Ya=this.Ca|this.Ba|this.Aa;this.Pb=0;this.td=1;this.sd=2;this.ud= +3;this.rd=4;this.Ud=8192;this.Rd=250;this.Sd=100;this.Pd=300;this.fa=[];this.fa["break"]=this.yb;this.fa.esc=this.zb;this.fa["ctrl-c"]=this.Tc;this.fa["ctrl-o"]=this.Uc;this.j=[];this.j[49]=30464;this.j[33]=30464+this.l;this.j[50]=30208;this.j[34]=30208+this.l;this.j[51]=29952;this.j[35]=29952+this.l;this.j[52]=29696;this.j[36]=29696+this.l;this.j[53]=29440;this.j[37]=29440+this.l;this.j[54]=29184;this.j[38]=29184+this.l;this.j[55]=28928;this.j[39]=28928+this.l;this.j[56]=26368;this.j[40]=26368+this.l; +this.j[57]=26112;this.j[41]=26112+this.l;this.j[48]=25856;this.j[58]=25600;this.j[42]=25600+this.l;this.j[45]=25344;this.j[61]=25344+this.l;this.j[46]=22272;this.j[62]=22272+this.l;this.j[108]=22016;this.j[76]=22016+this.l;this.j[92]=22016+this.l;this.j[111]=21760;this.j[79]=21760+this.l;this.j[this.Vc]=21760+this.l;this.j[this.Wc]=21504;this.j[this.Sc]=21248;this.j[119]=18176;this.j[87]=18176+this.l;this.j[101]=17920;this.j[69]=17920+this.l;this.j[114]=17664;this.j[82]=17664+this.l;this.j[116]=17408; this.j[84]=17408+this.l;this.j[121]=17152;this.j[89]=17152+this.l;this.j[117]=16896;this.j[85]=16896+this.l;this.j[105]=16640;this.j[73]=16640+this.l;this.j[115]=14080;this.j[83]=14080+this.l;this.j[100]=13824;this.j[68]=13824+this.l;this.j[102]=13568;this.j[70]=13568+this.l;this.j[103]=13312;this.j[71]=13312+this.l;this.j[104]=13056;this.j[72]=13056+this.l;this.j[106]=12800;this.j[74]=12800+this.l;this.j[107]=12544;this.j[75]=12544+this.l;this.j[91]=12544+this.l;this.j[120]=9984;this.j[88]=9984+ this.l;this.j[99]=9728;this.j[67]=9728+this.l;this.j[118]=9472;this.j[86]=9472+this.l;this.j[98]=9216;this.j[66]=9216+this.l;this.j[110]=8960;this.j[78]=8960+this.l;this.j[94]=8960+this.l;this.j[109]=8704;this.j[77]=8704+this.l;this.j[93]=8704+this.l;this.j[44]=8448;this.j[60]=8448+this.l;this.j[113]=5888;this.j[81]=5888+this.l;this.j[97]=5632;this.j[65]=5632+this.l;this.j[122]=5376;this.j[90]=5376+this.l;this.j[32]=5120;this.j[47]=4864;this.j[63]=4864+this.l;this.j[59]=4608;this.j[43]=4608+this.l; -this.j[112]=4352;this.j[80]=4352+this.l;this.j[64]=4352+this.l;this.j[this.Da]=1536;this.j[this.wb]=1280;this.j[this.l]=512;this.j[this.Xa]=256;this.j[this.xb]=0;this.reset()}C(za);e=za.prototype;e.reset=function(){this.ya(this.lb);this.u=this.Ca;this.Tb=0;this.D=[this.Ca,0,0,0,0,0,0,0];this.$a=[];if(this.P)for(var a in this.P)isNaN(a)||this.P[a]&&clearTimeout(this.P[a]);this.P=[];this.Dc=this.Z=0;this.Ub=-1;this.Sb=this.D;this.fc=this.pb=0;this.ba=""}; -e.G=function(a,b,c,d){if(void 0===this.o[c])switch(c){case "keyDown":return this.o[c]=d,d.onkeydown=function(a){return function(b){return Aa(a,b,!0)}}(this),!0;case "keyPress":return this.o[c]=d,d.onkeypress=function(a){return function(b){var c=!0;b=b||window.event;b=b.which||b.keyCode;a.ba="";a.u&a.ma?a.u&=~a.ma:c=!V(a,b);return c}}(this),!0;case "keyUp":return this.o[c]=d,d.onkeyup=function(a){return function(b){return Aa(a,b,!1)}}(this),!0;case "break":return this.o[c]=d,d.onclick=function(a){return function(){a.F&& -a.F.reset(!0)}}(this),!0;default:if(void 0!==this.ea[c])return this.o[c]=d,d.onclick=function(a,b,c){return function(){a.s&&a.s.ca();return!V(a,c)}}(this,c,this.ea[c]),!0}return!1};e.O=function(a,b,c,d){this.a=a;this.kc=b;this.Ad=c-b+1;this.Td=this.kc+this.Ad;d&&(this.s=d,Q(d,b,c,this,this.K));this.I()};e.ya=function(a){this.va=a;this.gb=255;600!=this.va&&(this.gb=0,I(this,"updated keyboard model: "+this.va))};e.R=function(a,b){a&&!this.w&&(this.w=!0,this.F=b)}; -e.I=function(){this.Zb=(this.Id=t("iOS"))||t("Android");y.prototype.I.call(this)};function Ba(a,b){var c=b?a.Pd:a.Od;a.s&&a.s.V&&(c/=a.s.V);return c}function Ca(a,b){!a.Z||void 0!==b&&b==a.Z||(clearTimeout(a.P[a.Z]),W(a,a.Z,!1,a.od))}function X(a,b,c){a.ba=b;Da(a,c||a.Md)}function Da(a,b){if(0<a.ba.length){var c=a.ba.charCodeAt(0);10==c&&(c=13);65<=c&&90>=c&&(c+=32);a.ba=a.ba.substr(1);V(a,c)}0<a.ba.length&&setTimeout(function(a){return function(){Da(a,b)}}(a),b)} -function Aa(a,b,c){var d,f=!c;b=b.keyCode;c&&(a.Dc=b);b==a.l-a.J?(a.u&=~a.Aa,c&&(a.u|=a.Aa),b+=a.J,f=!1):b==a.Xa-a.J?(a.u&=~a.Ba,c&&(a.u|=a.Ba),b+=a.J,f=!1):b==a.Da-a.J?(a.u&=~a.za,c&&(a.u|=a.za),b+=a.J,f=!1):b==a.xb-a.J?(c=!c,a.u&=~a.Ca,c&&(a.u|=a.Ca),b+=a.J,f=!1):b==a.Xc?(a.u&=~a.ma,c&&(a.u|=a.ma),f=!1,d=!0):d=b==a.bd?f=!1:b==a.Cb||b==a.Bb?c?!V(a,b):!1:!0;f&&(a.u&=~a.ma,a.Zb||b!=a.Dc||Ca(a));void 0===d&&(d=!W(a,b,c,a.pd));return d} -function V(a,b){var c=!1;b==a.vb?a.F&&(a.F.reset(!0),c=!0):(a.Zb&&65<=b&&90>=b&&(b+=32),Ca(a,b),W(a,b,!0,a.Mb)&&(a.s.speed==a.s.na?W(a,b,!1,a.qd):(c=!1,a.P[b]&&(clearTimeout(a.P[b]),c=!0),c=Ba(a,c),a.P[a.Z=b]=setTimeout(function(a){return function(){W(a,b,!1,a.rd)}}(a),c)),c=!0));return c} -function W(a,b,c,d){var f=!1;c||(a.P[b]=null,a.Z==b&&(a.Z=0));var g=0,h=a.j[b];void 0===h&&(1<=b&&26>=b&&(b+=64,g=a.Da),h=a.j[b]);void 0!==h&&(b=h>>12,f=h>>8&15,g||(g=h&255),c?(a.D[b]|=1<<f,a.D[0]=g==a.Da?a.D[0]|a.za:g==a.l?a.D[0]|a.Aa:g==a.Xa?a.D[0]|a.Ba:a.D[0]&~a.Wa):(a.D[b]&=~(1<<f),a.D[0]&=~a.Wa,a.D[0]|=a.u&a.Wa),c=d==a.Mb&&!a.$a.length,a.$a.push(a.D.slice()),a.Va(c),f=!0);return f}e.M=function(){};e.K=function(a){var b=this.s.M(a);this.Tb=b^this.gb;this.pb++;this.Va(!1,a,b)}; -e.Va=function(a,b){var c=wa(this.s);if(!a)if(this.s.speed==this.s.na)a=void 0!==b&&32<=this.pb;else{var d=c-this.fc;a=0>d||d>=this.Rd}a&&(d=this.$a.shift(),void 0!==d&&(this.Sb=d),this.pb=0,this.fc=c);for(d=c=0;8>d;d++)this.Tb&1<<d&&(c|=this.Sb[d]);c^=this.gb;if(void 0!==b)this.a[b]=c;else if(b=this.kc,c!=this.Ub)for(d=b;d<this.Td;d++)this.a[d]=c;this.Ub=c};w(function(){for(var a=H(window.document,"c1pjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=F(c),d=new za(d);G(d,c)}}); -function Ea(a,b,c,d){y.call(this,"C1PVideo",a);this.lb=a.model;this.gc=a.charCols;this.hc=a.charRows;this.Fd=a.screenWidth;this.Gd=a.screenHeight;this.Ja=a.charWidth;this.Ka=a.charHeight;Fa(this);this.La=b;this.Dd=c;this.qa=d;this.oa=56832}C(Ea);e=Ea.prototype;e.reset=function(a){this.ya(this.lb);if(this.a)for(var b=this.Sa;b<this.tb;b++)this.a[b]=a?Math.floor(256*Math.random()):32}; -e.G=function(a,b,c,d){switch(c){case "refresh":return this.o[c]=d,d.onclick=function(a){return function(){Ga(a);oa(a)}}(this),!0}return!1};e.O=function(a,b,c,d){this.a=a;this.Sa=b;this.Cd=c-b+1;this.tb=this.Sa+this.Cd;d&&(this.s=d,void 0!==this.oa&&(pa(d,this.oa,this.oa,this,this.M),Q(d,this.oa,this.oa,this,this.K)));this.reset(!0)}; -function Fa(a,b,c,d,f){a.Qa=void 0!==b?b:a.gc;a.Sd=void 0!==c?c:a.hc;a.ga=a.Qa*a.Sd;a.tb=a.Sa+a.ga;a.$b=void 0!==d?d:0;a.ic=void 0!==f?f:c;a.Vb=Math.floor(a.Fd/a.Qa);a.Wb=Math.floor(a.Gd/a.ic)}e.ca=function(){this.La.focus()};e.ya=function(a){this.va=a;600==this.va?(Fa(this,this.gc,this.hc,4,24),1024==this.ga&&this.s&&(this.Fa=this.tb+this.ga-1,Q(this.s,this.Fa,this.Fa,this,this.Hc))):(I(this,"updated video model: "+this.va),Fa(this,64,32));Ga(this);oa(this)}; -e.R=function(a,b){if(a&&!this.w&&J(this)){if(this.w=!0,this.B=M(b,"keyboard"))this.B.G("input","canvas","keyDown",this.La),this.B.G("input","canvas","keyPress",this.La),this.B.G("input","canvas","keyUp",this.La)}else!a&&this.w&&(this.w=!1)};e.I=function(){this.Ja||(this.Ja=Math.floor(this.qa.width/16));this.Ka||(this.Ka=Math.floor(this.qa.height/16));y.prototype.I.call(this)};e.M=function(a){var b=this.s.M(a);this.s.K(a,b&127|(Math.floor(wa(this.s)/8333)&1?128:0))};e.K=function(){}; -e.Hc=function(a,b){if(void 0!==b){this.ya(540);this.B&&this.B.ya(542);var c=this.s,d=c.S,f=[],g=qa(d,this.Fa,this.Fa,this,this.Hc);if(0<=g){f.push(d[g][0]);f.push(d[g][1]);d.splice(g,1);for(var h=65536,l=0,g=0;g<d.length;g++)h>d[g][0]&&(h=d[g][0]),l<d[g][1]&&(l=d[g][1]);f.push(h);f.push(l)}4==f.length&&(c.Ga=f[2],c.Ha=f[3])}};function Ga(a){a.ab=Array(a.ga);for(var b=0;b<=a.ga;b++)a.ab[b]=-1} -function oa(a){var b=0;if(a.w)for(;b<a.ga;){var c=a.a[a.Sa+b];if(a.ab[b]!=c){var d=Math.floor(b/a.Qa);if(d>=a.$b&&(d-=a.$b,d<a.ic)){var f=c*a.Ja;a.Dd.drawImage(a.qa,f%a.qa.width,Math.floor(f/a.qa.width)*a.Ka,a.Ja,a.Ka,b%a.Qa*a.Vb,d*a.Wb,a.Vb,a.Wb)}a.ab[b]=c}b++}} -w(function(){for(var a=H(window.document,"c1pjs","video"),b=0;b<a.length;b++){var c=a[b],d=F(c),f=window.document.createElement("canvas");if(void 0===f){c.innerHTML="<br/>Missing <canvas> support; try a new web browser.";break}f.setAttribute("class","c1pjs-canvas");f.setAttribute("width",d.screenWidth);f.setAttribute("height",d.screenHeight);f.setAttribute("contenteditable","true");f.setAttribute("autocapitalize","off");f.setAttribute("autocorrect","off");f.style.backgroundColor=d.screenColor; -f.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(f.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,f,d.screenWidth,d.screenHeight));c.appendChild(f);var g=new Image,h=f.getContext("2d"),f=new Ea(d,f,h,g);g.onload=function(a){return function(){a.I()}}(f,d.charSet);g.src=d.charSet;G(f,c)}}); -function Ha(a){y.call(this,"C1PSerialPort",a);this.w=!1;this.Yb=a.demo;this.wd=0;this.vd=1;this.reset()}C(Ha);e=Ha.prototype;e.reset=function(){2!=this.Y&&(this.Ia=this.fb=0,this.la='10 PRINT "HELLO OSI #'+ea(this)+'"\n',this.Y=this.Oa=0)};e.start=function(){this.B&&this.Yb&&(X(this.B," C\n\n",3E3),setTimeout(function(a){return function(){a.Y=1;X(a.B,"LOAD\n")}}(this),12E3));this.Yb=!1}; -e.G=function(a,b,c,d){switch(c){case "listSerial":return this.o[c]=d,!0;case "loadSerial":return this.o[c]=d,d.onclick=function(a){return function(){a.o.listSerial&&r(a.o.listSerial.value,!0,null,a,a.Kd)}}(this),!0}return!1};e.O=function(a,b,c,d){this.a=a;this.rb=b;this.Bd=c-b+1;this.mc=this.rb+this.Bd;if(this.s=d)pa(d,b,c,this,this.M),Q(d,b,c,this,this.K);this.I()};e.R=function(a,b){a&&!this.w&&(this.w=!0,this.F=b,this.B=M(b,"keyboard"))}; -e.Kd=function(a,b,c){b?(this.la=b,this.Y=this.Oa=0,this.F&&this.B&&this.s.Q?(I(this,"auto-loading "+a),this.s.ca(),"."!=this.la.charAt(0)?(this.Y=1,X(this.B,"NEW\nLOAD\n")):(this.Y=2,this.F.reset(!0),X(this.B,"ML"))):I(this,a+" ready to load")):I(this,a+" load error ("+c+")")};e.M=function(a,b){void 0!==b&&(a&1?Ia(this):this.la&&!this.Oa&&Ia(this))};e.K=function(){}; -function Ia(a){if(void 0!==a.la){a.fb=0;a.Ia=0;if(a.Oa<a.la.length){var b=a.la.charCodeAt(a.Oa++);10==b&&(b=13);a.fb=b;a.Ia=1}else 1==a.Y&&a.B&&X(a.B," \nRUN\n"),a.Y=0;a.Va()}}e.Va=function(){var a;for(a=this.rb+0;a<this.mc;a+=2)this.a[a]=this.Ia?this.vd:this.wd;for(a=this.rb+1;a<this.mc;a+=2)this.a[a]=this.Ia?this.fb:0};w(function(){for(var a=H(window.document,"c1pjs","serial"),b=0;b<a.length;b++){var c=a[b],d=F(c),d=new Ha(d);G(d,c)}}); -function Ja(a){y.call(this,"C1PDiskController",a);this.w=!1;this.ld=this.Kb=0;this.Hb=1;this.md=this.Lb=2;this.Ib=3;this.yb=128;this.zb=64;this.da=4;this.ed=1;this.Eb=2;this.dd=4;this.gd=8;this.fd=16;this.Fb=32;this.Db=64;this.Ya=128;this.jd=4;this.Gb=8;this.hd=32;this.nd=this.kd=16;this.Jb=17;this.Ab=3;this.Pb=1;this.Qb=2;this.Ob=4;this.Nb=8;this.Uc=0;this.cd=40;this.reset(!0)}C(Ja);e=Ja.prototype; -e.reset=function(a){Ka(this);this.C=-1;a&&(this.L=[],this.L[0]={Qg:this.Uc,jc:this.cd,Hd:!0,ja:20,U:0,ha:-1,Ea:[]})}; -function Ka(a){a.Ec={p:a.Db,N:function(){},update:function(a){return function(c){void 0!==c&&(this.p=c);a.Ta.p&a.da||Y(a,a.ld,this)}}(a)};a.$={p:255,N:function(){this.update()},update:function(a){return function(c){void 0===c?c=a.$.p:La(a,c,a.wa.p);c=c|a.Ya|a.Fb|a.gd|a.dd|a.Eb|a.fd;c&=~a.ed;if(0<=a.C&&a.L[a.C].Ea.length){var d=a.L[a.C];d.Hd&&(c&=~a.Fb);d.U||(c&=~a.Eb);10>=--d.ja&&(0<d.ja?(c&=~a.Ya,Ma(a)):(d.ja=100,0<=a.C&&(a.L[a.C].ha=0,Na(a))))}this.p=c;a.Ta.p&a.da&&Y(a,a.Kb,this)}}(a)};a.Ta={p:0, -N:function(){},update:function(a){return function(c){void 0!==c&&(this.p=c&~(a.yb|a.zb));Y(a,a.Hb,this);a.$.update();a.Ec.update()}}(a)};a.Fc={p:255,N:function(){},update:function(a){return function(c){void 0!==c&&(this.p=c);a.Ua.p&a.da||Y(a,a.md,this)}}(a)};a.wa={p:255,N:function(){},update:function(a){return function(c){void 0===c?c=a.wa.p:La(a,a.$.p,c);if(0<=a.C&&a.C<a.L.length){var d=a.L[a.C];d.Ea.length&&a.wa.p&a.Gb&&!(c&a.Gb)&&(c&a.jd?d.U--:d.U++,d.U>=d.jc&&(d.U=d.jc),0>d.U&&(d.U=0),d.ja=20, -a.$.update(a.$.p|a.Ya),Ma(a))}this.p=c;a.Ua.p&a.da&&Y(a,a.Lb,this)}}(a)};a.Ua={p:0,N:function(){},update:function(a){return function(c){void 0!==c&&(this.p=c&~(a.yb|a.zb));Y(a,a.Ib,this);a.wa.update();a.Fc.update()}}(a)};a.Og={p:0,N:function(){},update:function(a){return function(c){void 0!==c&&((c&a.Ab)==a.Ab&&(a.aa.p=a.Qb|a.Ob|a.Nb),this.p=c);a.aa.update()}}(a)};a.aa={p:a.Qb|a.Ob|a.Nb,N:function(){},update:function(a){return function(c){void 0===c&&(c=a.aa.p);c&=~a.Pb;0<=a.C&&0<=a.L[a.C].ha&&(c|= -a.Pb);this.p=c;Y(a,a.nd,this)}}(a)};a.ub={p:0,N:function(a){return function(){Na(a)}}(a),update:function(a){return function(c){void 0!==c&&(this.p=c);Y(a,a.Jb,this)}}(a)};a.Pg={p:0,N:function(){},update:function(){return function(){}}(a)}} -e.G=function(a,b,c,d){switch(c){case "listDisk":return this.o[c]=d,!0;case "loadDisk":return this.o[c]=d,d.onclick=function(a){return function(){if(a.o.listDisk){var b=a.o.listDisk.value,c=b;".json"!=b.substr(b.length-5)&&(c="http://"+window.location.host+"/api/v1/dump?disk="+b);I(a,"loading "+aa(b)+"...");r(c,!0,null,a,a.Jd)}}}(this),!0}return!1};e.O=function(a,b,c,d){this.a=a;this.bb=b;if(this.s=d)pa(d,b,c,this,this.M),Q(d,b,c,this,this.K);this.I()};e.R=function(a){a&&!this.w&&(this.w=!0)}; -e.Jd=function(a,b,c){if(c)I(this,"disk load error ("+c+")");else{c=[];I(this,"mounting "+a+"...");try{if(c=eval("("+b+")"),c.length)if(c[0].length){var d=c[0];if(void 0===d[0].trackNum)I(this,"data error: "+d[0]);else if(this.L[0]){for(b=0;b<d.length;b++){var f,g=d[b],h=g.sectors;if(void 0===(f=g.trackNum)||void 0===h)throw"track "+b+" missing data";f!=b&&s("track "+f+" out of order (expected "+b+")");c=[];var l,m,k;if(f){Oa(c,g,"trackSig");Pa(c,g);Z(c,g,"trackType");for(var n=0;n<h.length;n++){l= -h[n];m=l.sectorData;Z(c,l,"sectorSig");Z(c,l,"sectorNum");Z(c,l,"sectorPages");for(k=0;k<m.length;k++)c.push(m[k]);Oa(c,l,"sectorEndSig")}}else for(l=h[0],m=l.sectorData,Z(c,g,"trackLoad",2),Z(c,l,"sectorPages"),k=0;k<m.length;k++)c.push(m[k]);d[f].Gc=c}this.L[0].Ea=d;I(this,"mount of "+a+" complete")}else I(this,"no available drives")}else I(this,"no tracks: "+a);else I(this,"no data: "+a)}catch(q){I(this,"disk data error: "+(q.message||q))}}}; -function Pa(a,b){var c=b.trackNum;if(void 0===c)throw"missing bcd value: trackNum";a.push(Math.floor(c/10)<<4|c%10)}function Z(a,b,c,d){b=b[c];if(void 0===b)throw"missing binary value: "+c;2==d&&a.push(b>>8&255);a.push(b&255)}function Oa(a,b,c){b=b[c];if(void 0===b)throw"missing signature: "+c;for(c=0;c<b.length;c++)a.push(b.charCodeAt(c))} -function Qa(a,b,c){b&=63;16>b?b&=3:32>b&&(b&=17);switch(b){case a.Kb:a=a.Ta.p&a.da?a.$:a.Ec;break;case a.Hb:a=a.Ta;break;case a.Lb:a=a.Ua.p&a.da?a.wa:a.Fc;break;case a.Ib:a=a.Ua;break;case a.kd:a=c?a.Og:a.aa;break;case a.Jb:a=a.ub;break;default:a=a.Pg}return a}e.M=function(a,b){void 0!==b&&Qa(this,a-this.bb,!1).N()};e.K=function(a,b){if(void 0!==b){var c=this.s.M(a);Qa(this,a-this.bb,!0).update(c)}}; -function La(a,b,c){var d=-1;void 0!==b&&void 0!==c&&(d=0,c&a.hd||(d|=2),a.$.p&a.Db||(d|=1));a.C!=d&&(a.C=d,a.aa.update())}function Ma(a){0<=a.C&&(a.L[a.C].ha=-1,a.ub.update(255),a.aa.update())}function Na(a){var b=null;if(0<=a.C){var b=a.L[a.C],c=b.Ea[b.U];void 0!==c&&(0<=b.ha&&b.ha<c.Gc.length?(b.ja=100,b=c.Gc[b.ha++],a.ub.update(b),a.aa.update()):(b.ja=10,Ma(a)))}}function Y(a,b,c){a.s.K(b+a.bb,c.p)} -w(function(){for(var a=H(window.document,"c1pjs","disk"),b=0;b<a.length;b++){var c=a[b],d=F(c),d=new Ja(d);G(d,c)}});function $(a,b){y.call(this,"C1PComputer",a);this.H=b}C($);$.prototype.reset=function(a){var b=null,c;for(c in this.H)for(var d=0;d<this.H[c].length;d++){var f=this.H[c][d];f&&f.reset&&(f.reset(),"cpu"==c&&(b=f))}b&&(b.update(),a&&P(b))};$.prototype.start=function(){for(var a in this.H)if("cpu"!=a)for(var b=0;b<this.H[a].length;b++){var c=this.H[a][b];c&&c.start&&c.start()}}; -$.prototype.stop=function(a,b){for(var c in this.H)if("cpu"!=c)for(var d=0;d<this.H[c].length;d++){var f=this.H[c][d];f&&f.stop&&f.stop(a,b)}};$.prototype.G=function(a,b,c,d){switch(c){case "reset":return this.o[c]=d,d.onclick=function(a){return function(){a.reset()}}(this),!0}return!1};function M(a,b){return a.H[b]?a.H[b][0]:null} -function Ra(a){var b=null,c;for(c in a.H)for(var d=0;d<a.H[c].length;d++){var f=a.H[c][d];if(f){if(!J(f)){J(f,function(a){return function(){Ra(a)}}(a));return}"cpu"==c?b=f:f.R&&f.R(!0,a)}}a.I();I(a,"C1Pjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>");b&&b.R(!0,a)} -w(function(){for(var a=H(window.document,"c1pjs","computer"),b=0;b<a.length;b++){for(var c=a[b],d=F(c),f,g={},h,l=0,m=0,k=0;k<d.modules.length;k++){var n=d.modules[k];if(!k){if("cpu"!=n.type)break;l=n.start;m=n.end;h=Array(m+1-l);for(f=l;f<h.length;f++)h[f]=0}if(f=E(n.refID,d.id)){var q=n.type;void 0===g[q]&&(g[q]=[]);g[q].push(f);f.O&&void 0!==n.start&&f.O(h,n.start,n.end,g.cpu[0])}else{s('no component for <module refid="'+n.refID+'">');return}}if(void 0===h){s('<module type="cpu"> definition must appear first in the <computer> specification'); -break}if(f=E("debugger",d.id))g["debugger"]=[f],f.O&&f.O(h,l,m,g.cpu[0]);(f=E("panel",d.id))&&(g.panel=[f]);d=new $(d,g);G(d,c);Ra(d)}});function Sa(a,b,c,d){var f=r(a);if(f[0])throw Error(f[1]);return Ta(f[1],a,b,c,d)} -function Ta(a,b,c,d,f){var g=null;if(a){if(f)for(var h=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;g=h.exec(a);){var l=g[2],m=r(l),k=m[1];if(m[0]||!k)throw c="unable to resolve XML reference: "+g[0]+" ("+m[0]+")",Error(c);if(m=g[3]){var n=k.match(new RegExp("<"+g[1]+"[^>]*>"));if(n){for(var l=n[0],q,ma=/( [a-z]+=)(['"])(.*?)\2/g;q=ma.exec(m);)l=0>l.indexOf(q[1])?l.replace(">",q[0]+">"):l.replace(new RegExp(q[1]+"(['\"])(.*?)\\1"),q[0]);n[0]!=l&&(k=k.replace(n[0],l))}else throw c="missing <"+g[1]+"> in "+l, -Error(c);}k=k.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(g[0],k);h.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*\]>\s*/g,"")),g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+ +this.j[112]=4352;this.j[80]=4352+this.l;this.j[64]=4352+this.l;this.j[this.Ea]=1536;this.j[this.zb]=1280;this.j[this.l]=512;this.j[this.Za]=256;this.j[this.Ab]=0;this.reset()}C(wa);e=wa.prototype;e.reset=function(){this.za(this.ob);this.v=this.Da;this.Wb=0;this.F=[this.Da,0,0,0,0,0,0,0];this.bb=[];if(this.Q)for(var a in this.Q)isNaN(a)||this.Q[a]&&clearTimeout(this.Q[a]);this.Q=[];this.Gc=this.$=0;this.Xb=-1;this.Vb=this.F;this.ic=this.sb=0;this.ca=""}; +e.H=function(a,b,c,d){if(void 0===this.o[c])switch(c){case "keyDown":return this.o[c]=d,d.onkeydown=function(a){return function(b){return xa(a,b,!0)}}(this),!0;case "keyPress":return this.o[c]=d,d.onkeypress=function(a){return function(b){var c=!0;b=b||window.event;b=b.which||b.keyCode;a.ca="";a.v&a.na?a.v&=~a.na:c=!V(a,b);return c}}(this),!0;case "keyUp":return this.o[c]=d,d.onkeyup=function(a){return function(b){return xa(a,b,!1)}}(this),!0;case "break":return this.o[c]=d,d.onclick=function(a){return function(){a.G&& +a.G.reset(!0)}}(this),!0;default:if(void 0!==this.fa[c])return this.o[c]=d,d.onclick=function(a,b,c){return function(){a.s&&a.s.da();return!V(a,c)}}(this,c,this.fa[c]),!0}return!1};e.P=function(a,b,c,d){this.a=a;this.nc=b;this.Dd=c-b+1;this.Wd=this.nc+this.Dd;d&&(this.s=d,Q(d,b,c,this,this.L));this.J()};e.za=function(a){this.wa=a;this.ib=255;600!=this.wa&&(this.ib=0,this.t("updated keyboard model: "+this.wa))};e.S=function(a,b){a&&!this.A&&(this.A=!0,this.G=b)}; +e.J=function(){this.bc=(this.Ld=t("iOS"))||t("Android");y.prototype.J.call(this)};function ya(a,b){var c=b?a.Sd:a.Rd;a.s&&a.s.W&&(c/=a.s.W);return c}function za(a,b){!a.$||void 0!==b&&b==a.$||(clearTimeout(a.Q[a.$]),W(a,a.$,!1,a.rd))}function X(a,b,c){a.ca=b;Aa(a,c||a.Pd)}function Aa(a,b){if(0<a.ca.length){var c=a.ca.charCodeAt(0);10==c&&(c=13);65<=c&&90>=c&&(c+=32);a.ca=a.ca.substr(1);V(a,c)}0<a.ca.length&&setTimeout(function(a){return function(){Aa(a,b)}}(a),b)} +function xa(a,b,c){var d,f=!c;b=b.keyCode;c&&(a.Gc=b);b==a.l-a.K?(a.v&=~a.Ba,c&&(a.v|=a.Ba),b+=a.K,f=!1):b==a.Za-a.K?(a.v&=~a.Ca,c&&(a.v|=a.Ca),b+=a.K,f=!1):b==a.Ea-a.K?(a.v&=~a.Aa,c&&(a.v|=a.Aa),b+=a.K,f=!1):b==a.Ab-a.K?(c=!c,a.v&=~a.Da,c&&(a.v|=a.Da),b+=a.K,f=!1):b==a.$c?(a.v&=~a.na,c&&(a.v|=a.na),f=!1,d=!0):d=b==a.ed?f=!1:b==a.Fb||b==a.Eb?c?!V(a,b):!1:!0;f&&(a.v&=~a.na,a.bc||b!=a.Gc||za(a));void 0===d&&(d=!W(a,b,c,a.sd));return d} +function V(a,b){var c=!1;b==a.yb?a.G&&(a.G.reset(!0),c=!0):(a.bc&&65<=b&&90>=b&&(b+=32),za(a,b),W(a,b,!0,a.Pb)&&(a.s.speed==a.s.oa?W(a,b,!1,a.td):(c=!1,a.Q[b]&&(clearTimeout(a.Q[b]),c=!0),c=ya(a,c),a.Q[a.$=b]=setTimeout(function(a){return function(){W(a,b,!1,a.ud)}}(a),c)),c=!0));return c} +function W(a,b,c,d){var f=!1;c||(a.Q[b]=null,a.$==b&&(a.$=0));var g=0,l=a.j[b];void 0===l&&(1<=b&&26>=b&&(b+=64,g=a.Ea),l=a.j[b]);void 0!==l&&(b=l>>12,f=l>>8&15,g||(g=l&255),c?(a.F[b]|=1<<f,a.F[0]=g==a.Ea?a.F[0]|a.Aa:g==a.l?a.F[0]|a.Ba:g==a.Za?a.F[0]|a.Ca:a.F[0]&~a.Ya):(a.F[b]&=~(1<<f),a.F[0]&=~a.Ya,a.F[0]|=a.v&a.Ya),c=d==a.Pb&&!a.bb.length,a.bb.push(a.F.slice()),a.Xa(c),f=!0);return f}e.N=function(){};e.L=function(a){var b=this.s.N(a);this.Wb=b^this.ib;this.sb++;this.Xa(!1,a,b)}; +e.Xa=function(a,b){var c=ta(this.s);if(!a)if(this.s.speed==this.s.oa)a=void 0!==b&&32<=this.sb;else{var d=c-this.ic;a=0>d||d>=this.Ud}a&&(d=this.bb.shift(),void 0!==d&&(this.Vb=d),this.sb=0,this.ic=c);for(d=c=0;8>d;d++)this.Wb&1<<d&&(c|=this.Vb[d]);c^=this.ib;if(void 0!==b)this.a[b]=c;else if(b=this.nc,c!=this.Xb)for(d=b;d<this.Wd;d++)this.a[d]=c;this.Xb=c};w(function(){for(var a=G(window.document,"c1pjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=E(c),d=new wa(d);F(d,c)}}); +function Ba(a,b,c,d){y.call(this,"C1PVideo",a);this.ob=a.model;this.jc=a.charCols;this.kc=a.charRows;this.Id=a.screenWidth;this.Jd=a.screenHeight;this.Ka=a.charWidth;this.La=a.charHeight;Ca(this);this.Ma=b;this.Gd=c;this.ra=d;this.pa=56832}C(Ba);e=Ba.prototype;e.reset=function(a){this.za(this.ob);if(this.a)for(var b=this.Ua;b<this.wb;b++)this.a[b]=a?Math.floor(256*Math.random()):32}; +e.H=function(a,b,c,d){switch(c){case "refresh":return this.o[c]=d,d.onclick=function(a){return function(){Da(a);P(a)}}(this),!0}return!1};e.P=function(a,b,c,d){this.a=a;this.Ua=b;this.Fd=c-b+1;this.wb=this.Ua+this.Fd;d&&(this.s=d,void 0!==this.pa&&(ma(d,this.pa,this.pa,this,this.N),Q(d,this.pa,this.pa,this,this.L)));this.reset(!0)}; +function Ca(a,b,c,d,f){a.Ra=void 0!==b?b:a.jc;a.Vd=void 0!==c?c:a.kc;a.ha=a.Ra*a.Vd;a.wb=a.Ua+a.ha;a.cc=void 0!==d?d:0;a.lc=void 0!==f?f:c;a.Yb=Math.floor(a.Id/a.Ra);a.Zb=Math.floor(a.Jd/a.lc)}e.da=function(){this.Ma.focus()};e.za=function(a){this.wa=a;600==this.wa?(Ca(this,this.jc,this.kc,4,24),1024==this.ha&&this.s&&(this.Ga=this.wb+this.ha-1,Q(this.s,this.Ga,this.Ga,this,this.Kc))):(this.t("updated video model: "+this.wa),Ca(this,64,32));Da(this);P(this)}; +e.S=function(a,b){if(a&&!this.A&&H(this)){if(this.A=!0,this.C=K(b,"keyboard"))this.C.H("input","canvas","keyDown",this.Ma),this.C.H("input","canvas","keyPress",this.Ma),this.C.H("input","canvas","keyUp",this.Ma)}else!a&&this.A&&(this.A=!1)};e.J=function(){this.Ka||(this.Ka=Math.floor(this.ra.width/16));this.La||(this.La=Math.floor(this.ra.height/16));y.prototype.J.call(this)};e.N=function(a){var b=this.s.N(a);this.s.L(a,b&127|(Math.floor(ta(this.s)/8333)&1?128:0))};e.L=function(){}; +e.Kc=function(a,b){if(void 0!==b){this.za(540);this.C&&this.C.za(542);var c=this.s,d=c.T,f=[],g=na(d,this.Ga,this.Ga,this,this.Kc);if(0<=g){f.push(d[g][0]);f.push(d[g][1]);d.splice(g,1);for(var l=65536,h=0,g=0;g<d.length;g++)l>d[g][0]&&(l=d[g][0]),h<d[g][1]&&(h=d[g][1]);f.push(l);f.push(h)}4==f.length&&(c.Ha=f[2],c.Ia=f[3])}};function Da(a){a.cb=Array(a.ha);for(var b=0;b<=a.ha;b++)a.cb[b]=-1} +function P(a){var b=0;if(a.A)for(;b<a.ha;){var c=a.a[a.Ua+b];if(a.cb[b]!=c){var d=Math.floor(b/a.Ra);if(d>=a.cc&&(d-=a.cc,d<a.lc)){var f=c*a.Ka;a.Gd.drawImage(a.ra,f%a.ra.width,Math.floor(f/a.ra.width)*a.La,a.Ka,a.La,b%a.Ra*a.Yb,d*a.Zb,a.Yb,a.Zb)}a.cb[b]=c}b++}} +w(function(){for(var a=G(window.document,"c1pjs","video"),b=0;b<a.length;b++){var c=a[b],d=E(c),f=window.document.createElement("canvas");if(void 0===f){c.innerHTML="<br/>Missing <canvas> support; try a new web browser.";break}f.setAttribute("class","c1pjs-canvas");f.setAttribute("width",d.screenWidth);f.setAttribute("height",d.screenHeight);f.setAttribute("contenteditable","true");f.setAttribute("autocapitalize","off");f.setAttribute("autocorrect","off");f.style.backgroundColor=d.screenColor; +f.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(f.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,f,d.screenWidth,d.screenHeight));c.appendChild(f);var g=new Image,l=f.getContext("2d"),f=new Ba(d,f,l,g);g.onload=function(a){return function(){a.J()}}(f,d.charSet);g.src=d.charSet;F(f,c)}}); +function Ea(a){y.call(this,"C1PSerialPort",a);this.A=!1;this.ac=a.demo;this.zd=0;this.yd=1;this.reset()}C(Ea);e=Ea.prototype;e.reset=function(){2!=this.Z&&(this.Ja=this.hb=0,this.ma='10 PRINT "HELLO OSI #'+ea(this)+'"\n',this.Z=this.Pa=0)};e.start=function(){this.C&&this.ac&&(X(this.C," C\n\n",3E3),setTimeout(function(a){return function(){a.Z=1;X(a.C,"LOAD\n")}}(this),12E3));this.ac=!1}; +e.H=function(a,b,c,d){switch(c){case "listSerial":return this.o[c]=d,!0;case "loadSerial":return this.o[c]=d,d.onclick=function(a){return function(){a.o.listSerial&&r(a.o.listSerial.value,!0,null,a,a.Nd)}}(this),!0}return!1};e.P=function(a,b,c,d){this.a=a;this.ub=b;this.Ed=c-b+1;this.pc=this.ub+this.Ed;if(this.s=d)ma(d,b,c,this,this.N),Q(d,b,c,this,this.L);this.J()};e.S=function(a,b){a&&!this.A&&(this.A=!0,this.G=b,this.C=K(b,"keyboard"))}; +e.Nd=function(a,b,c){b?(this.ma=b,this.Z=this.Pa=0,this.G&&this.C&&this.s.R?(this.t("auto-loading "+a),this.s.da(),"."!=this.ma.charAt(0)?(this.Z=1,X(this.C,"NEW\nLOAD\n")):(this.Z=2,this.G.reset(!0),X(this.C,"ML"))):this.t(a+" ready to load")):this.t(a+" load error ("+c+")")};e.N=function(a,b){void 0!==b&&(a&1?Fa(this):this.ma&&!this.Pa&&Fa(this))};e.L=function(){}; +function Fa(a){if(void 0!==a.ma){a.hb=0;a.Ja=0;if(a.Pa<a.ma.length){var b=a.ma.charCodeAt(a.Pa++);10==b&&(b=13);a.hb=b;a.Ja=1}else 1==a.Z&&a.C&&X(a.C," \nRUN\n"),a.Z=0;a.Xa()}}e.Xa=function(){var a;for(a=this.ub+0;a<this.pc;a+=2)this.a[a]=this.Ja?this.yd:this.zd;for(a=this.ub+1;a<this.pc;a+=2)this.a[a]=this.Ja?this.hb:0};w(function(){for(var a=G(window.document,"c1pjs","serial"),b=0;b<a.length;b++){var c=a[b],d=E(c),d=new Ea(d);F(d,c)}}); +function Ga(a){y.call(this,"C1PDiskController",a);this.A=!1;this.od=this.Nb=0;this.Kb=1;this.pd=this.Ob=2;this.Lb=3;this.Bb=128;this.Cb=64;this.ea=4;this.hd=1;this.Hb=2;this.gd=4;this.kd=8;this.jd=16;this.Ib=32;this.Gb=64;this.$a=128;this.md=4;this.Jb=8;this.ld=32;this.qd=this.nd=16;this.Mb=17;this.Db=3;this.Sb=1;this.Tb=2;this.Rb=4;this.Qb=8;this.Xc=0;this.fd=40;this.reset(!0)}C(Ga);e=Ga.prototype; +e.reset=function(a){Ha(this);this.D=-1;a&&(this.M=[],this.M[0]={Tg:this.Xc,mc:this.fd,Kd:!0,ka:20,V:0,ia:-1,Fa:[]})}; +function Ha(a){a.Hc={p:a.Gb,O:function(){},update:function(a){return function(c){void 0!==c&&(this.p=c);a.Va.p&a.ea||Y(a,a.od,this)}}(a)};a.aa={p:255,O:function(){this.update()},update:function(a){return function(c){void 0===c?c=a.aa.p:Ia(a,c,a.xa.p);c=c|a.$a|a.Ib|a.kd|a.gd|a.Hb|a.jd;c&=~a.hd;if(0<=a.D&&a.M[a.D].Fa.length){var d=a.M[a.D];d.Kd&&(c&=~a.Ib);d.V||(c&=~a.Hb);10>=--d.ka&&(0<d.ka?(c&=~a.$a,Ja(a)):(d.ka=100,0<=a.D&&(a.M[a.D].ia=0,Ka(a))))}this.p=c;a.Va.p&a.ea&&Y(a,a.Nb,this)}}(a)};a.Va={p:0, +O:function(){},update:function(a){return function(c){void 0!==c&&(this.p=c&~(a.Bb|a.Cb));Y(a,a.Kb,this);a.aa.update();a.Hc.update()}}(a)};a.Ic={p:255,O:function(){},update:function(a){return function(c){void 0!==c&&(this.p=c);a.Wa.p&a.ea||Y(a,a.pd,this)}}(a)};a.xa={p:255,O:function(){},update:function(a){return function(c){void 0===c?c=a.xa.p:Ia(a,a.aa.p,c);if(0<=a.D&&a.D<a.M.length){var d=a.M[a.D];d.Fa.length&&a.xa.p&a.Jb&&!(c&a.Jb)&&(c&a.md?d.V--:d.V++,d.V>=d.mc&&(d.V=d.mc),0>d.V&&(d.V=0),d.ka= +20,a.aa.update(a.aa.p|a.$a),Ja(a))}this.p=c;a.Wa.p&a.ea&&Y(a,a.Ob,this)}}(a)};a.Wa={p:0,O:function(){},update:function(a){return function(c){void 0!==c&&(this.p=c&~(a.Bb|a.Cb));Y(a,a.Lb,this);a.xa.update();a.Ic.update()}}(a)};a.Rg={p:0,O:function(){},update:function(a){return function(c){void 0!==c&&((c&a.Db)==a.Db&&(a.ba.p=a.Tb|a.Rb|a.Qb),this.p=c);a.ba.update()}}(a)};a.ba={p:a.Tb|a.Rb|a.Qb,O:function(){},update:function(a){return function(c){void 0===c&&(c=a.ba.p);c&=~a.Sb;0<=a.D&&0<=a.M[a.D].ia&& +(c|=a.Sb);this.p=c;Y(a,a.qd,this)}}(a)};a.xb={p:0,O:function(a){return function(){Ka(a)}}(a),update:function(a){return function(c){void 0!==c&&(this.p=c);Y(a,a.Mb,this)}}(a)};a.Sg={p:0,O:function(){},update:function(){return function(){}}(a)}} +e.H=function(a,b,c,d){switch(c){case "listDisk":return this.o[c]=d,!0;case "loadDisk":return this.o[c]=d,d.onclick=function(a){return function(){if(a.o.listDisk){var b=a.o.listDisk.value,c=b;".json"!=b.substr(b.length-5)&&(c="http://"+window.location.host+"/api/v1/dump?disk="+b);a.t("loading "+aa(b)+"...");r(c,!0,null,a,a.Md)}}}(this),!0}return!1};e.P=function(a,b,c,d){this.a=a;this.eb=b;if(this.s=d)ma(d,b,c,this,this.N),Q(d,b,c,this,this.L);this.J()};e.S=function(a){a&&!this.A&&(this.A=!0)}; +e.Md=function(a,b,c){if(c)this.t("disk load error ("+c+")");else{c=[];this.t("mounting "+a+"...");try{if(c=eval("("+b+")"),c.length)if(c[0].length){var d=c[0];if(void 0===d[0].trackNum)this.t("data error: "+d[0]);else if(this.M[0]){for(b=0;b<d.length;b++){var f,g=d[b],l=g.sectors;if(void 0===(f=g.trackNum)||void 0===l)throw"track "+b+" missing data";f!=b&&s("track "+f+" out of order (expected "+b+")");c=[];var h,m,k;if(f){La(c,g,"trackSig");Ma(c,g);Z(c,g,"trackType");for(var n=0;n<l.length;n++){h= +l[n];m=h.sectorData;Z(c,h,"sectorSig");Z(c,h,"sectorNum");Z(c,h,"sectorPages");for(k=0;k<m.length;k++)c.push(m[k]);La(c,h,"sectorEndSig")}}else for(h=l[0],m=h.sectorData,Z(c,g,"trackLoad",2),Z(c,h,"sectorPages"),k=0;k<m.length;k++)c.push(m[k]);d[f].Jc=c}this.M[0].Fa=d;this.t("mount of "+a+" complete")}else this.t("no available drives")}else this.t("no tracks: "+a);else this.t("no data: "+a)}catch(p){this.t("disk data error: "+(p.message||p))}}}; +function Ma(a,b){var c=b.trackNum;if(void 0===c)throw"missing bcd value: trackNum";a.push(Math.floor(c/10)<<4|c%10)}function Z(a,b,c,d){b=b[c];if(void 0===b)throw"missing binary value: "+c;2==d&&a.push(b>>8&255);a.push(b&255)}function La(a,b,c){b=b[c];if(void 0===b)throw"missing signature: "+c;for(c=0;c<b.length;c++)a.push(b.charCodeAt(c))} +function Na(a,b,c){b&=63;16>b?b&=3:32>b&&(b&=17);switch(b){case a.Nb:a=a.Va.p&a.ea?a.aa:a.Hc;break;case a.Kb:a=a.Va;break;case a.Ob:a=a.Wa.p&a.ea?a.xa:a.Ic;break;case a.Lb:a=a.Wa;break;case a.nd:a=c?a.Rg:a.ba;break;case a.Mb:a=a.xb;break;default:a=a.Sg}return a}e.N=function(a,b){void 0!==b&&Na(this,a-this.eb,!1).O()};e.L=function(a,b){if(void 0!==b){var c=this.s.N(a);Na(this,a-this.eb,!0).update(c)}}; +function Ia(a,b,c){var d=-1;void 0!==b&&void 0!==c&&(d=0,c&a.ld||(d|=2),a.aa.p&a.Gb||(d|=1));a.D!=d&&(a.D=d,a.ba.update())}function Ja(a){0<=a.D&&(a.M[a.D].ia=-1,a.xb.update(255),a.ba.update())}function Ka(a){var b=null;if(0<=a.D){var b=a.M[a.D],c=b.Fa[b.V];void 0!==c&&(0<=b.ia&&b.ia<c.Jc.length?(b.ka=100,b=c.Jc[b.ia++],a.xb.update(b),a.ba.update()):(b.ka=10,Ja(a)))}}function Y(a,b,c){a.s.L(b+a.eb,c.p)} +w(function(){for(var a=G(window.document,"c1pjs","disk"),b=0;b<a.length;b++){var c=a[b],d=E(c),d=new Ga(d);F(d,c)}});function $(a,b){y.call(this,"C1PComputer",a);this.I=b}C($);$.prototype.reset=function(a){var b=null,c;for(c in this.I)for(var d=0;d<this.I[c].length;d++){var f=this.I[c][d];f&&f.reset&&(f.reset(),"cpu"==c&&(b=f))}b&&(b.update(),a&&N(b))};$.prototype.start=function(){for(var a in this.I)if("cpu"!=a)for(var b=0;b<this.I[a].length;b++){var c=this.I[a][b];c&&c.start&&c.start()}}; +$.prototype.stop=function(a,b){for(var c in this.I)if("cpu"!=c)for(var d=0;d<this.I[c].length;d++){var f=this.I[c][d];f&&f.stop&&f.stop(a,b)}};$.prototype.H=function(a,b,c,d){switch(c){case "reset":return this.o[c]=d,d.onclick=function(a){return function(){a.reset()}}(this),!0}return!1};function K(a,b){return a.I[b]?a.I[b][0]:null} +function Oa(a){var b=null,c;for(c in a.I)for(var d=0;d<a.I[c].length;d++){var f=a.I[c][d];if(f){if(!H(f)){H(f,function(a){return function(){Oa(a)}}(a));return}"cpu"==c?b=f:f.S&&f.S(!0,a)}}a.J();a.t("C1Pjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>");b&&b.S(!0,a)} +w(function(){for(var a=G(window.document,"c1pjs","computer"),b=0;b<a.length;b++){var c=a[b],d=E(c),f,g={},l=D("panel",d.id);if(l&&(g.panel=[l],l.jb)){var h;f=d.id;h=void 0;var m=[];f&&(f=0<(h=f.indexOf("."))?f.substr(0,h+1):"");for(h=0;h<z.length;h++){var k=z[h];f&&k.id.indexOf(f)||m.push(k)}h=m;for(m=0;m<h.length;m++)f=h[m],f!=l&&(f.Ta=l.Ta,f.t=l.t,f.jb=l.jb)}for(var n,m=h=l=0;m<d.modules.length;m++){k=d.modules[m];if(!m){if("cpu"!=k.type)break;l=k.start;h=k.end;n=Array(h+1-l);for(f=l;f<n.length;f++)n[f]= +0}if(f=D(k.refID,d.id)){var p=k.type;void 0===g[p]&&(g[p]=[]);g[p].push(f);f.P&&void 0!==k.start&&f.P(n,k.start,k.end,g.cpu[0])}else{s('no component for <module refid="'+k.refID+'">');return}}if(void 0===n){s('<module type="cpu"> definition must appear first in the <computer> specification');break}if(f=D("debugger",d.id))g["debugger"]=[f],f.P&&f.P(n,l,h,g.cpu[0]);d=new $(d,g);F(d,c);Oa(d)}});function Pa(a,b,c,d){var f=r(a);if(f[0])throw Error(f[1]);return Qa(f[1],a,b,c,d)} +function Qa(a,b,c,d,f){var g=null;if(a){if(f)for(var l=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;g=l.exec(a);){var h=g[2],m=r(h),k=m[1];if(m[0]||!k)throw c="unable to resolve XML reference: "+g[0]+" ("+m[0]+")",Error(c);if(m=g[3]){var n=k.match(new RegExp("<"+g[1]+"[^>]*>"));if(n){for(var h=n[0],p,ka=/( [a-z]+=)(['"])(.*?)\2/g;p=ka.exec(m);)h=0>h.indexOf(p[1])?h.replace(">",p[0]+">"):h.replace(new RegExp(p[1]+"(['\"])(.*?)\\1"),p[0]);n[0]!=h&&(k=k.replace(n[0],h))}else throw c="missing <"+g[1]+"> in "+h, +Error(c);}k=k.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(g[0],k);l.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*\]>\s*/g,"")),g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+ (255<a.length?a.substr(0,255)+"...":a));}return[a,g]} -window.embedC1P=function(a,b,c){var d=c,f=c="",g=null;try{if(g=window.document.getElementById(a)){d||(d="/versions/c1pjs/1.15.4/components.xsl");var h="<"==b.substr(0,1)?Ta(b,null,a,void 0,!1):Sa(b,a,void 0,!0);c=h[0];var l=h[1];if(l){var h=Sa(d),m=h[1];if(m)if(window.ActiveXObject||"ActiveXObject"in window){var k=l.transformNode(m);k?g.outerHTML=k:f="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var n=new XSLTProcessor;n.importStylesheet(m); -var q=n.transformToFragment(l,window.document);q?g.parentNode.replaceChild(q,g):f="transformToFragment failed"}else f="unable to transform XML: unsupported browser";else f="failed to load XSL file: "+d}else f="failed to load XML file: "+b}else f="failed to find machine element: "+a}catch(ma){f=ma.message}f&&g&&(a=H(g,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+ca(f)));return f||c};window.enableEvents=function(a){da=a};window.sendEvent=function(a){u[a]&&x(u[a])};})();//@ sourceMappingURL=/tmp/c1pjs/1.15.4/c1p.map +window.embedC1P=function(a,b,c){var d=c,f=c="",g=null;try{if(g=window.document.getElementById(a)){d||(d="/versions/c1pjs/1.15.4/components.xsl");var l="<"==b.substr(0,1)?Qa(b,null,a,void 0,!1):Pa(b,a,void 0,!0);c=l[0];var h=l[1];if(h){var l=Pa(d),m=l[1];if(m)if(window.ActiveXObject||"ActiveXObject"in window){var k=h.transformNode(m);k?g.outerHTML=k:f="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var n=new XSLTProcessor;n.importStylesheet(m); +var p=n.transformToFragment(h,window.document);p?g.parentNode.replaceChild(p,g):f="transformToFragment failed"}else f="unable to transform XML: unsupported browser";else f="failed to load XSL file: "+d}else f="failed to load XML file: "+b}else f="failed to find machine element: "+a}catch(ka){f=ka.message}f&&g&&(a=G(g,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+ca(f)));return f||c};window.enableEvents=function(a){da=a};window.sendEvent=function(a){u[a]&&x(u[a])};})();//@ sourceMappingURL=/tmp/c1pjs/1.15.4/c1p.map diff --git a/versions/pcjs/1.15.4/pc-dbg.js b/versions/pcjs/1.15.4/pc-dbg.js index 71190280f..e7880d6fa 100644 --- a/versions/pcjs/1.15.4/pc-dbg.js +++ b/versions/pcjs/1.15.4/pc-dbg.js @@ -1,130 +1,130 @@ (function(){var k;function aa(a,b){return b&&10!=b?16==b?null!==a.match(/^[0-9a-f]+$/i):!0:null!==a.match(/^[0-9]+$/)}function ba(a){var b,c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var d=a.charAt(a.length-1).toLowerCase();"h"==d?(b=16,d=null):"."==d&&(b=10,d=null);null===d&&(a=a.substr(0,a.length-1))}var e;aa(a,b)&&!isNaN(e=parseInt(a,b))&&(c=e)}return c} -function l(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function p(a){return l(a,2)}function q(a){return l(a,4)}function ca(a,b){return void 0!==b?q(b)+":"+q(a):l(a)}function da(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c} -function ea(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}var fa={"&":"&","<":"<",">":">",'"':""","'":"'"};function ga(a){return a.replace(/[&<>"']/g,function(a){return fa[a]})}function ha(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function ia(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a<b?-1:0});d<e;){var g=d+e>>1,h;h=c(b,a[g]);0<h?d=g+1:(e=g,f=!h)}return f?d:~d} -function ja(a,b,c){c=ia(a,b,c);0>c&&a.splice(-(c+1),0,b)}function ma(){return Date.now()||+new Date}function na(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var oa=[31,28,31,30,31,30,31,31,30,31,30,31]; -function pa(a,b,c,d,e,f){b=!!b;var g=0,h=null,m=da(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(n.onreadystatechange=void 0,h=n.responseText,200!=n.status&&(g=n.status||-1),d&&e&&e.call(d,m,h,g,f))});if(c){var r="",u;for(u in c)c.hasOwnProperty(u)&&(r&&(r+="&"),r+=u+"="+encodeURIComponent(c[u]));r=r.replace(/%20/g,"+");n.open("POST",a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded"); -n.send(r)}else n.open("GET",a,b),n.send();a=[];b||(h=n.responseText,200!=n.status&&(g=n.status||-1),d&&e&&e.call(d,m,h,g,f),a=[g,h]);return a}function qa(){return"http://"+(window?window.location.host:"www.pcjs.org")}function ra(a){window?window.alert(a):console.log(a)}function sa(a){var b=!1;window&&(b=window.confirm(a));return b}function ta(a){window&&window.localStorage.setItem("user",a)} -function ua(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function va(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()} -function wa(a,b){function c(){b(100===d)&&(e=setTimeout(c,d),d=100)}var d=0,e=null,f=!1;a.onmousedown=function(){f||e||(d=500,c())};a.ontouchstart=function(){e||(d=500,c())};a.onmouseup=a.onmouseout=function(){e&&(clearTimeout(e),e=null)};a.ontouchend=a.ontouchcancel=function(){e&&(clearTimeout(e),e=null);f=!0}}var xa={init:[],show:[],exit:[]},ya=!0;function za(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Aa(a){xa.init.push(a)} -function Ba(a){if(ya)for(var b=0;b<a.length;b++)a[b]()}za("onload",function(){Ba(xa.init)});za("onpageshow",function(){Ba(xa.show)});za(ua("Opera")||ua("iOS")?"onunload":"onbeforeunload",function(){Ba(xa.exit)}); -function s(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.gk=b.comment;this.Ro=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.hh=this.id.substr(0,b),this.gh=this.id.substr(b+1)):this.gh=this.id;this[a]=c;this.qi=null;this.gd=this.Lb=this.Ic=this.gi=this.ah=!1;this.sa={};this.Z=null;this.hh&&this.hh.match(/\d+/);Ca[Ca.length]=this}var Da,Ea=void 0,Fa={}; -if(window){Ea||(Ea=window.location.search.substr(1));for(var Ga,Ia=/\+/g,Ja=/([^&=]+)=?([^&]*)/g;Ga=Ja.exec(Ea);)Fa[decodeURIComponent(Ga[1].replace(Ia," "))]=decodeURIComponent(Ga[2].replace(Ia," "))}function Ka(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function w(a,b){b.prototype=Ka(a.prototype)}var Ca=[];function La(){}function Ma(a,b){b||ra(a)} -function Na(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):void 0);for(b=0;b<Ca.length;b++){var d=Ca[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Oa(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Ca.length;c++)if(Ca[c].id===a)return Ca[c]}return null} -function Pa(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):void 0);for(d=0;d<Ca.length;d++)if(c)c==Ca[d]&&(c=null);else if(!(a!=Ca[d].type||b&&Ca[d].id.indexOf(b)))return Ca[d]}return null}function x(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){ra(c.message+" ("+a+")")}return b} -function Qa(a,b){var c,d;d=y(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++){var e,f;f=d[c].childNodes;for(e=0;e<f.length;e++){var g=f[e];if(g.nodeType===window.document.ELEMENT_NODE){var h=g.getAttribute("class");if(h){var m,n;n=h.split(" ");for(m=0;m<n.length;m++)switch(h=n[m],h){case "pcjs-input":case "pcjs-output":(n=x(g))&&n.binding&&a.tb(h,n.type,n.binding,g),n=[]}}}}}} -function y(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c} -s.prototype={toString:function(){return this.name?this.name:this.id||this.type},tb:function(a,b,c,d){switch(c){case "clear":return this.sa[c]||(this.sa[c]=d,d.onclick=function(a){return function(){a.sa.print&&(a.sa.print.value="")}}(this)),!0;case "print":return this.sa[c]||(this.sa[c]=d,d.value="",La=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),Ma=function(a,b,c){La(a, -"notice",c)},Da=d),!0}return!1},log:function(){},status:function(a){z(this,this.gh+": "+a)},error:function(a){ra(a)},Oa:function(a){!this.gd&&(this.ah=!1!==a)&&(this.name&&this.log("ready"),a=this.qi,this.qi=null,a&&a())},$b:function(){return this.Lb=!0},Wb:function(a,b){b&&(this.Lb=!1);return!0}};function Ra(a,b){if(a.gi)return a.Ic&&(a.Ic=!1),a.gi=!1;if(a.gd)return z(a,a.toString()+" error"),!1;a.Ic=b;return a.Ic} -function Sa(a,b){a.Ic&&(b?a.gi=!0:void 0===b&&z(a,a.toString()+" busy"));return a.Ic}function Ta(a,b){b&&(a.ah?b():a.qi=b);return a.ah}function Ua(a,b){a.gd=!0;B(a,"Fatal error: "+b)}function B(a,b,c){Ma(b,c,a.id)}function z(a,b){La(b,void 0,a.id)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);var Va="undefined"!==typeof window.cm;function Wa(a){s.call(this,"Panel",a,Wa)}w(s,Wa); -Wa.prototype.tb=function(a,b,c,d){return this.Ca&&this.Ca.tb(a,b,c,d)||this.S&&this.S.tb(a,b,c,d)||this.nb&&this.nb.tb(a,b,c,d)||this.Z&&this.Z.tb(a,b,c,d)?!0:s.prototype.tb.call(this,a,b,c,d)};Wa.prototype.nc=function(a,b,c,d){this.Ca=a;this.S=c;this.Z=d;this.nb=C(a,"Keyboard")};Wa.prototype.$b=function(a,b){b||Xa();return!0};Wa.prototype.Wb=function(){return!0}; -function Xa(){for(var a=!1,b=y(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=x(d),f=Oa(e.id);f||(a=!0,f=new Wa(e));Qa(f,d);a&&f.Oa()}}Aa(Xa);function Ya(a,b,c){s.call(this,"Bus",a,Ya);this.S=b;this.Z=c;this.Wf=a.buswidth||20;this.re=this.Hb=(1<<this.Wf)-1;this.mb=20>=this.Wf?12:14;this.fc=1<<this.mb;this.bk=this.fc>>2;this.bb=this.fc-1;this.Pg=(this.re+this.fc)/this.fc|0;this.ve=this.Pg-1;this.qd=[];this.rd=[];this.Sf=this.Tf=!1;this.wi();this.Oa()}w(s,Ya); -Ya.prototype.wi=function(){this.za=Array(this.Pg);for(var a=0;a<this.Pg;a++){var b=a*this.fc;Za(this.za[a]=new E(b),this.S,this.Z,b,this.fc)}this.S.wi(this.za,this.re,this.mb,this.bb,this.ve);this.S.Hb=this.Hb};Ya.prototype.reset=function(){$a(this,!0)};function ab(a,b,c,d,e){if(!(b&a.bb||!c||c&a.bb)){for(var f=b>>a.mb;0<c&&f<a.za.length;){var g=a.za[f];if(void 0!==g&&g.size)return bb(a,1,b,c);b=f*a.fc;g=a.za[f++]=new E(b,a.fc,d,e);Za(g,a.S,a.Z,b,a.fc);c-=a.fc}return!0}return bb(a,2,b,c)} -function $a(a,b){if(void 0!==b&&20<a.Wf){var c=a.Hb&-1048577|(b?1048576:0);c!=a.Hb&&(a.Hb=c,a.S&&(a.S.Hb=c))}}Ya.prototype.Dh=function(a,b,c){if(!(a&this.bb||!b||b&this.bb)){for(var d=a>>this.mb;0<b;){var e=this.za[d];if(!e.ha)return bb(this,5,a,b);e.le(c);b-=this.fc;d++}return!0}return bb(this,3,a,b)};function cb(a,b,c){if(!(b&a.bb||!c||c&a.bb)){for(var d=b>>a.mb;0<c;)b=d*a.fc,Za(a.za[d++]=new E(b),a.S,a.Z,b,a.fc),c-=a.fc;return!0}return bb(a,4,b,c)} -function db(a,b){return a.za[(b&a.Hb)>>a.mb].lg(b&a.bb)}function eb(a,b){var c=b&a.bb,d=(b&a.Hb)>>a.mb;return c!=a.bb?a.za[d].yj(c):a.za[d++].lg(c)|a.za[d&a.ve].lg(0)<<8}function gb(a,b,c){a.za[(b&a.Hb)>>a.mb].ug(b&a.bb,c&255)}function hb(a,b,c){var d=b&a.bb;b=(b&a.Hb)>>a.mb;d!=a.bb?a.za[b].Hj(d,c&65535):(a.za[b++].ug(d,c&255),a.za[b&a.ve].ug(0,c>>8&255))} -function ib(a){for(var b=0,c=[],d=0;d<a.Pg;d++){var e=a.za[d];if(e.Za||e.lk){c[b++]=d;var f=c,g=b++;a:if(e=e.save()){for(var h=0,m=0,n=[];h<e.length;){for(var r=e[h],u=h+1;u<e.length&&e[u]===r;)u++;n[m++]=u-h;n[m++]=r;h=u}if(n.length<e.length){e=n;break a}}f[g]=e}}c[b]=a.re==a.Hb;return c} -function jb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=g;n++)void 0!==f.qd[n]?ra("Input port "+q(n)+" registered by "+f.qd[n][0].id+", ignoring "+h.id):f.qd[n]=[h,m,!1,!1]}}function kb(a,b,c){var d=255,e=a.qd[b];void 0!==e?(e[1]&&(d=e[1].call(e[0],b,c)),a.Z&&a.Sf!=e[2]&&lb(a.Z,b,d)):a.Z&&(a.Z.ba(a,b,null,c),a.Sf&&lb(a.Z,b,d));return d} -function mb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=g;n++)void 0!==f.rd[n]?ra("Output port "+q(n)+" registered by "+f.rd[n][0].id+", ignoring "+h.id):f.rd[n]=[h,m,!1,!1]}}function nb(a,b,c,d){var e=a.rd[b];void 0!==e?(e[1]&&e[1].call(e[0],b,c,d),a.Z&&a.Tf!=e[2]&&ob(a.Z,b,c)):a.Z&&(a.Z.ba(a,b,c,d),a.Tf&&ob(a.Z,b,c))}function bb(a,b,c,d){a.error("Memory block error ("+b+","+l(c)+","+l(d)+")");return!1} -function E(a,b,c,d){this.ek=b;this.pa=null;this.offset=0;this.$g=c;this.ha=null;this.Za=this.lk=!1;if(b)if(d)this.ha=d,a=[d.cd,a-d.ab],this.pa=a[0],this.offset=a[1],this.le(d.Df);else if(Va)this.buffer=new window.cm(b),this.Rj=new window.sp(this.buffer,0,b),this.kk=new window.lp(this.buffer,0,b),this.pa=new window.np(this.buffer,0,b>>2),this.le(pb);else{this.pa=Array(b>>2);for(d=0;d<this.pa.length;d++)this.pa[d]=0;this.le(qb)}else this.le()} -E.prototype={xh:function(){return 0},tf:function(){},Uo:function(a){return this.Rj[a]},Xo:function(a){return this.kk.getUint16(a,!0)},fp:function(a,b){this.Rj[a]=b;this.Za=!0},ip:function(a,b){this.kk.setUint16(a,b,!0);this.Za=!0},To:function(a){return this.pa[a>>2]>>((a&3)<<3)&255},Wo:function(a){var b=a>>2;a=(a&3)<<3;var c=this.pa[b]>>a;return 24>a?c&65535:c&255|(this.pa[b+1]&255)<<8},ep:function(a,b){var c=a>>2,d=(a&3)<<3;this.pa[c]=this.pa[c]&~(255<<d)|b<<d;this.Za=!0},hp:function(a,b){var c= -a>>2,d=(a&3)<<3;24>d?this.pa[c]=this.pa[c]&~(65535<<d)|b<<d:(this.pa[c]=this.pa[c]&16777215|b<<24,c++,this.pa[c]=this.pa[c]&4294967040|b>>8);this.Za=!0},Vo:function(a){rb(this.Z,this.Te+a);return this.lg(a)},Yo:function(a){rb(this.Z,this.Te+a)||rb(this.Z,this.Te+a+1);return this.yj(a)},gp:function(a,b){sb(this.Z,this.Te+a);this.ug(a,b)},jp:function(a,b){sb(this.Z,this.Te+a)||sb(this.Z,this.Te+a+1);this.Hj(a,b)},save:function(){var a,b;if(this.ha)a=null;else if(Va)for(a=Array(this.ek>>2),b=0;b<a.length;b++)a[b]= -this.pa[b];else a=this.pa;return a},restore:function(a){if(this.ha)return null===a;if(this.ek==a.length<<2){var b;if(Va)for(b=0;b<this.pa.length;b++)this.pa[b]=a[b];else this.pa=a;return this.Za=!0}return!1},le:function(a,b){a||(a=[]);void 0===b&&(b=!0);ub(this,a,b);vb(this,a,b)},Td:function(a,b){b?0===this.dk++&&vb(this,wb):0===this.ck++&&ub(this,wb)}};function xb(a,b){b?0===--a.dk&&(a.Ac=a.$g?a.tf:a.ug,a.$l=a.$g?a.tf:a.Hj):0===--a.ck&&(a.qc=a.lg,a.Nl=a.yj)} -function Za(a,b,c,d,e){a.S=b;a.Z=c;a.Te=d;a.ck=a.dk=0;a.Z&&yb(a.Z,d,e)}function vb(a,b,c){a.Ac=b[2]&&!a.$g?b[2]:a.tf;a.$l=b[3]&&!a.$g?b[3]:a.tf;c&&(a.ug=b[2]?b[2]:a.tf,a.Hj=b[3]?b[3]:a.tf)}function ub(a,b,c){a.qc=b[0]?b[0]:a.xh;a.Nl=b[1]?b[1]:a.xh;c&&(a.lg=b[0]?b[0]:a.xh,a.yj=b[1]?b[1]:a.xh)}var qb=[E.prototype.To,E.prototype.Wo,E.prototype.ep,E.prototype.hp],wb=[E.prototype.Vo,E.prototype.Yo,E.prototype.gp,E.prototype.jp];if(Va)var pb=[E.prototype.Uo,E.prototype.Xo,E.prototype.fp,E.prototype.ip]; -function zb(a,b){s.call(this,"CPU",a,zb);var c=a.multiplier||1;this.Fd=a.cycles||b;this.Ed=c;this.kh=Math.round(this.Fd/1E4)/100;this.ff=this.kh*this.Ed;this.Mb=this.Lb=!1;this.fi=a.autoStart;c=Fa.autostart;void 0!==c&&(this.fi="true"==c?!0:"false"==c?!1:null);this.Ze=!1;this.Xf=this.jf=0;this.Zf=a.csStart;this.hf=a.csInterval;this.kf=a.csStop;var d=this;this.Vn=function(){d.Ke()};this.Oa()}w(s,zb);k=zb.prototype; -k.nc=function(a,b,c,d){this.ma=b;this.Z=d;this.Ca=a;var e=C(a,"Video");e&&(this.ai=function(){Ab(e)},this.Kd=function(){e.Kd()});this.ja=C(a,"ChipSet");this.Oa()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.$b=function(a,b){if(!b){if(a&&this.restore){Bb(this);if(!this.restore(a))return!1;Cb(this)}else this.reset();this.Z?this.Z.yn():Da&&ra("No debugger detected")}this.Lb=!0;!Db(this)&&this.Z&&Eb(this.Z);Fb(this);return!0}; -k.Wb=function(a){this.Lb=!1;return a&&this.save?this.save():!0};function Db(a){return!0===a.fi||null===a.fi&&!a.Z&&void 0===a.sa.run?(a.Ke(),!0):!1}k.Kd=function(){};k.uk=function(){return 0};function Cb(a){void 0===a.Zf&&(a.Zf=0);void 0===a.hf&&(a.hf=-1);void 0===a.kf&&(a.kf=-1);a.Ze=0<=a.Zf&&0<a.hf;a.Ze&&(a.Xf=0,a.jf=a.Zf-a.He)} -function Gb(a,b){if(a.Ze){var c=!1;a.Xf=a.Xf+a.uk()|0;a.jf-=b;0>=a.jf&&(a.jf+=a.hf,c=!0);0<=a.kf&&a.kf<=F(a)&&(a.hf=a.kf=-1,Cb(a),a.xb(),c=!0);c&&z(a,F(a)+" cycles: checksum="+l(a.Xf))}}function G(a,b,c,d){void 0!==a.sa[b]&&(void 0===d&&(d=4),void 0===c&&(Ua(a,"Register "+b+" is invalid"),a.xb()),c=l(c,d),a.sa[b].innerHTML!=c&&(a.sa[b].innerHTML=c))}k.Ug=function(){};k.ai=function(){}; -k.tb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.sa[c]=d;d.onclick=function(){e.Mb?e.xb(!0):e.Ke(!0)};a=!0;break;case "reset":this.sa[c]=d;d.onclick=function(){e.Ca&&Hb(e.Ca)};a=!0;break;case "speed":this.sa[c]=d;a=!0;break;case "setSpeed":this.sa[c]=d,d.onclick=function(){Jb(e,e.Ed<<1,!0)},d.innerHTML=this.ff.toFixed(2)+"Mhz",a=!0}return a};function Kb(a,b,c){a.He+=b;c&&(a.Wc=a.A=0)} -function Lb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Ed&&a.jd&&(d=a.jd/a.kh);a.Bk=Math.round(1E3/30);a.Nn=Math.floor(a.Fd/c*d);a.Di=Math.floor(a.Fd/30*d);a.Fk=Math.floor(a.Fd/60*d);a.Ek=Math.floor(a.Fd/2*d);b||(a.lf=a.Di,a.ag=a.Fk,a.$f=a.Ek);a.rj=0}function F(a,b){var c=a.He+a.ge+a.Wc-a.A;b&&1<a.Ed&&a.jd>a.kh&&(c=Math.round(c/a.Ed));return c}function Bb(a){a.jd=0;a.nh=1;a.He=a.ge=a.Wc=a.A=0;Cb(a);Jb(a,1)} -function Jb(a,b,c){void 0!==b&&(0.8>a.jd/a.ff&&(b=1),a.Ed=b,a.ff=a.kh*a.Ed,b=a.ff.toFixed(2)+"Mhz",a.sa.setSpeed&&(a.sa.setSpeed.innerHTML=b),z(a,"target speed: "+b),c&&a.Kd());Kb(a,a.ge);a.ge=0;a.gf=ma();a.Ee=0;Lb(a)} -k.Ke=function(a){if(Ra(this,!0)){this.Mb||(Jb(this),this.Ca&&this.Ca.start(this.gf,F(this)),this.Mb=!0,this.ja&&Mb(this.ja),this.sa.run&&(this.sa.run.innerHTML="Halt"),a&&this.Kd());this.rj>=this.Fd&&Lb(this,!0);this.bg=0;this.lh=ma();this.Ee&&(a=this.lh-this.Ee,a>this.Bk&&(this.gf+=a,this.gf>this.lh&&(this.gf=this.lh)));try{do{this.sf(this.Ze?1:Math.round(this.Nn/this.nh));var b=this.Wc-this.A;this.ge+=b;this.bg+=b;Kb(this,0,!0);Gb(this,b);this.ag-=b;0>=this.ag&&(this.ag+=this.Fk,this.ai());this.$f-= -b;0>=this.$f&&(this.$f+=this.Ek,this.Ug());this.lf-=b;if(0>=this.lf){this.lf+=this.Di;break}}while(this.Mb)}catch(c){this.xb();Fb(this);this.Ca&&this.Ca.stop(ma(),F(this));Ra(this,!1);Ua(this,c.message);return}b=setTimeout;a=this.Vn;this.Ee=ma();var d=this.Bk;this.bg&&(d=Math.round(d*this.bg/this.Di));var d=d-(this.Ee-this.lh),e=this.Ee-this.gf;e&&(this.jd=Math.round(this.ge/(10*e))/100,864E5<=e&&(this.He=0,this.ja&&Nb(this.ja,!0),Jb(this)));if(0>d||this.jd<this.ff)d=0;this.rj+=this.bg;this.Ee+=d; -b(a,d)}else Fb(this),this.Ca&&this.Ca.stop(ma(),F(this))};k.xb=function(a){Sa(this,!0);this.Wc-=this.A;this.A=0;Kb(this,this.ge);this.ge=0;this.Mb&&(this.Mb=!1,this.ja&&Mb(this.ja),this.sa.run&&(this.sa.run.innerHTML="Run"));this.ji=a};k.sf=function(){return 0};function Fb(a){a.ai();a.Ug()} -var Ob=[1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1, -0,0,1,1,0,1,0,0,1];function Pb(a,b,c){this.S=a;this.Ja=this.na=0;this.Lc=65535;this.Kc=this.Ya=0;this.qg=b;Qb(this,c)}function Rb(a){this.na=a;this.Lc=65535;return this.Ja=a<<4} -function Sb(a){var b,c;a&4?(b=this.S.Jd.Ja,c=this.S.Jd.Lc):(b=this.S.Oc,c=this.S.Ue);b+=a&65528;if(b+7<=c){this.Sc=Tb;this.Yb=Ub;this.S.A-=15;c=this.S.Ga(b+0);var d=this.S.Ga(b+4),e=this.S.Ga(b+2)|(d&255)<<16;this.S.Ga(b+6);b=d&7936;if(b&4096){2048==(b&2560)&&(this.Yb=Vb);if(b&2048||!(b&512))this.Yb=Wb;this.na=a;this.Lc=c;this.Ya=d;this.Kc=(d&24576)>>13;return this.Ja=e}if(b&&768>=b)return this.na=a,this.Lc=c,this.Ya=d,this.Kc=(d&24576)>>13,this.Ja=e}return-1}function Xb(a){return this.Ja+a} -function Yb(a){return this.Ja+a}function Tb(a,b,c){return a+b<=this.Lc?this.Ja+a:Vb.call(this,0,0,c)}function Vb(a,b,c){c||Zb.call(this.S,13,0);return-1}function Ub(a,b,c){return a+b<=this.Lc?this.Ja+a:Wb.call(this,0,0,c)}function Wb(a,b,c){c||Zb.call(this.S,13,0);return-1}Pb.prototype.save=function(){return[this.na,this.Ja,this.Lc,this.Ya,this.Kc,this.qg]};Pb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.na=a[0],this.Ja=a[1],this.Lc=a[2],this.Ya=a[3],this.Kc=a[4],this.qg=a[5])}; -function Qb(a,b){void 0===b&&(b=!!(a.S.Yc&1));b?(a.load=Sb,a.Sc=Tb,a.Yb=Ub):(a.load=Rb,a.Sc=Xb,a.Yb=Yb)} -function $b(a){this.Fa=a.model||8088;var b=0;switch(this.Fa){default:case 8088:b=4772727;break;case 80286:b=6E6}zb.call(this,a,b);this.Oj=61442;this.Ag=4;this.mf=255;this.sj=4;this.aa=5;this.ta=6;this.ea=7;this.fa=8;this.P=9;this.V=11;this.W=12;this.Fe=4;this.Hk=60;this.Ik=83;this.Tb=3;this.ob=9;this.gc=16;this.rh=1;this.Mk=19;this.Ok=28;this.Qk=16;this.Pk=21;this.Nk=37;this.Kk=2;this.Li=9;this.Lk=5;this.Jk=33;this.Ni=10;this.Mi=8;this.fg=3;this.eg=15;this.dl=51;this.el=1;this.fl=2;this.gl=4;this.cl= -32;this.il=this.Oi=15;this.Ub=16;this.Vb=4;this.kl=11;this.jl=18;this.hl=24;this.Ab=4;this.ll=2;this.Pi=16;this.ml=17;this.Ui=18;this.nl=19;this.Ti=5;this.Vi=6;this.sl=2;this.rl=8;this.pl=9;this.Xi=this.Wi=this.ol=this.ql=10;this.Sk=80;this.Uk=144;this.Rk=86;this.Tk=154;this.Wk=101;this.Yk=165;this.Vk=107;this.Xk=171;this.ul=70;this.wl=113;this.tl=76;this.vl=124;this.$k=80;this.bl=128;this.Zk=86;this.al=134;this.hg=3;this.gg=16;this.bj=10;this.aj=8;this.xl=51;this.hc=8;this.yl=17;this.zl=36;this.oc= -11;this.Al=16;this.ig=10;this.Nb=2;this.Ii=18;this.Ji=9-this.Nb;this.Ki=17-this.Nb;this.Qi=12;this.Ri=9-this.Nb;this.Si=13-this.Nb;this.Yi=18;this.Zi=9-this.Nb;this.$i=17-this.Nb;this.cj=15;this.dj=9-this.Nb;this.ej=15-this.Nb;this.ij=11;this.jj=9-this.Nb;this.kj=10-this.Nb;this.Bl=8;this.El=12;this.Cl=18;this.Dl=17;this.Fl=15;this.gj=8;this.fj=20;this.hj=2;this.nj=3;this.jg=9;this.mj=5;this.lj=11;this.pj=4;this.oj=17;this.Gl=11;this.Ma=ac.slice();80186<=this.Fa&&(this.mf=31,this.Ma[15]=bc,this.Ma[96]= -cc,this.Ma[97]=dc,this.Ma[98]=ec,this.Ma[99]=bc,this.Ma[100]=bc,this.Ma[101]=bc,this.Ma[102]=bc,this.Ma[103]=bc,this.Ma[104]=fc,this.Ma[105]=gc,this.Ma[106]=hc,this.Ma[107]=ic,this.Ma[108]=jc,this.Ma[109]=kc,this.Ma[110]=lc,this.Ma[111]=mc,this.Ma[192]=nc,this.Ma[193]=oc,this.Ma[200]=pc,this.Ma[200]=qc,this.Ma[241]=rc,sc[7]=tc,uc[7]=tc,80286<=this.Fa&&(this.Oj=2,this.Ag=0,this.Ma[15]=vc,this.Ma[99]=wc,this.Ma[84]=xc,this.P=this.fa=this.ea=this.ta=this.aa=this.sj=0,this.W=this.V=1,this.Fe=3,this.Hk= -14,this.Ik=16,this.Tb=2,this.gc=this.ob=7,this.rh=0,this.Mk=7,this.Ok=13,this.Qk=7,this.Pk=11,this.Nk=16,this.Kk=3,this.Li=6,this.Lk=2,this.Jk=13,this.Mi=this.Ni=5,this.fg=2,this.eg=7,this.dl=23,this.el=0,this.fl=1,this.gl=3,this.cl=17,this.Oi=7,this.il=11,this.Ub=7,this.Vb=3,this.kl=7,this.jl=11,this.hl=15,this.Ab=2,this.ll=3,this.Pi=7,this.nl=this.Ui=this.ml=8,this.Vi=this.Ti=4,this.sl=2,this.rl=3,this.pl=5,this.ql=2,this.ol=3,this.Wi=5,this.Xi=3,this.Sk=14,this.Uk=22,this.Rk=17,this.Tk=25,this.Wk= -17,this.Yk=25,this.Vk=20,this.Xk=28,this.ul=13,this.wl=21,this.tl=16,this.vl=24,this.$k=13,this.bl=21,this.Zk=16,this.al=24,this.hg=2,this.gg=7,this.aj=this.bj=5,this.xl=19,this.yl=this.hc=5,this.zl=17,this.oc=3,this.Al=5,this.ig=3,this.Nb=0,this.Ii=8,this.Ji=5,this.Ki=9,this.Ri=this.Qi=5,this.Si=4,this.Zi=this.Yi=5,this.$i=4,this.cj=7,this.dj=5,this.ej=8,this.ij=3,this.jj=4,this.kj=3,this.El=this.Bl=11,this.Dl=this.Cl=15,this.Fl=7,this.gj=5,this.fj=8,this.hj=0,this.nj=2,this.jg=6,this.mj=3,this.lj= -6,this.pj=3,this.Gl=this.oj=5));this.Cg=[];this.zf=[];this.Rg=0;this.za=[];this.re=this.Hb=this.mb=this.bb=this.ve=0;this.T=this.wm;this.U=this.xm;this.N=this.En;this.O=this.Fn;this.Q=this.cp;this.R=this.dp;yc(this)}w(zb,$b);k=$b.prototype;k.wi=function(a,b,c,d,e){this.za=a;this.re=this.Hb=b;this.mb=c;this.bb=d;this.ve=e};k.reset=function(){this.Mb&&this.xb();yc(this);Bb(this);this.gd=!1}; -function yc(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.Yc=65520;a.bd=0;a.qe=1023;a.Hc={tj:0,na:0,Ya:0,jh:-1};a.qa=new Pb(a,"CS");a.Ob=new Pb(a,"DS");a.Cb=new Pb(a,"SS");a.$a=new Pb(a,"ES");a.Xl=new Pb(a,"ZERO");zc(a,0,65535);80286<=a.Fa&&(a.Oc=a.Ue=0,a.Jd=new Pb(a,"LDT",!0),a.tg=new Pb(a,"TSS",!0),a.Pb=new Pb(a,"VER",!0),zc(a,65520,61440),a.qa.Ja=16711680);Ac(a,0);Bc(a);a.ib=0;a.Bb=a.ng=-1;a.Kg=0;a.ga=a.Ia=-1;a.C=a.Ob;a.M=a.Cb;a.$=a.va=0} -k.uk=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.ra+this.qa.na+this.Ob.na+this.Cb.na+this.$a.na+Cc(this)|0};function Dc(a,b,c,d){void 0!==d&&(void 0===a.Cg[b]&&(a.Cg[b]=[]),a.Cg[b].push([c,d]))}function Ec(a,b,c){void 0!==c&&(void 0===a.zf[b]&&(a.zf[b]=[]),a.zf[b].push(c),a.Rg++)}function Fc(a,b){var c=a.zf[b];if(void 0!==c){for(;0<c.length;)c.pop()(--a.Rg);delete a.zf[b]}} -function Bc(a,b){void 0===b&&(b=!!(a.Yc&1));Gc=b?Hc:Ic;Qb(a.qa,b);Qb(a.Ob,b);Qb(a.Cb,b);Qb(a.$a,b)} -k.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.X,this.H,this.F,this.D]);a.set(1,[this.ra,this.qa.save(),this.Ob.save(),this.Cb.save(),this.$a.save(),Cc(this),null!=this.Oc?[this.Yc,this.Oc,this.Ue,this.bd,this.qe,this.Jd.save(),this.tg.save()]:null]);a.set(2,[this.C.qg,this.M.qg,this.$,this.va,this.ib,this.ga,this.Ia]);a.set(3,[this.nh,this.He,this.Ed]);a.set(4,ib(this.ma));return a.data()}; -k.restore=function(a){var b;b=a[0];this.G=b[0];this.B=b[1];this.I=b[2];this.J=b[3];this.X=b[4];this.H=b[5];this.F=b[6];this.D=b[7];b=a[1];this.qa.restore(b[1]);this.Ob.restore(b[2]);this.Cb.restore(b[3]);this.$a.restore(b[4]);Ac(this,b[5]);var c=b[6];c&&c.length&&(this.Yc=c[0],this.Oc=c[1],this.Ue=c[2],this.bd=c[3],this.qe=c[4],this.Jd.restore(c[5]),this.tg.restore(c[6]),Bc(this));I(this,b[0]);b=a[2];this.C=Jc(this,b[0]);this.M=Jc(this,b[1]);this.$=b[2];this.va=b[3];this.ib=b[4];this.ga=b[5];this.Ia= -b[6];b=a[3];this.nh=b[0];this.He=b[1];Jb(this,b[2]);a:{b=this.ma;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.bk){for(var f=0,g=Array(b.bk),h=0;h<e.length-1;)for(var m=e[h++],n=e[h++];m--;)g[f++]=n;e=g}f=b.za[d];if(!f||!f.restore(e)){b.error("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&$a(b,a[c]);b=!0}return b}; -function Jc(a,b){switch(b){case "CS":return a.qa;case "DS":return a.Ob;case "SS":return a.Cb;case "ES":return a.$a;case "ZERO":return a.Xl;default:return[0,b,0,0,""]}}function Kc(a,b){var c;if(a.Yc&1){if(c=a.bd+(b<<3),c+7<=a.qe){a.Hc.tj=a.Ga(c);a.Hc.na=a.Ga(c+2);a.Hc.Ya=a.Ga(c+4);switch(a.Hc.Ya&7936){case 1536:a.Hc.jh=-17153;break;case 1792:a.Hc.jh=-16641;break;default:return!1}return!0}}else if(c=a.bd+(b<<2),c+7<=a.qe)return a.Hc.tj=a.Ga(c),a.Hc.na=a.Ga(c+2),a.Hc.jh=-769,!0;return!1} -function Lc(a,b){a.Ba=a.qa.load(b)+a.ra;a.$|=a.Ag}function Pc(a,b){a.Ob.load(b);a.$|=a.Ag}function Qc(a,b){a.Cb.load(b);a.$|=4}function Rc(a,b){a.$a.load(b);a.$|=a.Ag}function I(a,b){a.Ba=a.qa.Ja+(a.ra=b&65535)}function zc(a,b,c){a.Ba=a.qa.load(c)+(a.ra=b)}function J(a,b){a.Ba=a.qa.Ja+(a.ra=a.ra+b&65535)}function Sc(a){return a.Y&a.ca?1:0}function Tc(a){return Ob[a.ia&255]?4:0}function Uc(a){return(a.ia^a.la)&16?16:0}function Vc(a){return a.Y&a.ca-1?0:64}function Wc(a){return a.ia&a.ca>>1?128:0} -function Xc(a){return(a.ia^a.la^a.ia>>1)&a.ca>>1?2048:0}function Yc(a){a.Y&=~a.ca}function Zc(a){a.la=a.ia&16|a.la&-17}function $c(a){a.Y|=a.ca-1}function ad(a){Wc(a)&&(a.ia^=a.ca>>1|a.ca>>2,a.la^=32896)}function bd(a){a.ia&=~a.ca;a.la=a.ia&32896|a.la&-32897}function cd(a){a.Y|=a.ca}function dd(a){a.la=~(a.ia&16)&16|a.la&-17}function ed(a){a.Y&=~(a.ca-1)}function fd(a){Wc(a)||(a.ia^=a.ca>>1|a.ca>>2,a.la^=32896)}function gd(a){a.ia|=a.ca;a.la=a.ia&32896|a.la&-32897} -function Cc(a){return a.wa&-2262|Sc(a)|Tc(a)|Uc(a)|Vc(a)|Wc(a)|Xc(a)}function Ac(a,b){a.ca=256;a.Y=a.ia=a.la=0;b&1&&cd(a);b&4||(a.ia|=1);b&16&&(a.la|=16);b&64||$c(a);b&128&&fd(a);b&2048&&gd(a);a.wa=a.wa&-1793|b&1792|a.Oj;a.wa&256&&(a.ib|=2,a.$|=4)} -k.tb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.sa[c]=d;e=!0;break;default:e=zb.prototype.tb.call(this,a,b,c,d)}return e};k.rb=function(a){return this.za[(a&this.Hb)>>this.mb].qc(a&this.bb)}; -k.Ga=function(a){var b=a&this.bb;a=(a&this.Hb)>>this.mb;this.A-=this.sj;return b!=this.bb?this.za[a].Nl(b):this.za[a++].qc(b)|this.za[a&this.ve].qc(0)<<8};k.Zc=function(a,b){this.za[(a&this.Hb)>>this.mb].Ac(a&this.bb,b&255)};k.Ld=function(a,b){var c=a&this.bb,d=(a&this.Hb)>>this.mb;this.A-=this.sj;c!=this.bb?this.za[d].$l(c,b&65535):(this.za[d++].Ac(c,b&255),this.za[d&this.ve].Ac(0,b>>8&255))};k.wm=function(a,b){this.sg=a;this.ga=a.Sc(this.kg=b,0);return this.$&1?0:this.rb(this.ga)}; -k.xm=function(a,b){this.sg=a;this.ga=a.Sc(this.kg=b,1);return this.$&1?0:this.Ga(this.ga)};k.En=function(a,b){this.sg=a;this.Ia=this.ga=a.Sc(this.kg=b,0);return this.$&1?0:this.rb(this.ga)};k.Fn=function(a,b){this.sg=a;this.Ia=this.ga=a.Sc(this.kg=b,1);return this.$&1?0:this.Ga(this.ga)};k.cp=function(a){this.$&2||this.Zc(this.sg.Yb(this.kg,1),a)};k.dp=function(a){this.$&2||this.Ld(this.sg.Yb(this.kg,2),a)};k.da=function(){var a=this.rb(this.Ba);this.Ba=this.qa.Ja+(this.ra=this.ra+1&65535);return a}; -k.L=function(){var a=this.rb(this.Ba)<<24>>24;this.Ba=this.qa.Ja+(this.ra=this.ra+1&65535);return a&65535};k.K=function(){var a=this.Ga(this.Ba);this.Ba=this.qa.Ja+(this.ra=this.ra+2&65535);return a};k.Ha=function(){var a=this.X;this.X=this.X+2&65535;return this.Ga(this.Cb.Sc(a,1))};function K(a,b){var c=a.X=a.X-2&65535;a.Ld(a.Cb.Yb(c,1),b)} -k.Ug=function(){G(this,"AX",this.G);G(this,"BX",this.B);G(this,"CX",this.I);G(this,"DX",this.J);G(this,"SP",this.X);G(this,"BP",this.H);G(this,"SI",this.F);G(this,"DI",this.D);G(this,"CS",this.qa.na);G(this,"DS",this.Ob.na);G(this,"SS",this.Cb.na);G(this,"ES",this.$a.na);G(this,"IP",this.ra);var a=Cc(this);G(this,"PS",a);G(this,"C",a&1?1:0,1);G(this,"P",a&4?1:0,1);G(this,"A",a&16?1:0,1);G(this,"Z",a&64?1:0,1);G(this,"S",a&128?1:0,1);G(this,"T",a&256?1:0,1);G(this,"I",a&512?1:0,1);G(this,"D",a&1024? -1:0,1);G(this,"O",a&2048?1:0,1);this.sa.speed&&(this.sa.speed.innerHTML=this.Mb&&this.jd?this.jd.toFixed(2)+"Mhz":"Stopped")}; -k.sf=function(a){this.ji=!0;this.pm=a&&this.Z&&1<this.Z.Eb.length;this.Wc=this.A=a;this.ja&&Nb(this.ja);a||!this.Z||L(this.Z,this.Z.Oe)||(this.$|=4);do{var b=this.$&240;if(b)this.va|=b;else if(this.uh=this.Ba,this.ga=this.Ia=-1,this.C=this.Ob,this.M=this.Cb,this.va=this.$&256,this.ib){a:{if(!(this.$&4))if(this.ib&1&&this.wa&512){if(b=hd(this.ja),-1<=b&&(this.ib&=-2,0<=b)){this.ib&=-5;id.call(this,b,null,11);b=!0;break a}}else if(this.ib&2){this.ib&=-3;id.call(this,1,null,11);b=!0;break a}if(b=this.ib& -8){for(var b=this.ja,c=!1,d=0;d<b.Xa;d++)for(var e=b.Xa[d],f=0;f<e.Fb.length;f++){var g=e.Fb[f];g.Dd||(jd(b,g),g.Dd||(c=!0))}b=!c}b&&(this.ib&=-9);b=!1}if(b&&!a){this.$=0;break}if(this.ib&4){this.$=this.A=0;break}}if(this.pm&&kd(this.Z,this.Ba)){this.xb();break}this.$=0;this.Ma[this.da()].call(this)}while(0<this.A);return this.ji?this.Wc-this.A:void 0===this.ji?0:-1};k.Ea=function(a){this.Z&&L(this.Z,this.Z.Lj)&&this.Z.message(a)}; -Aa(function(){for(var a=y(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=x(c),d=new $b(d);Qa(d,c)}});function ld(a,b){this.la=a^b;this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=a+b)&255}function md(a,b){this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a|b)&255} -function nd(a,b){this.la=a^b;this.Y=this.ia=a+b+(this.Y&this.ca?1:0);this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return this.Y&255}function od(a,b){this.la=a^b;this.Y=this.ia=a-b-(this.Y&this.ca?1:0);this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return this.Y&255}function pd(a,b){this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a&b)&255} -function qd(a,b){this.la=a^b;this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=a-b)&255}function rd(a,b){this.ca=256;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a^b)&255}function sd(a,b){this.la=a^b;this.ca=256;this.Y=this.ia=a-b;this.A-=0>this.Ia?0>this.ga?this.Tb:this.Li:this.ob;this.$|=2;return a} -function td(a,b){this.la=a^b;this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=a+b)&65535}function ud(a,b){this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a|b)&65535}function vd(a,b){this.la=a^b;this.Y=this.ia=a+b+(this.Y&this.ca?1:0);this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return this.Y&65535} -function wd(a,b){this.la=a^b;this.Y=this.ia=a-b-(this.Y&this.ca?1:0);this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return this.Y&65535}function xd(a,b){this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a&b)&65535}function yd(a,b){this.la=a^b;this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=a-b)&65535} -function zd(a,b){this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.Tb:this.ob:this.gc;return(this.Y=this.ia=this.la=a^b)&65535}function Ad(a,b){this.la=a^b;this.ca=65536;this.Y=this.ia=a-b;this.A-=0>this.Ia?0>this.ga?this.Tb:this.Li:this.ob;this.$|=2;return a}function Bd(a,b){this.Y=this.Y&this.ca-1|(a&b?this.ca:0);(a^a>>1)&b>>1?gd(this):bd(this)}function Cd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;Bd.call(this,d,256)}return c} -function Dd(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;Bd.call(this,d,65536)}return c}function Ed(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);Bd.call(this,d,256)}return c}function Fd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);Bd.call(this,d,65536)}return c} -function Gd(a,b){var c=a;if(b){var d;(d=(b&this.mf)%9)?(d=a<<d|(this.Y&this.ca?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.Y&this.ca?1:0)<<8;Bd.call(this,d,256)}return c}function Hd(a,b){var c=a;if(b){var d;(d=(b&this.mf)%17)?(d=a<<d|(this.Y&this.ca?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.Y&this.ca?1:0)<<16;Bd.call(this,d,65536)}return c}function Id(a,b){var c=a;b&&(c=(b&this.mf)%9,c=a>>c|(this.Y&this.ca?1:0)<<8-c|a<<9-c,Bd.call(this,c,256),c&=255);return c} -function Jd(a,b){var c=a;b&&(c=(b&this.mf)%17,c=a>>c|(this.Y&this.ca?1:0)<<16-c|a<<17-c,Bd.call(this,c,65536),c&=65535);return c}function Kd(a,b){var c=a;b&&(c=8<b?this.Y=this.ia=0:(this.Y=this.ia=a<<b)&255,this.la=0,this.ca=256);return c}function Ld(a,b){var c=a;b&&(c=16<b?this.Y=this.ia=0:(this.Y=this.ia=a<<b)&65535,this.la=0,this.ca=65536);return c} -function Md(a,b){if(b){var c=8<b?0:a>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.la=a^this.Y;this.ca=256;a=this.Y}return a&255}function Nd(a,b){if(b){var c=16<b?0:a>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.la=a^this.Y;this.ca=65536;a=this.Y}return a&65535}function Od(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.la=a^this.Y;this.ca=256;a=this.Y}return a&255} -function Pd(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.Y=this.ia=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.la=a^this.Y;this.ca=65536;a=this.Y}return a&65535}function Qd(){this.A-=0>this.ga?2:this.Fl;return 1}function Rd(){var a=this.I&this.mf;this.A-=(0>this.ga?this.gj:this.fj)+(a<<this.hj);return a}function Sd(){var a=this.da();this.A-=(0>this.ga?this.gj:this.fj)+(a<<this.hj);return a}function Wd(){return null}function Xd(a){Zb.call(this,13,0);return a} -function tc(a){bc.call(this);return a}function M(a){N.call(this);return a} -var Yd=[ld,md,nd,od,pd,qd,rd,sd],Zd=[td,ud,vd,wd,xd,yd,zd,Ad],$d=[function(a,b){this.A-=0>this.Ia?this.hc:this.yl;return b},Xd,Xd,Xd,Xd,Xd,Xd,Xd],ae=[function(a,b){this.A-=0>this.Ia?this.ql:this.ol;return b},M,M,M,M,M,M,M],be=[Cd,Ed,Gd,Id,Kd,Md,M,Od],ce=[Dd,Fd,Hd,Jd,Ld,Nd,M,Pd],ee=[function(a,b){b=this.da();this.Y=this.ia=this.la=a&b;this.ca=256;this.A-=0>this.ga?this.mj:this.lj;this.$|=2;return a},M,function(a){this.A-=0>this.ga?this.hg:this.gg;return a^255},function(a,b){b=0;this.la=a^b;this.ca= -256;this.A-=0>this.ga?this.hg:this.gg;return(this.Y=this.ia=b-a)&255},function(a){this.G=this.Bb=(this.Y=(this.G&255)*a)&65535;this.la=this.ia=this.Y;this.ca=256;this.G&65280?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?this.ul:this.tl;this.$|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.Bb=b&65535;this.Y=this.la=this.ia=b;this.ca=256;127<b||-128>b?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?this.$k:this.Zk;this.$|=2;return a},function(a){if(!a)return de.call(this), -a;var b=this.G/a;if(255<b)return de.call(this),a;this.Bb=this.G=b&255|(this.G%a&255)<<8;this.ia=this.la=this.Y=b|256;this.ca=256;this.A-=0>this.ga?this.Sk:this.Rk;this.$|=2;return a},function(a){if(!a)return de.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return de.call(this),a;this.Bb=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.ia=this.la=this.Y=b|256;this.ca=256;this.A-=0>this.ga?this.Wk:this.Vk;this.$|=2;return a}],fe=[function(a,b){b=this.K();this.Y=this.ia= -this.la=a&b;this.ca=65536;this.A-=0>this.ga?this.mj:this.lj;this.$|=2;return a},M,function(a){this.A-=0>this.ga?this.hg:this.gg;return a^65535},function(a,b){b=0;this.la=a^b;this.ca=65536;this.A-=0>this.ga?this.hg:this.gg;return(this.Y=this.ia=b-a)&65535},function(a){this.Bb=this.G=(this.Y=this.G*a)&65535;this.ng=this.J=this.Y>>16&65535;this.la=this.ia=this.Y;this.ca=65536;this.J?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?this.wl:this.vl;this.$|=2;return a},function(a){var b=(this.G<< -16>>16)*(a<<16>>16);this.G=this.Bb=b&65535;this.J=this.ng=b>>16&65535;this.Y=this.la=this.ia=b;this.ca=65536;32767<b||-32768>b?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?this.bl:this.al;this.$|=2;return a},function(a,b){if(!a)return de.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return de.call(this),a;this.Bb=this.G=c&65535;this.ng=this.J=b%a&65535;this.ia=this.la=this.Y=c|65536;this.ca=65536;this.A-=0>this.ga?this.Uk:this.Tk;this.$|=2;return a},function(a, -b){if(!a)return de.call(this),a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return de.call(this),a;this.Bb=this.G=d&65535;this.ng=this.J=b%c&65535;this.ia=this.la=this.Y=d|65536;this.ca=65536;this.A-=0>this.ga?this.Yk:this.Xk;this.$|=2;return a}],sc=[function(a){this.la=a;a=(this.ia=a+1)&255;this.Y=a|(this.Y&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ga?this.fg:this.eg;return a},function(a){this.la=a;a=(this.ia=a-1)&255;this.Y=a|(this.Y&this.ca?1:0)<<8;this.ca= -256;this.A-=0>this.ga?this.fg:this.eg;return a},M,M,M,M,M,M],uc=[function(a){this.la=a;a=(this.ia=a+1)&65535;this.Y=a|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ga?this.fg:this.eg;return a},function(a){this.la=a;a=(this.ia=a-1)&65535;this.Y=a|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ga?this.fg:this.eg;return a},function(a){K(this,this.ra);I(this,a);this.A-=0>this.ga?this.Qk:this.Pk;this.$|=2;return a},function(a){if(0>this.ga)return M.call(this,a);K(this,this.qa.na);K(this, -this.ra);zc(this,a,this.Ga(this.ga+2));this.A-=this.Nk;this.$|=2;return a},function(a){I(this,a);this.A-=0>this.ga?this.kl:this.jl;this.$|=2;return a},function(a){if(0>this.ga)return M.call(this,a);zc(this,a,this.Ga(this.ga+2));this.A-=this.hl;this.$|=2;return a},function(a){var b=a;this.$&512&&(a=a-2&65535,80286>this.Fa&&(b=a));K(this,b);this.A-=0>this.ga?this.oc:this.Al;this.$|=2;return a},Xd],ge=[Cd,Ed,Gd,Id,Kd,Md,M,Od],he=[Dd,Fd,Hd,Jd,Ld,Nd,M,Pd]; -function ie(a,b){this.A-=0>this.Ia?0>this.ga?this.sl:this.rl:this.pl;return b}function je(){return ie.call(this,0,this.Bb)}function ke(a,b){this.Y=this.ia=this.la=a&b;this.ca=256;this.A-=0>this.Ia?0>this.ga?this.nj:this.jg:this.jg;this.$|=2;return a}function le(a,b){this.Y=this.ia=this.la=a&b;this.ca=65536;this.A-=0>this.Ia?0>this.ga?this.nj:this.jg:this.jg;this.$|=2;return a} -function me(a,b){var c=(b<<16>>16)*(this.da()<<24>>24);this.Y=this.la=this.ia=c;this.ca=256;32767<c||-32768>c?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?21:24;return c&65535}function ne(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.Y=this.la=this.ia=c;this.ca=65536;32767<c||-32768>c?(cd(this),gd(this)):(Yc(this),bd(this));this.A-=0>this.ga?21:24;return c&65535}function oe(a){return a}function pe(a){if(0>this.ga)return N.call(this),a;this.A-=this.ll;return this.ga} -function qe(a,b){if(0>this.ga)return N.call(this),a;Pc(this,this.Ga(this.ga+2));this.A-=this.Pi;return b}function re(a,b){if(0>this.ga)return N.call(this),a;Rc(this,this.Ga(this.ga+2));this.A-=this.Pi;return b}function se(a){if(0>this.ga)return bc.call(this),a;var b=a<<16>>16,c=this.Ga(this.ga)<<16>>16,d=this.Ga(this.ga+2)<<16>>16;this.A-=this.Jk;if(b<c||b>d)I(this,this.uh-this.qa.Ja),id.call(this,5,null,0);this.$|=2;return a} -function te(a,b){this.A-=10+(0>this.ga?0:1);if((a&3)<(b&3))return a=a&-4|b&3,ed(this),a;$c(this);return a}function ue(a,b){this.A-=14+(0>this.ga?0:2);if(0<=this.Pb.load(b,!0)&&this.Pb.Kc>=(this.qa.na&3)&&this.Pb.Kc>=(b&3))return ed(this),this.Pb.Ya&65280;$c(this);return a}function ve(a,b){this.A-=14+(0>this.ga?0:2);if(b&65528&&0<=this.Pb.load(b,!0)&&(3072==(this.Pb.Ya&3072)||this.Pb.Kc>=(this.qa.na&3))&&this.Pb.Kc>=(b&3))return ed(this),this.Pb.Lc;$c(this);return a} -function we(a,b){if(0>this.ga){switch(this.Kg&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.pj}else this.Ia=this.ga,this.Q(a),this.A-=this.oj;return b} -function xe(a,b){if(0>this.ga){switch(this.Kg&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.X=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.pj}else this.Ia=this.ga,this.R(a),this.A-=this.oj;return b}function id(a,b,c){Kc(this,a)&&(K(this,Cc(this)),this.wa&=this.Hc.jh,K(this,this.qa.na),K(this,this.ra),null!=b&&K(this,b),zc(this,this.Hc.tj,this.Hc.na),this.A-=this.dl+c)} -function de(){I(this,this.uh-this.qa.Ja);id.call(this,0,null,2)}function Zb(a,b){this.Z&&this.Z.message("Fault 0x"+p(a)+(null!=b?" (0x"+q(b)+")":"")+" on opcode 0x"+p(db(this.ma,this.Ba))+" at "+ca(this.ra,this.qa.na));80186<=this.Fa&&(I(this,this.uh-this.qa.Ja),id.call(this,a,b,0))}function bc(){Zb.call(this,6);this.xb()}function N(){I(this,this.uh-this.qa.Ja);Ua(this,"Undefined opcode 0x"+p(db(this.ma,this.Ba))+" at "+ca(this.ra,this.qa.na));this.xb()} -function ye(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}function ze(a){a=a.call(this,this.G&255,this.I&255);this.G=this.G&-256|a}function Ae(a){a=a.call(this,this.G&255,this.J&255);this.G=this.G&-256|a}function Be(a){a=a.call(this,this.G&255,this.B&255);this.G=this.G&-256|a}function Ce(a){a=a.call(this,this.G&255,this.G>>8);this.G=this.G&-256|a}function De(a){a=a.call(this,this.G&255,this.I>>8);this.G=this.G&-256|a} -function Ee(a){a=a.call(this,this.G&255,this.J>>8);this.G=this.G&-256|a}function Fe(a){a=a.call(this,this.G&255,this.B>>8);this.G=this.G&-256|a}function Ge(a){a=a.call(this,this.I&255,this.G&255);this.I=this.I&-256|a}function He(a){a=a.call(this,this.I&255,this.I&255);this.I=this.I&-256|a}function Ie(a){a=a.call(this,this.I&255,this.J&255);this.I=this.I&-256|a}function Je(a){a=a.call(this,this.I&255,this.B&255);this.I=this.I&-256|a} -function Ke(a){a=a.call(this,this.I&255,this.G>>8);this.I=this.I&-256|a}function Le(a){a=a.call(this,this.I&255,this.I>>8);this.I=this.I&-256|a}function Me(a){a=a.call(this,this.I&255,this.J>>8);this.I=this.I&-256|a}function Ne(a){a=a.call(this,this.I&255,this.B>>8);this.I=this.I&-256|a}function Oe(a){a=a.call(this,this.J&255,this.G&255);this.J=this.J&-256|a}function Pe(a){a=a.call(this,this.J&255,this.I&255);this.J=this.J&-256|a} -function Qe(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function Re(a){a=a.call(this,this.J&255,this.B&255);this.J=this.J&-256|a}function Se(a){a=a.call(this,this.J&255,this.G>>8);this.J=this.J&-256|a}function Te(a){a=a.call(this,this.J&255,this.I>>8);this.J=this.J&-256|a}function Ue(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function Ve(a){a=a.call(this,this.J&255,this.B>>8);this.J=this.J&-256|a} -function We(a){a=a.call(this,this.B&255,this.G&255);this.B=this.B&-256|a}function Xe(a){a=a.call(this,this.B&255,this.I&255);this.B=this.B&-256|a}function Ye(a){a=a.call(this,this.B&255,this.J&255);this.B=this.B&-256|a}function Ze(a){a=a.call(this,this.B&255,this.B&255);this.B=this.B&-256|a}function $e(a){a=a.call(this,this.B&255,this.G>>8);this.B=this.B&-256|a}function af(a){a=a.call(this,this.B&255,this.I>>8);this.B=this.B&-256|a} -function bf(a){a=a.call(this,this.B&255,this.J>>8);this.B=this.B&-256|a}function cf(a){a=a.call(this,this.B&255,this.B>>8);this.B=this.B&-256|a}function df(a){a=a.call(this,this.G>>8,this.G&255);this.G=this.G&255|a<<8}function ef(a){a=a.call(this,this.G>>8,this.I&255);this.G=this.G&255|a<<8}function ff(a){a=a.call(this,this.G>>8,this.J&255);this.G=this.G&255|a<<8}function gf(a){a=a.call(this,this.G>>8,this.B&255);this.G=this.G&255|a<<8} -function hf(a){a=a.call(this,this.G>>8,this.G>>8);this.G=this.G&255|a<<8}function jf(a){a=a.call(this,this.G>>8,this.I>>8);this.G=this.G&255|a<<8}function kf(a){a=a.call(this,this.G>>8,this.J>>8);this.G=this.G&255|a<<8}function lf(a){a=a.call(this,this.G>>8,this.B>>8);this.G=this.G&255|a<<8}function mf(a){a=a.call(this,this.I>>8,this.G&255);this.I=this.I&255|a<<8}function nf(a){a=a.call(this,this.I>>8,this.I&255);this.I=this.I&255|a<<8} -function of(a){a=a.call(this,this.I>>8,this.J&255);this.I=this.I&255|a<<8}function pf(a){a=a.call(this,this.I>>8,this.B&255);this.I=this.I&255|a<<8}function qf(a){a=a.call(this,this.I>>8,this.G>>8);this.I=this.I&255|a<<8}function rf(a){a=a.call(this,this.I>>8,this.I>>8);this.I=this.I&255|a<<8}function sf(a){a=a.call(this,this.I>>8,this.J>>8);this.I=this.I&255|a<<8}function tf(a){a=a.call(this,this.I>>8,this.B>>8);this.I=this.I&255|a<<8} -function uf(a){a=a.call(this,this.J>>8,this.G&255);this.J=this.J&255|a<<8}function vf(a){a=a.call(this,this.J>>8,this.I&255);this.J=this.J&255|a<<8}function wf(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function xf(a){a=a.call(this,this.J>>8,this.B&255);this.J=this.J&255|a<<8}function yf(a){a=a.call(this,this.J>>8,this.G>>8);this.J=this.J&255|a<<8}function zf(a){a=a.call(this,this.J>>8,this.I>>8);this.J=this.J&255|a<<8} -function Af(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function Bf(a){a=a.call(this,this.J>>8,this.B>>8);this.J=this.J&255|a<<8}function Cf(a){a=a.call(this,this.B>>8,this.G&255);this.B=this.B&255|a<<8}function Df(a){a=a.call(this,this.B>>8,this.I&255);this.B=this.B&255|a<<8}function Ef(a){a=a.call(this,this.B>>8,this.J&255);this.B=this.B&255|a<<8}function Ff(a){a=a.call(this,this.B>>8,this.B&255);this.B=this.B&255|a<<8} -function Gf(a){a=a.call(this,this.B>>8,this.G>>8);this.B=this.B&255|a<<8}function Hf(a){a=a.call(this,this.B>>8,this.I>>8);this.B=this.B&255|a<<8}function If(a){a=a.call(this,this.B>>8,this.J>>8);this.B=this.B&255|a<<8}function Jf(a){a=a.call(this,this.B>>8,this.B>>8);this.B=this.B&255|a<<8}function Kf(a){this.G=a.call(this,this.G,this.G)}function Lf(a){this.G=a.call(this,this.G,this.I)}function Mf(a){this.G=a.call(this,this.G,this.J)}function Nf(a){this.G=a.call(this,this.G,this.B)} -function Of(a){this.G=a.call(this,this.G,this.X)}function Pf(a){this.G=a.call(this,this.G,this.H)}function Qf(a){this.G=a.call(this,this.G,this.F)}function Rf(a){this.G=a.call(this,this.G,this.D)}function Sf(a){this.I=a.call(this,this.I,this.G)}function Tf(a){this.I=a.call(this,this.I,this.I)}function Uf(a){this.I=a.call(this,this.I,this.J)}function Vf(a){this.I=a.call(this,this.I,this.B)}function Wf(a){this.I=a.call(this,this.I,this.X)}function Xf(a){this.I=a.call(this,this.I,this.H)} -function Yf(a){this.I=a.call(this,this.I,this.F)}function Zf(a){this.I=a.call(this,this.I,this.D)}function $f(a){this.J=a.call(this,this.J,this.G)}function ag(a){this.J=a.call(this,this.J,this.I)}function bg(a){this.J=a.call(this,this.J,this.J)}function cg(a){this.J=a.call(this,this.J,this.B)}function dg(a){this.J=a.call(this,this.J,this.X)}function eg(a){this.J=a.call(this,this.J,this.H)}function fg(a){this.J=a.call(this,this.J,this.F)}function gg(a){this.J=a.call(this,this.J,this.D)} -function hg(a){this.B=a.call(this,this.B,this.G)}function ig(a){this.B=a.call(this,this.B,this.I)}function jg(a){this.B=a.call(this,this.B,this.J)}function kg(a){this.B=a.call(this,this.B,this.B)}function lg(a){this.B=a.call(this,this.B,this.X)}function mg(a){this.B=a.call(this,this.B,this.H)}function ng(a){this.B=a.call(this,this.B,this.F)}function og(a){this.B=a.call(this,this.B,this.D)}function pg(a){this.X=a.call(this,this.X,this.G)}function qg(a){this.X=a.call(this,this.X,this.I)} -function rg(a){this.X=a.call(this,this.X,this.J)}function sg(a){this.X=a.call(this,this.X,this.B)}function tg(a){this.X=a.call(this,this.X,this.X)}function ug(a){this.X=a.call(this,this.X,this.H)}function vg(a){this.X=a.call(this,this.X,this.F)}function wg(a){this.X=a.call(this,this.X,this.D)}function xg(a){this.H=a.call(this,this.H,this.G)}function yg(a){this.H=a.call(this,this.H,this.I)}function zg(a){this.H=a.call(this,this.H,this.J)}function Ag(a){this.H=a.call(this,this.H,this.B)} -function Bg(a){this.H=a.call(this,this.H,this.X)}function Cg(a){this.H=a.call(this,this.H,this.H)}function Dg(a){this.H=a.call(this,this.H,this.F)}function Eg(a){this.H=a.call(this,this.H,this.D)}function Fg(a){this.F=a.call(this,this.F,this.G)}function Gg(a){this.F=a.call(this,this.F,this.I)}function Hg(a){this.F=a.call(this,this.F,this.J)}function Ig(a){this.F=a.call(this,this.F,this.B)}function Jg(a){this.F=a.call(this,this.F,this.X)}function Kg(a){this.F=a.call(this,this.F,this.H)} -function Lg(a){this.F=a.call(this,this.F,this.F)}function Mg(a){this.F=a.call(this,this.F,this.D)}function Ng(a){this.D=a.call(this,this.D,this.G)}function Og(a){this.D=a.call(this,this.D,this.I)}function Pg(a){this.D=a.call(this,this.D,this.J)}function Qg(a){this.D=a.call(this,this.D,this.B)}function Rg(a){this.D=a.call(this,this.D,this.X)}function Sg(a){this.D=a.call(this,this.D,this.H)}function Tg(a){this.D=a.call(this,this.D,this.F)}function Ug(a){this.D=a.call(this,this.D,this.D)} -var Vg=[function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.G&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.G&255);this.Q(a);this.A-=this.aa},function(a){a= -a.call(this,this.N(this.C,this.D),this.G&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.G&255);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.G&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.I&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.I&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F& -65535),this.I&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.I&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.I&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.I&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.I&255);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.I&255);this.Q(a);this.A-=this.aa},function(a){a= -a.call(this,this.N(this.C,this.B+this.F&65535),this.J&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.J&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.J&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.J&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C, -this.D),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.J&255);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.B&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.B&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.B&255);this.Q(a); -this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.B&255);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.B&255);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C, -this.B+this.F&65535),this.G>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.G>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.G>>8); -this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.G>>8);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.G>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.I>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.I>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.I>>8);this.Q(a);this.A-=this.fa},function(a){a= -a.call(this,this.N(this.M,this.H+this.D&65535),this.I>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.I>>8);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.J>>8); -this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.J>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.J>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.J>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a= -a.call(this,this.N(this.C,this.K()),this.J>>8);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.B>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.B>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.B>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.M,this.H+ -this.D&65535),this.B>>8);this.Q(a);this.A-=this.ea},function(a){a=a.call(this,this.N(this.C,this.F),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.B>>8);this.Q(a);this.A-=this.ta},function(a){a=a.call(this,this.N(this.C,this.B),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F+this.L()&65535),this.G&255);this.Q(a);this.A-=this.V}, +function l(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function p(a){return l(a,2)}function r(a){return l(a,4)}function ca(a,b){return void 0!==b?r(b)+":"+r(a):l(a)}function da(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c} +function ea(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}var fa={"&":"&","<":"<",">":">",'"':""","'":"'"};function ga(a){return a.replace(/[&<>"']/g,function(a){return fa[a]})}function ha(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function ka(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a<b?-1:0});d<e;){var g=d+e>>1,h;h=c(b,a[g]);0<h?d=g+1:(e=g,f=!h)}return f?d:~d} +function la(a,b,c){c=ka(a,b,c);0>c&&a.splice(-(c+1),0,b)}function ma(){return Date.now()||+new Date}function na(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var oa=[31,28,31,30,31,30,31,31,30,31,30,31]; +function pa(a,b,c,d,e,f){b=!!b;var g=0,h=null,m=da(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(n.onreadystatechange=void 0,h=n.responseText,200!=n.status&&(g=n.status||-1),d&&e&&e.call(d,m,h,g,f))});if(c){var q="",t;for(t in c)c.hasOwnProperty(t)&&(q&&(q+="&"),q+=t+"="+encodeURIComponent(c[t]));q=q.replace(/%20/g,"+");n.open("POST",a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded"); +n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(h=n.responseText,200!=n.status&&(g=n.status||-1),d&&e&&e.call(d,m,h,g,f),a=[g,h]);return a}function qa(){return"http://"+(window?window.location.host:"www.pcjs.org")}function v(a){window?window.alert(a):console.log(a)}function ra(a){var b=!1;window&&(b=window.confirm(a));return b}function sa(a){window&&window.localStorage.setItem("user",a)} +function ta(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function ua(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()} +function va(a,b){function c(){b(100===d)&&(e=setTimeout(c,d),d=100)}var d=0,e=null,f=!1;a.onmousedown=function(){f||e||(d=500,c())};a.ontouchstart=function(){e||(d=500,c())};a.onmouseup=a.onmouseout=function(){e&&(clearTimeout(e),e=null)};a.ontouchend=a.ontouchcancel=function(){e&&(clearTimeout(e),e=null);f=!0}}var wa={init:[],show:[],exit:[]},xa=!0;function ya(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function za(a){wa.init.push(a)} +function Aa(a){if(xa)for(var b=0;b<a.length;b++)a[b]()}ya("onload",function(){Aa(wa.init)});ya("onpageshow",function(){Aa(wa.show)});ya(ta("Opera")||ta("iOS")?"onunload":"onbeforeunload",function(){Aa(wa.exit)}); +function w(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.kk=b.comment;this.Vo=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.mh=this.id.substr(0,b),this.lh=this.id.substr(b+1)):this.lh=this.id;this[a]=c;this.vi=null;this.kd=this.Nb=this.Kc=this.li=this.gh=!1;this.ta={};this.Z=null;this.mh&&this.mh.match(/\d+/);Ba[Ba.length]=this}var Ca=void 0,Da={}; +if(window){Ca||(Ca=window.location.search.substr(1));for(var Ea,Ga=/\+/g,Ha=/([^&=]+)=?([^&]*)/g;Ea=Ha.exec(Ca);)Da[decodeURIComponent(Ea[1].replace(Ga," "))]=decodeURIComponent(Ea[2].replace(Ga," "))}function Ia(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function x(a,b){b.prototype=Ia(a.prototype)}var Ba=[]; +function Ja(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Ba.length;b++){var d=Ba[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Ka(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Ba.length;c++)if(Ba[c].id===a)return Ba[c]}return null} +function La(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<Ba.length;d++)if(c)c==Ba[d]&&(c=null);else if(!(a!=Ba[d].type||b&&Ba[d].id.indexOf(b)))return Ba[d]}return null}function y(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){v(c.message+" ("+a+")")}return b} +function Ma(a,b){var c,d;d=A(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++){var e,f;f=d[c].childNodes;for(e=0;e<f.length;e++){var g=f[e];if(g.nodeType===window.document.ELEMENT_NODE){var h=g.getAttribute("class");if(h){var m,n;n=h.split(" ");for(m=0;m<n.length;m++)switch(h=n[m],h){case "pcjs-input":case "pcjs-output":(n=y(g))&&n.binding&&a.wb(h,n.type,n.binding,g),n=[]}}}}}} +function A(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c} +w.prototype={toString:function(){return this.name?this.name:this.id||this.type},wb:function(a,b,c,d){switch(c){case "clear":return this.ta[c]||(this.ta[c]=d,d.onclick=function(a){return function(){a.ta.print&&(a.ta.print.value="")}}(this)),!0;case "print":return this.ta[c]||(this.Qf=this.ta[c]=d,d.value="",this.ca=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.Ha= +function(a,b,c){this.ca(a,"notice",c)}),!0;default:return!1}},log:function(){},ca:function(){},status:function(a){this.ca(this.lh+": "+a)},Ha:function(a,b){b||v(a)},Sa:function(a){!this.kd&&(this.gh=!1!==a)&&(this.name&&this.log("ready"),a=this.vi,this.vi=null,a&&a())},bc:function(){return this.Nb=!0},Yb:function(a,b){b&&(this.Nb=!1);return!0}};function Na(a,b){if(a.li)return a.Kc&&(a.Kc=!1),a.li=!1;if(a.kd)return a.ca(a.toString()+" error"),!1;a.Kc=b;return a.Kc} +function Oa(a,b){a.Kc&&(b?a.li=!0:void 0===b&&a.ca(a.toString()+" busy"));return a.Kc}function Pa(a,b){b&&(a.gh?b():a.vi=b);return a.gh}function Qa(a,b){a.kd=!0;a.Ha("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);var Ra="undefined"!==typeof window.gm;function Sa(a){w.call(this,"Panel",a,Sa)}x(w,Sa); +Sa.prototype.wb=function(a,b,c,d){return this.Da&&this.Da.wb(a,b,c,d)||this.S&&this.S.wb(a,b,c,d)||this.pb&&this.pb.wb(a,b,c,d)||this.Z&&this.Z.wb(a,b,c,d)?!0:w.prototype.wb.call(this,a,b,c,d)};Sa.prototype.pc=function(a,b,c,d){this.Da=a;this.S=c;this.Z=d;this.pb=B(a,"Keyboard")};Sa.prototype.bc=function(a,b){b||Ta();return!0};Sa.prototype.Yb=function(){return!0}; +function Ta(){for(var a=!1,b=A(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=y(d),f=Ka(e.id);f||(a=!0,f=new Sa(e));Ma(f,d);a&&f.Sa()}}za(Ta);function Ua(a,b,c){w.call(this,"Bus",a,Ua);this.S=b;this.Z=c;this.Zf=a.buswidth||20;this.te=this.Jb=(1<<this.Zf)-1;this.ob=20>=this.Zf?12:14;this.hc=1<<this.ob;this.fk=this.hc>>2;this.fb=this.hc-1;this.Ug=(this.te+this.hc)/this.hc|0;this.xe=this.Ug-1;this.sd=[];this.td=[];this.Vf=this.Wf=!1;this.Bi();this.Sa()}x(w,Ua); +Ua.prototype.Bi=function(){this.Aa=Array(this.Ug);for(var a=0;a<this.Ug;a++){var b=a*this.hc;Va(this.Aa[a]=new D(b),this.S,this.Z,b,this.hc)}this.S.Bi(this.Aa,this.te,this.ob,this.fb,this.xe);this.S.Jb=this.Jb};Ua.prototype.reset=function(){Wa(this,!0)};function Xa(a,b,c,d,e){if(!(b&a.fb||!c||c&a.fb)){for(var f=b>>a.ob;0<c&&f<a.Aa.length;){var g=a.Aa[f];if(void 0!==g&&g.size)return Ya(1,b,c);b=f*a.hc;g=a.Aa[f++]=new D(b,a.hc,d,e);Va(g,a.S,a.Z,b,a.hc);c-=a.hc}return!0}return Ya(2,b,c)} +function Wa(a,b){if(void 0!==b&&20<a.Zf){var c=a.Jb&-1048577|(b?1048576:0);c!=a.Jb&&(a.Jb=c,a.S&&(a.S.Jb=c))}}Ua.prototype.Ih=function(a,b,c){if(!(a&this.fb||!b||b&this.fb)){for(var d=a>>this.ob;0<b;){var e=this.Aa[d];if(!e.ia)return Ya(5,a,b);e.ne(c);b-=this.hc;d++}return!0}return Ya(3,a,b)};function Za(a,b,c){if(!(b&a.fb||!c||c&a.fb)){for(var d=b>>a.ob;0<c;)b=d*a.hc,Va(a.Aa[d++]=new D(b),a.S,a.Z,b,a.hc),c-=a.hc;return!0}return Ya(4,b,c)}function $a(a,b){return a.Aa[(b&a.Jb)>>a.ob].pg(b&a.fb)} +function ab(a,b){var c=b&a.fb,d=(b&a.Jb)>>a.ob;return c!=a.fb?a.Aa[d].Dj(c):a.Aa[d++].pg(c)|a.Aa[d&a.xe].pg(0)<<8}function bb(a,b,c){a.Aa[(b&a.Jb)>>a.ob].yg(b&a.fb,c&255)}function cb(a,b,c){var d=b&a.fb;b=(b&a.Jb)>>a.ob;d!=a.fb?a.Aa[b].Mj(d,c&65535):(a.Aa[b++].yg(d,c&255),a.Aa[b&a.xe].yg(0,c>>8&255))} +function eb(a){for(var b=0,c=[],d=0;d<a.Ug;d++){var e=a.Aa[d];if(e.bb||e.pk){c[b++]=d;var f=c,g=b++;a:if(e=e.save()){for(var h=0,m=0,n=[];h<e.length;){for(var q=e[h],t=h+1;t<e.length&&e[t]===q;)t++;n[m++]=t-h;n[m++]=q;h=t}if(n.length<e.length){e=n;break a}}f[g]=e}}c[b]=a.te==a.Jb;return c}function fb(a,b){if(void 0===b)return a.Vf=!a.Vf,a.Vf;void 0===a.sd[b]&&(a.sd[b]=[null,null,!1]);a.sd[b][2]=!a.sd[b][2];return a.sd[b][2]} +function gb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=g;n++)void 0!==f.sd[n]?v("Input port "+r(n)+" registered by "+f.sd[n][0].id+", ignoring "+h.id):f.sd[n]=[h,m,!1,!1]}}function hb(a,b,c){var d=255,e=a.sd[b];void 0!==e?(e[1]&&(d=e[1].call(e[0],b,c)),a.Z&&a.Vf!=e[2]&&ib(a.Z,b,d)):a.Z&&(a.Z.ba(a,b,null,c),a.Vf&&ib(a.Z,b,d));return d} +function jb(a,b){if(void 0===b)return a.Wf=!a.Wf,a.Wf;void 0===a.td[b]&&(a.td[b]=[null,null,!1]);a.td[b][2]=!a.td[b][2];return a.td[b][2]}function kb(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,g=e+d,h=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=g;n++)void 0!==f.td[n]?v("Output port "+r(n)+" registered by "+f.td[n][0].id+", ignoring "+h.id):f.td[n]=[h,m,!1,!1]}} +function lb(a,b,c,d){var e=a.td[b];void 0!==e?(e[1]&&e[1].call(e[0],b,c,d),a.Z&&a.Wf!=e[2]&&mb(a.Z,b,c)):a.Z&&(a.Z.ba(a,b,c,d),a.Wf&&mb(a.Z,b,c))}function Ya(a,b,c){v("Memory block error ("+a+","+l(b)+","+l(c)+")");return!1} +function D(a,b,c,d){this.ik=b;this.qa=null;this.offset=0;this.fh=c;this.ia=null;this.bb=this.pk=!1;if(b)if(d)this.ia=d,a=[d.fd,a-d.eb],this.qa=a[0],this.offset=a[1],this.ne(d.Ff);else if(Ra)this.buffer=new window.gm(b),this.Wj=new window.wp(this.buffer,0,b),this.ok=new window.pp(this.buffer,0,b),this.qa=new window.rp(this.buffer,0,b>>2),this.ne(nb);else{this.qa=Array(b>>2);for(d=0;d<this.qa.length;d++)this.qa[d]=0;this.ne(ob)}else this.ne()} +D.prototype={Ch:function(){return 0},vf:function(){},Yo:function(a){return this.Wj[a]},ap:function(a){return this.ok.getUint16(a,!0)},jp:function(a,b){this.Wj[a]=b;this.bb=!0},mp:function(a,b){this.ok.setUint16(a,b,!0);this.bb=!0},Xo:function(a){return this.qa[a>>2]>>((a&3)<<3)&255},$o:function(a){var b=a>>2;a=(a&3)<<3;var c=this.qa[b]>>a;return 24>a?c&65535:c&255|(this.qa[b+1]&255)<<8},ip:function(a,b){var c=a>>2,d=(a&3)<<3;this.qa[c]=this.qa[c]&~(255<<d)|b<<d;this.bb=!0},lp:function(a,b){var c= +a>>2,d=(a&3)<<3;24>d?this.qa[c]=this.qa[c]&~(65535<<d)|b<<d:(this.qa[c]=this.qa[c]&16777215|b<<24,c++,this.qa[c]=this.qa[c]&4294967040|b>>8);this.bb=!0},Zo:function(a){pb(this.Z,this.Ve+a);return this.pg(a)},bp:function(a){pb(this.Z,this.Ve+a)||pb(this.Z,this.Ve+a+1);return this.Dj(a)},kp:function(a,b){qb(this.Z,this.Ve+a);this.yg(a,b)},np:function(a,b){qb(this.Z,this.Ve+a)||qb(this.Z,this.Ve+a+1);this.Mj(a,b)},save:function(){var a,b;if(this.ia)a=null;else if(Ra)for(a=Array(this.ik>>2),b=0;b<a.length;b++)a[b]= +this.qa[b];else a=this.qa;return a},restore:function(a){if(this.ia)return null===a;if(this.ik==a.length<<2){var b;if(Ra)for(b=0;b<this.qa.length;b++)this.qa[b]=a[b];else this.qa=a;return this.bb=!0}return!1},ne:function(a,b){a||(a=[]);void 0===b&&(b=!0);sb(this,a,b);tb(this,a,b)},Vd:function(a,b){b?0===this.hk++&&tb(this,ub):0===this.gk++&&sb(this,ub)}};function vb(a,b){b?0===--a.hk&&(a.Cc=a.fh?a.vf:a.yg,a.dm=a.fh?a.vf:a.Mj):0===--a.gk&&(a.tc=a.pg,a.Rl=a.Dj)} +function Va(a,b,c,d,e){a.S=b;a.Z=c;a.Ve=d;a.gk=a.hk=0;a.Z&&wb(a.Z,d,e)}function tb(a,b,c){a.Cc=b[2]&&!a.fh?b[2]:a.vf;a.dm=b[3]&&!a.fh?b[3]:a.vf;c&&(a.yg=b[2]?b[2]:a.vf,a.Mj=b[3]?b[3]:a.vf)}function sb(a,b,c){a.tc=b[0]?b[0]:a.Ch;a.Rl=b[1]?b[1]:a.Ch;c&&(a.pg=b[0]?b[0]:a.Ch,a.Dj=b[1]?b[1]:a.Ch)}var ob=[D.prototype.Xo,D.prototype.$o,D.prototype.ip,D.prototype.lp],ub=[D.prototype.Zo,D.prototype.bp,D.prototype.kp,D.prototype.np];if(Ra)var nb=[D.prototype.Yo,D.prototype.ap,D.prototype.jp,D.prototype.mp]; +function xb(a,b){w.call(this,"CPU",a,xb);var c=a.multiplier||1;this.Hd=a.cycles||b;this.Gd=c;this.ph=Math.round(this.Hd/1E4)/100;this.hf=this.ph*this.Gd;this.Ob=this.Nb=!1;this.ki=a.autoStart;c=Da.autostart;void 0!==c&&(this.ki="true"==c?!0:"false"==c?!1:null);this.af=!1;this.$f=this.lf=0;this.bg=a.csStart;this.kf=a.csInterval;this.mf=a.csStop;var d=this;this.Zn=function(){d.Me()};this.Sa()}x(w,xb);k=xb.prototype; +k.pc=function(a,b,c,d){this.na=b;this.Z=d;this.Da=a;var e=B(a,"Video");e&&(this.fi=function(){yb(e)},this.Md=function(){e.Md()});this.ka=B(a,"ChipSet");this.Sa()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.bc=function(a,b){if(!b){if(a&&this.restore){zb(this);if(!this.restore(a))return!1;Ab(this)}else this.reset();this.Z?this.Z.Cn():this.ca("No debugger detected")}this.Nb=!0;!Bb(this)&&this.Z&&Cb(this.Z);Db(this);return!0}; +k.Yb=function(a){this.Nb=!1;return a&&this.save?this.save():!0};function Bb(a){return!0===a.ki||null===a.ki&&!a.Z&&void 0===a.ta.run?(a.Me(),!0):!1}k.Md=function(){};k.yk=function(){return 0};function Ab(a){void 0===a.bg&&(a.bg=0);void 0===a.kf&&(a.kf=-1);void 0===a.mf&&(a.mf=-1);a.af=0<=a.bg&&0<a.kf;a.af&&(a.$f=0,a.lf=a.bg-a.Je)} +function Eb(a,b){if(a.af){var c=!1;a.$f=a.$f+a.yk()|0;a.lf-=b;0>=a.lf&&(a.lf+=a.kf,c=!0);0<=a.mf&&a.mf<=E(a)&&(a.kf=a.mf=-1,Ab(a),a.zb(),c=!0);c&&a.ca(E(a)+" cycles: checksum="+l(a.$f))}}function F(a,b,c,d){void 0!==a.ta[b]&&(void 0===d&&(d=4),void 0===c&&(Qa(a,"Register "+b+" is invalid"),a.zb()),c=l(c,d),a.ta[b].innerHTML!=c&&(a.ta[b].innerHTML=c))}k.Zg=function(){};k.fi=function(){}; +k.wb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.ta[c]=d;d.onclick=function(){e.Ob?e.zb(!0):e.Me(!0)};a=!0;break;case "reset":this.ta[c]=d;d.onclick=function(){e.Da&&Fb(e.Da)};a=!0;break;case "speed":this.ta[c]=d;a=!0;break;case "setSpeed":this.ta[c]=d,d.onclick=function(){Gb(e,e.Gd<<1,!0)},d.innerHTML=this.hf.toFixed(2)+"Mhz",a=!0}return a};function Ib(a,b,c){a.Je+=b;c&&(a.Yc=a.A=0)} +function Jb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Gd&&a.md&&(d=a.md/a.ph);a.Fk=Math.round(1E3/30);a.Rn=Math.floor(a.Hd/c*d);a.Ii=Math.floor(a.Hd/30*d);a.Jk=Math.floor(a.Hd/60*d);a.Ik=Math.floor(a.Hd/2*d);b||(a.nf=a.Ii,a.dg=a.Jk,a.cg=a.Ik);a.wj=0}function E(a,b){var c=a.Je+a.ie+a.Yc-a.A;b&&1<a.Gd&&a.md>a.ph&&(c=Math.round(c/a.Gd));return c}function zb(a){a.md=0;a.sh=1;a.Je=a.ie=a.Yc=a.A=0;Ab(a);Gb(a,1)} +function Gb(a,b,c){void 0!==b&&(0.8>a.md/a.hf&&(b=1),a.Gd=b,a.hf=a.ph*a.Gd,b=a.hf.toFixed(2)+"Mhz",a.ta.setSpeed&&(a.ta.setSpeed.innerHTML=b),a.ca("target speed: "+b),c&&a.Md());Ib(a,a.ie);a.ie=0;a.jf=ma();a.Ge=0;Jb(a)} +k.Me=function(a){if(Na(this,!0)){this.Ob||(Gb(this),this.Da&&this.Da.start(this.jf,E(this)),this.Ob=!0,this.ka&&Kb(this.ka),this.ta.run&&(this.ta.run.innerHTML="Halt"),a&&this.Md());this.wj>=this.Hd&&Jb(this,!0);this.eg=0;this.qh=ma();this.Ge&&(a=this.qh-this.Ge,a>this.Fk&&(this.jf+=a,this.jf>this.qh&&(this.jf=this.qh)));try{do{this.uf(this.af?1:Math.round(this.Rn/this.sh));var b=this.Yc-this.A;this.ie+=b;this.eg+=b;Ib(this,0,!0);Eb(this,b);this.dg-=b;0>=this.dg&&(this.dg+=this.Jk,this.fi());this.cg-= +b;0>=this.cg&&(this.cg+=this.Ik,this.Zg());this.nf-=b;if(0>=this.nf){this.nf+=this.Ii;break}}while(this.Ob)}catch(c){this.zb();Db(this);this.Da&&this.Da.stop(ma(),E(this));Na(this,!1);Qa(this,c.message);return}b=setTimeout;a=this.Zn;this.Ge=ma();var d=this.Fk;this.eg&&(d=Math.round(d*this.eg/this.Ii));var d=d-(this.Ge-this.qh),e=this.Ge-this.jf;e&&(this.md=Math.round(this.ie/(10*e))/100,864E5<=e&&(this.Je=0,this.ka&&Lb(this.ka,!0),Gb(this)));if(0>d||this.md<this.hf)d=0;this.wj+=this.eg;this.Ge+=d; +b(a,d)}else Db(this),this.Da&&this.Da.stop(ma(),E(this))};k.zb=function(a){Oa(this,!0);this.Yc-=this.A;this.A=0;Ib(this,this.ie);this.ie=0;this.Ob&&(this.Ob=!1,this.ka&&Kb(this.ka),this.ta.run&&(this.ta.run.innerHTML="Run"));this.oi=a};k.uf=function(){return 0};function Db(a){a.fi();a.Zg()} +var Mb=[1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1, +0,0,1,1,0,1,0,0,1];function Nb(a,b,c){this.S=a;this.La=this.oa=0;this.Nc=65535;this.Mc=this.ab=0;this.ug=b;Ob(this,c)}function Pb(a){this.oa=a;this.Nc=65535;return this.La=a<<4} +function Qb(a){var b,c;a&4?(b=this.S.Ld.La,c=this.S.Ld.Nc):(b=this.S.Qc,c=this.S.We);b+=a&65528;if(b+7<=c){this.Uc=Rb;this.$b=Sb;this.S.A-=15;c=this.S.Ia(b+0);var d=this.S.Ia(b+4),e=this.S.Ia(b+2)|(d&255)<<16;this.S.Ia(b+6);b=d&7936;if(b&4096){2048==(b&2560)&&(this.$b=Tb);if(b&2048||!(b&512))this.$b=Ub;this.oa=a;this.Nc=c;this.ab=d;this.Mc=(d&24576)>>13;return this.La=e}if(b&&768>=b)return this.oa=a,this.Nc=c,this.ab=d,this.Mc=(d&24576)>>13,this.La=e}return-1}function Vb(a){return this.La+a} +function Wb(a){return this.La+a}function Rb(a,b,c){return a+b<=this.Nc?this.La+a:Tb.call(this,0,0,c)}function Tb(a,b,c){c||Xb.call(this.S,13,0);return-1}function Sb(a,b,c){return a+b<=this.Nc?this.La+a:Ub.call(this,0,0,c)}function Ub(a,b,c){c||Xb.call(this.S,13,0);return-1}Nb.prototype.save=function(){return[this.oa,this.La,this.Nc,this.ab,this.Mc,this.ug]};Nb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.oa=a[0],this.La=a[1],this.Nc=a[2],this.ab=a[3],this.Mc=a[4],this.ug=a[5])}; +function Ob(a,b){void 0===b&&(b=!!(a.S.ad&1));b?(a.load=Qb,a.Uc=Rb,a.$b=Sb):(a.load=Pb,a.Uc=Vb,a.$b=Wb)} +function Yb(a){this.Ga=a.model||8088;var b=0;switch(this.Ga){default:case 8088:b=4772727;break;case 80286:b=6E6}xb.call(this,a,b);this.Tj=61442;this.Eg=4;this.of=255;this.xj=4;this.aa=5;this.ua=6;this.fa=7;this.ga=8;this.P=9;this.V=11;this.W=12;this.He=4;this.Lk=60;this.Mk=83;this.Vb=3;this.qb=9;this.ic=16;this.wh=1;this.Qk=19;this.Sk=28;this.Uk=16;this.Tk=21;this.Rk=37;this.Ok=2;this.Qi=9;this.Pk=5;this.Nk=33;this.Si=10;this.Ri=8;this.ig=3;this.hg=15;this.hl=51;this.il=1;this.jl=2;this.kl=4;this.gl= +32;this.ml=this.Ti=15;this.Wb=16;this.Xb=4;this.ol=11;this.nl=18;this.ll=24;this.Cb=4;this.pl=2;this.Ui=16;this.ql=17;this.Zi=18;this.rl=19;this.Yi=5;this.$i=6;this.wl=2;this.vl=8;this.tl=9;this.bj=this.aj=this.sl=this.ul=10;this.Wk=80;this.Yk=144;this.Vk=86;this.Xk=154;this.$k=101;this.bl=165;this.Zk=107;this.al=171;this.yl=70;this.Al=113;this.xl=76;this.zl=124;this.dl=80;this.fl=128;this.cl=86;this.el=134;this.kg=3;this.jg=16;this.gj=10;this.fj=8;this.Bl=51;this.jc=8;this.Cl=17;this.Dl=36;this.rc= +11;this.El=16;this.lg=10;this.Pb=2;this.Ni=18;this.Oi=9-this.Pb;this.Pi=17-this.Pb;this.Vi=12;this.Wi=9-this.Pb;this.Xi=13-this.Pb;this.cj=18;this.dj=9-this.Pb;this.ej=17-this.Pb;this.hj=15;this.ij=9-this.Pb;this.jj=15-this.Pb;this.nj=11;this.oj=9-this.Pb;this.pj=10-this.Pb;this.Fl=8;this.Il=12;this.Gl=18;this.Hl=17;this.Jl=15;this.lj=8;this.kj=20;this.mj=2;this.sj=3;this.mg=9;this.rj=5;this.qj=11;this.uj=4;this.tj=17;this.Kl=11;this.Pa=Zb.slice();80186<=this.Ga&&(this.of=31,this.Pa[15]=G,this.Pa[96]= +$b,this.Pa[97]=ac,this.Pa[98]=bc,this.Pa[99]=G,this.Pa[100]=G,this.Pa[101]=G,this.Pa[102]=G,this.Pa[103]=G,this.Pa[104]=cc,this.Pa[105]=dc,this.Pa[106]=ec,this.Pa[107]=fc,this.Pa[108]=gc,this.Pa[109]=hc,this.Pa[110]=ic,this.Pa[111]=jc,this.Pa[192]=kc,this.Pa[193]=lc,this.Pa[200]=mc,this.Pa[200]=nc,this.Pa[241]=oc,pc[7]=qc,rc[7]=qc,80286<=this.Ga&&(this.Tj=2,this.Eg=0,this.Pa[15]=sc,this.Pa[99]=tc,this.Pa[84]=uc,this.P=this.ga=this.fa=this.ua=this.aa=this.xj=0,this.W=this.V=1,this.He=3,this.Lk=14, +this.Mk=16,this.Vb=2,this.ic=this.qb=7,this.wh=0,this.Qk=7,this.Sk=13,this.Uk=7,this.Tk=11,this.Rk=16,this.Ok=3,this.Qi=6,this.Pk=2,this.Nk=13,this.Ri=this.Si=5,this.ig=2,this.hg=7,this.hl=23,this.il=0,this.jl=1,this.kl=3,this.gl=17,this.Ti=7,this.ml=11,this.Wb=7,this.Xb=3,this.ol=7,this.nl=11,this.ll=15,this.Cb=2,this.pl=3,this.Ui=7,this.rl=this.Zi=this.ql=8,this.$i=this.Yi=4,this.wl=2,this.vl=3,this.tl=5,this.ul=2,this.sl=3,this.aj=5,this.bj=3,this.Wk=14,this.Yk=22,this.Vk=17,this.Xk=25,this.$k= +17,this.bl=25,this.Zk=20,this.al=28,this.yl=13,this.Al=21,this.xl=16,this.zl=24,this.dl=13,this.fl=21,this.cl=16,this.el=24,this.kg=2,this.jg=7,this.fj=this.gj=5,this.Bl=19,this.Cl=this.jc=5,this.Dl=17,this.rc=3,this.El=5,this.lg=3,this.Pb=0,this.Ni=8,this.Oi=5,this.Pi=9,this.Wi=this.Vi=5,this.Xi=4,this.dj=this.cj=5,this.ej=4,this.hj=7,this.ij=5,this.jj=8,this.nj=3,this.oj=4,this.pj=3,this.Il=this.Fl=11,this.Hl=this.Gl=15,this.Jl=7,this.lj=5,this.kj=8,this.mj=0,this.sj=2,this.mg=6,this.rj=3,this.qj= +6,this.uj=3,this.Kl=this.tj=5));this.Gg=[];this.Hg=[];this.Wg=0;this.Aa=[];this.te=this.Jb=this.ob=this.fb=this.xe=0;this.T=this.Am;this.U=this.Bm;this.N=this.In;this.O=this.Jn;this.Q=this.gp;this.R=this.hp;vc(this)}x(xb,Yb);k=Yb.prototype;k.Bi=function(a,b,c,d,e){this.Aa=a;this.te=this.Jb=b;this.ob=c;this.fb=d;this.xe=e};k.reset=function(){this.Ob&&this.zb();vc(this);zb(this);this.kd=!1}; +function vc(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.ad=65520;a.ed=0;a.se=1023;a.Jc={yj:0,oa:0,ab:0,oh:-1};a.ra=new Nb(a,"CS");a.Qb=new Nb(a,"DS");a.Eb=new Nb(a,"SS");a.cb=new Nb(a,"ES");a.am=new Nb(a,"ZERO");wc(a,0,65535);80286<=a.Ga&&(a.Qc=a.We=0,a.Ld=new Nb(a,"LDT",!0),a.xg=new Nb(a,"TSS",!0),a.Rb=new Nb(a,"VER",!0),wc(a,65520,61440),a.ra.La=16711680);xc(a,0);yc(a);a.kb=0;a.Db=a.rg=-1;a.Pg=0;a.ha=a.Ka=-1;a.C=a.Qb;a.M=a.Eb;a.$=a.wa=0} +k.yk=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.sa+this.ra.oa+this.Qb.oa+this.Eb.oa+this.cb.oa+zc(this)|0};function Ac(a,b,c,d){void 0!==d&&(void 0===a.Gg[b]&&(a.Gg[b]=[]),a.Gg[b].push([c,d]))}function Bc(a,b,c){void 0!==c&&(null==a.Hg[b]&&a.Wg++,a.Hg[b]=c)}function Cc(a,b){var c=a.Hg[b];null!=c&&(c(--a.Wg),delete a.Hg[b])}function yc(a,b){void 0===b&&(b=!!(a.ad&1));Dc=b?Ec:Fc;Ob(a.ra,b);Ob(a.Qb,b);Ob(a.Eb,b);Ob(a.cb,b)} +k.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.X,this.H,this.F,this.D]);a.set(1,[this.sa,this.ra.save(),this.Qb.save(),this.Eb.save(),this.cb.save(),zc(this),null!=this.Qc?[this.ad,this.Qc,this.We,this.ed,this.se,this.Ld.save(),this.xg.save()]:null]);a.set(2,[this.C.ug,this.M.ug,this.$,this.wa,this.kb,this.ha,this.Ka]);a.set(3,[this.sh,this.Je,this.Gd]);a.set(4,eb(this.na));return a.data()}; +k.restore=function(a){var b;b=a[0];this.G=b[0];this.B=b[1];this.I=b[2];this.J=b[3];this.X=b[4];this.H=b[5];this.F=b[6];this.D=b[7];b=a[1];this.ra.restore(b[1]);this.Qb.restore(b[2]);this.Eb.restore(b[3]);this.cb.restore(b[4]);xc(this,b[5]);var c=b[6];c&&c.length&&(this.ad=c[0],this.Qc=c[1],this.We=c[2],this.ed=c[3],this.se=c[4],this.Ld.restore(c[5]),this.xg.restore(c[6]),yc(this));I(this,b[0]);b=a[2];this.C=Gc(this,b[0]);this.M=Gc(this,b[1]);this.$=b[2];this.wa=b[3];this.kb=b[4];this.ha=b[5];this.Ka= +b[6];b=a[3];this.sh=b[0];this.Je=b[1];Gb(this,b[2]);a:{b=this.na;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.fk){for(var f=0,g=Array(b.fk),h=0;h<e.length-1;)for(var m=e[h++],n=e[h++];m--;)g[f++]=n;e=g}f=b.Aa[d];if(!f||!f.restore(e)){v("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Wa(b,a[c]);b=!0}return b}; +function Gc(a,b){switch(b){case "CS":return a.ra;case "DS":return a.Qb;case "SS":return a.Eb;case "ES":return a.cb;case "ZERO":return a.am;default:return[0,b,0,0,""]}}function Hc(a,b){var c;if(a.ad&1){if(c=a.ed+(b<<3),c+7<=a.se){a.Jc.yj=a.Ia(c);a.Jc.oa=a.Ia(c+2);a.Jc.ab=a.Ia(c+4);switch(a.Jc.ab&7936){case 1536:a.Jc.oh=-17153;break;case 1792:a.Jc.oh=-16641;break;default:return!1}return!0}}else if(c=a.ed+(b<<2),c+7<=a.se)return a.Jc.yj=a.Ia(c),a.Jc.oa=a.Ia(c+2),a.Jc.oh=-769,!0;return!1} +function Ic(a,b){a.Ca=a.ra.load(b)+a.sa;a.$|=a.Eg}function Mc(a,b){a.Qb.load(b);a.$|=a.Eg}function Nc(a,b){a.Eb.load(b);a.$|=4}function Oc(a,b){a.cb.load(b);a.$|=a.Eg}function I(a,b){a.Ca=a.ra.La+(a.sa=b&65535)}function wc(a,b,c){a.Ca=a.ra.load(c)+(a.sa=b)}function J(a,b){a.Ca=a.ra.La+(a.sa=a.sa+b&65535)}function Pc(a){return a.Y&a.da?1:0}function Qc(a){return Mb[a.ja&255]?4:0}function Rc(a){return(a.ja^a.ma)&16?16:0}function Sc(a){return a.Y&a.da-1?0:64}function Tc(a){return a.ja&a.da>>1?128:0} +function Uc(a){return(a.ja^a.ma^a.ja>>1)&a.da>>1?2048:0}function Vc(a){a.Y&=~a.da}function Wc(a){a.ma=a.ja&16|a.ma&-17}function Xc(a){a.Y|=a.da-1}function Yc(a){Tc(a)&&(a.ja^=a.da>>1|a.da>>2,a.ma^=32896)}function Zc(a){a.ja&=~a.da;a.ma=a.ja&32896|a.ma&-32897}function $c(a){a.Y|=a.da}function ad(a){a.ma=~(a.ja&16)&16|a.ma&-17}function bd(a){a.Y&=~(a.da-1)}function cd(a){Tc(a)||(a.ja^=a.da>>1|a.da>>2,a.ma^=32896)}function dd(a){a.ja|=a.da;a.ma=a.ja&32896|a.ma&-32897} +function zc(a){return a.xa&-2262|Pc(a)|Qc(a)|Rc(a)|Sc(a)|Tc(a)|Uc(a)}function xc(a,b){a.da=256;a.Y=a.ja=a.ma=0;b&1&&$c(a);b&4||(a.ja|=1);b&16&&(a.ma|=16);b&64||Xc(a);b&128&&cd(a);b&2048&&dd(a);a.xa=a.xa&-1793|b&1792|a.Tj;a.xa&256&&(a.kb|=2,a.$|=4)} +k.wb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.ta[c]=d;e=!0;break;default:e=xb.prototype.wb.call(this,a,b,c,d)}return e};k.ub=function(a){return this.Aa[(a&this.Jb)>>this.ob].tc(a&this.fb)}; +k.Ia=function(a){var b=a&this.fb;a=(a&this.Jb)>>this.ob;this.A-=this.xj;return b!=this.fb?this.Aa[a].Rl(b):this.Aa[a++].tc(b)|this.Aa[a&this.xe].tc(0)<<8};k.bd=function(a,b){this.Aa[(a&this.Jb)>>this.ob].Cc(a&this.fb,b&255)};k.Nd=function(a,b){var c=a&this.fb,d=(a&this.Jb)>>this.ob;this.A-=this.xj;c!=this.fb?this.Aa[d].dm(c,b&65535):(this.Aa[d++].Cc(c,b&255),this.Aa[d&this.xe].Cc(0,b>>8&255))};k.Am=function(a,b){this.wg=a;this.ha=a.Uc(this.ng=b,0);return this.$&1?0:this.ub(this.ha)}; +k.Bm=function(a,b){this.wg=a;this.ha=a.Uc(this.ng=b,1);return this.$&1?0:this.Ia(this.ha)};k.In=function(a,b){this.wg=a;this.Ka=this.ha=a.Uc(this.ng=b,0);return this.$&1?0:this.ub(this.ha)};k.Jn=function(a,b){this.wg=a;this.Ka=this.ha=a.Uc(this.ng=b,1);return this.$&1?0:this.Ia(this.ha)};k.gp=function(a){this.$&2||this.bd(this.wg.$b(this.ng,1),a)};k.hp=function(a){this.$&2||this.Nd(this.wg.$b(this.ng,2),a)};k.ea=function(){var a=this.ub(this.Ca);this.Ca=this.ra.La+(this.sa=this.sa+1&65535);return a}; +k.L=function(){var a=this.ub(this.Ca)<<24>>24;this.Ca=this.ra.La+(this.sa=this.sa+1&65535);return a&65535};k.K=function(){var a=this.Ia(this.Ca);this.Ca=this.ra.La+(this.sa=this.sa+2&65535);return a};k.Ja=function(){var a=this.X;this.X=this.X+2&65535;return this.Ia(this.Eb.Uc(a,1))};function K(a,b){var c=a.X=a.X-2&65535;a.Nd(a.Eb.$b(c,1),b)} +k.Zg=function(){F(this,"AX",this.G);F(this,"BX",this.B);F(this,"CX",this.I);F(this,"DX",this.J);F(this,"SP",this.X);F(this,"BP",this.H);F(this,"SI",this.F);F(this,"DI",this.D);F(this,"CS",this.ra.oa);F(this,"DS",this.Qb.oa);F(this,"SS",this.Eb.oa);F(this,"ES",this.cb.oa);F(this,"IP",this.sa);var a=zc(this);F(this,"PS",a);F(this,"C",a&1?1:0,1);F(this,"P",a&4?1:0,1);F(this,"A",a&16?1:0,1);F(this,"Z",a&64?1:0,1);F(this,"S",a&128?1:0,1);F(this,"T",a&256?1:0,1);F(this,"I",a&512?1:0,1);F(this,"D",a&1024? +1:0,1);F(this,"O",a&2048?1:0,1);this.ta.speed&&(this.ta.speed.innerHTML=this.Ob&&this.md?this.md.toFixed(2)+"Mhz":"Stopped")}; +k.uf=function(a){this.oi=!0;this.tm=a&&this.Z&&1<this.Z.Gb.length;this.Yc=this.A=a;this.ka&&Lb(this.ka);a||!this.Z||L(this.Z,this.Z.Qe)||(this.$|=4);do{var b=this.$&240;if(b)this.wa|=b;else if(this.zh=this.Ca,this.ha=this.Ka=-1,this.C=this.Qb,this.M=this.Eb,this.wa=this.$&256,this.kb){a:{if(!(this.$&4))if(this.kb&1&&this.xa&512){if(b=ed(this.ka),-1<=b&&(this.kb&=-2,0<=b)){this.kb&=-5;fd.call(this,b,null,11);b=!0;break a}}else if(this.kb&2){this.kb&=-3;fd.call(this,1,null,11);b=!0;break a}if(b=this.kb& +8){for(var b=this.ka,c=!1,d=0;d<b.$a;d++)for(var e=b.$a[d],f=0;f<e.Hb.length;f++){var g=e.Hb[f];g.Fd||(gd(b,g),g.Fd||(c=!0))}b=!c}b&&(this.kb&=-9);b=!1}if(b&&!a){this.$=0;break}if(this.kb&4){this.$=this.A=0;break}}if(this.tm&&hd(this.Z,this.Ca)){this.zb();break}this.$=0;this.Pa[this.ea()].call(this)}while(0<this.A);return this.oi?this.Yc-this.A:void 0===this.oi?0:-1};k.Fa=function(a){this.Z&&L(this.Z,this.Z.Qj)&&this.Z.message(a)}; +za(function(){for(var a=A(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Yb(d);Ma(d,c)}});function id(a,b){this.ma=a^b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=a+b)&255}function jd(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a|b)&255} +function kd(a,b){this.ma=a^b;this.Y=this.ja=a+b+(this.Y&this.da?1:0);this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return this.Y&255}function ld(a,b){this.ma=a^b;this.Y=this.ja=a-b-(this.Y&this.da?1:0);this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return this.Y&255}function md(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a&b)&255} +function nd(a,b){this.ma=a^b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=a-b)&255}function od(a,b){this.da=256;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a^b)&255}function pd(a,b){this.ma=a^b;this.da=256;this.Y=this.ja=a-b;this.A-=0>this.Ka?0>this.ha?this.Vb:this.Qi:this.qb;this.$|=2;return a} +function qd(a,b){this.ma=a^b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=a+b)&65535}function rd(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a|b)&65535}function sd(a,b){this.ma=a^b;this.Y=this.ja=a+b+(this.Y&this.da?1:0);this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return this.Y&65535} +function td(a,b){this.ma=a^b;this.Y=this.ja=a-b-(this.Y&this.da?1:0);this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return this.Y&65535}function ud(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a&b)&65535}function vd(a,b){this.ma=a^b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=a-b)&65535} +function wd(a,b){this.da=65536;this.A-=0>this.Ka?0>this.ha?this.Vb:this.qb:this.ic;return(this.Y=this.ja=this.ma=a^b)&65535}function xd(a,b){this.ma=a^b;this.da=65536;this.Y=this.ja=a-b;this.A-=0>this.Ka?0>this.ha?this.Vb:this.Qi:this.qb;this.$|=2;return a}function yd(a,b){this.Y=this.Y&this.da-1|(a&b?this.da:0);(a^a>>1)&b>>1?dd(this):Zc(this)}function zd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;yd.call(this,d,256)}return c} +function Ad(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;yd.call(this,d,65536)}return c}function Bd(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);yd.call(this,d,256)}return c}function Cd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);yd.call(this,d,65536)}return c} +function Dd(a,b){var c=a;if(b){var d;(d=(b&this.of)%9)?(d=a<<d|(this.Y&this.da?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.Y&this.da?1:0)<<8;yd.call(this,d,256)}return c}function Ed(a,b){var c=a;if(b){var d;(d=(b&this.of)%17)?(d=a<<d|(this.Y&this.da?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.Y&this.da?1:0)<<16;yd.call(this,d,65536)}return c}function Fd(a,b){var c=a;b&&(c=(b&this.of)%9,c=a>>c|(this.Y&this.da?1:0)<<8-c|a<<9-c,yd.call(this,c,256),c&=255);return c} +function Gd(a,b){var c=a;b&&(c=(b&this.of)%17,c=a>>c|(this.Y&this.da?1:0)<<16-c|a<<17-c,yd.call(this,c,65536),c&=65535);return c}function Hd(a,b){var c=a;b&&(c=8<b?this.Y=this.ja=0:(this.Y=this.ja=a<<b)&255,this.ma=0,this.da=256);return c}function Id(a,b){var c=a;b&&(c=16<b?this.Y=this.ja=0:(this.Y=this.ja=a<<b)&65535,this.ma=0,this.da=65536);return c} +function Jd(a,b){if(b){var c=8<b?0:a>>b-1;this.Y=this.ja=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.ma=a^this.Y;this.da=256;a=this.Y}return a&255}function Kd(a,b){if(b){var c=16<b?0:a>>b-1;this.Y=this.ja=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.ma=a^this.Y;this.da=65536;a=this.Y}return a&65535}function Ld(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.Y=this.ja=c>>1;this.Y=c&1?this.Y|256:this.Y&-257;this.ma=a^this.Y;this.da=256;a=this.Y}return a&255} +function Md(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.Y=this.ja=c>>1;this.Y=c&1?this.Y|65536:this.Y&-65537;this.ma=a^this.Y;this.da=65536;a=this.Y}return a&65535}function Nd(){this.A-=0>this.ha?2:this.Jl;return 1}function Od(){var a=this.I&this.of;this.A-=(0>this.ha?this.lj:this.kj)+(a<<this.mj);return a}function Sd(){var a=this.ea();this.A-=(0>this.ha?this.lj:this.kj)+(a<<this.mj);return a}function Td(){return null}function Ud(a){Xb.call(this,13,0);return a} +function qc(a){G.call(this);return a}function M(a){N.call(this);return a} +var Vd=[id,jd,kd,ld,md,nd,od,pd],Wd=[qd,rd,sd,td,ud,vd,wd,xd],Xd=[function(a,b){this.A-=0>this.Ka?this.jc:this.Cl;return b},Ud,Ud,Ud,Ud,Ud,Ud,Ud],Yd=[function(a,b){this.A-=0>this.Ka?this.ul:this.sl;return b},M,M,M,M,M,M,M],Zd=[zd,Bd,Dd,Fd,Hd,Jd,M,Ld],$d=[Ad,Cd,Ed,Gd,Id,Kd,M,Md],be=[function(a,b){b=this.ea();this.Y=this.ja=this.ma=a&b;this.da=256;this.A-=0>this.ha?this.rj:this.qj;this.$|=2;return a},M,function(a){this.A-=0>this.ha?this.kg:this.jg;return a^255},function(a,b){b=0;this.ma=a^b;this.da= +256;this.A-=0>this.ha?this.kg:this.jg;return(this.Y=this.ja=b-a)&255},function(a){this.G=this.Db=(this.Y=(this.G&255)*a)&65535;this.ma=this.ja=this.Y;this.da=256;this.G&65280?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?this.yl:this.xl;this.$|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.Db=b&65535;this.Y=this.ma=this.ja=b;this.da=256;127<b||-128>b?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?this.dl:this.cl;this.$|=2;return a},function(a){if(!a)return ae.call(this), +a;var b=this.G/a;if(255<b)return ae.call(this),a;this.Db=this.G=b&255|(this.G%a&255)<<8;this.ja=this.ma=this.Y=b|256;this.da=256;this.A-=0>this.ha?this.Wk:this.Vk;this.$|=2;return a},function(a){if(!a)return ae.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return ae.call(this),a;this.Db=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.ja=this.ma=this.Y=b|256;this.da=256;this.A-=0>this.ha?this.$k:this.Zk;this.$|=2;return a}],ce=[function(a,b){b=this.K();this.Y=this.ja= +this.ma=a&b;this.da=65536;this.A-=0>this.ha?this.rj:this.qj;this.$|=2;return a},M,function(a){this.A-=0>this.ha?this.kg:this.jg;return a^65535},function(a,b){b=0;this.ma=a^b;this.da=65536;this.A-=0>this.ha?this.kg:this.jg;return(this.Y=this.ja=b-a)&65535},function(a){this.Db=this.G=(this.Y=this.G*a)&65535;this.rg=this.J=this.Y>>16&65535;this.ma=this.ja=this.Y;this.da=65536;this.J?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?this.Al:this.zl;this.$|=2;return a},function(a){var b=(this.G<< +16>>16)*(a<<16>>16);this.G=this.Db=b&65535;this.J=this.rg=b>>16&65535;this.Y=this.ma=this.ja=b;this.da=65536;32767<b||-32768>b?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?this.fl:this.el;this.$|=2;return a},function(a,b){if(!a)return ae.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return ae.call(this),a;this.Db=this.G=c&65535;this.rg=this.J=b%a&65535;this.ja=this.ma=this.Y=c|65536;this.da=65536;this.A-=0>this.ha?this.Yk:this.Xk;this.$|=2;return a},function(a, +b){if(!a)return ae.call(this),a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return ae.call(this),a;this.Db=this.G=d&65535;this.rg=this.J=b%c&65535;this.ja=this.ma=this.Y=d|65536;this.da=65536;this.A-=0>this.ha?this.bl:this.al;this.$|=2;return a}],pc=[function(a){this.ma=a;a=(this.ja=a+1)&255;this.Y=a|(this.Y&this.da?1:0)<<8;this.da=256;this.A-=0>this.ha?this.ig:this.hg;return a},function(a){this.ma=a;a=(this.ja=a-1)&255;this.Y=a|(this.Y&this.da?1:0)<<8;this.da= +256;this.A-=0>this.ha?this.ig:this.hg;return a},M,M,M,M,M,M],rc=[function(a){this.ma=a;a=(this.ja=a+1)&65535;this.Y=a|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=0>this.ha?this.ig:this.hg;return a},function(a){this.ma=a;a=(this.ja=a-1)&65535;this.Y=a|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=0>this.ha?this.ig:this.hg;return a},function(a){K(this,this.sa);I(this,a);this.A-=0>this.ha?this.Uk:this.Tk;this.$|=2;return a},function(a){if(0>this.ha)return M.call(this,a);K(this,this.ra.oa);K(this, +this.sa);wc(this,a,this.Ia(this.ha+2));this.A-=this.Rk;this.$|=2;return a},function(a){I(this,a);this.A-=0>this.ha?this.ol:this.nl;this.$|=2;return a},function(a){if(0>this.ha)return M.call(this,a);wc(this,a,this.Ia(this.ha+2));this.A-=this.ll;this.$|=2;return a},function(a){var b=a;this.$&512&&(a=a-2&65535,80286>this.Ga&&(b=a));K(this,b);this.A-=0>this.ha?this.rc:this.El;this.$|=2;return a},Ud],de=[zd,Bd,Dd,Fd,Hd,Jd,M,Ld],ee=[Ad,Cd,Ed,Gd,Id,Kd,M,Md]; +function fe(a,b){this.A-=0>this.Ka?0>this.ha?this.wl:this.vl:this.tl;return b}function ge(){return fe.call(this,0,this.Db)}function he(a,b){this.Y=this.ja=this.ma=a&b;this.da=256;this.A-=0>this.Ka?0>this.ha?this.sj:this.mg:this.mg;this.$|=2;return a}function ie(a,b){this.Y=this.ja=this.ma=a&b;this.da=65536;this.A-=0>this.Ka?0>this.ha?this.sj:this.mg:this.mg;this.$|=2;return a} +function je(a,b){var c=(b<<16>>16)*(this.ea()<<24>>24);this.Y=this.ma=this.ja=c;this.da=256;32767<c||-32768>c?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?21:24;return c&65535}function ke(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.Y=this.ma=this.ja=c;this.da=65536;32767<c||-32768>c?($c(this),dd(this)):(Vc(this),Zc(this));this.A-=0>this.ha?21:24;return c&65535}function le(a){return a}function me(a){if(0>this.ha)return N.call(this),a;this.A-=this.pl;return this.ha} +function ne(a,b){if(0>this.ha)return N.call(this),a;Mc(this,this.Ia(this.ha+2));this.A-=this.Ui;return b}function oe(a,b){if(0>this.ha)return N.call(this),a;Oc(this,this.Ia(this.ha+2));this.A-=this.Ui;return b}function pe(a){if(0>this.ha)return G.call(this),a;var b=a<<16>>16,c=this.Ia(this.ha)<<16>>16,d=this.Ia(this.ha+2)<<16>>16;this.A-=this.Nk;if(b<c||b>d)I(this,this.zh-this.ra.La),fd.call(this,5,null,0);this.$|=2;return a} +function qe(a,b){this.A-=10+(0>this.ha?0:1);if((a&3)<(b&3))return a=a&-4|b&3,bd(this),a;Xc(this);return a}function re(a,b){this.A-=14+(0>this.ha?0:2);if(0<=this.Rb.load(b,!0)&&this.Rb.Mc>=(this.ra.oa&3)&&this.Rb.Mc>=(b&3))return bd(this),this.Rb.ab&65280;Xc(this);return a}function se(a,b){this.A-=14+(0>this.ha?0:2);if(b&65528&&0<=this.Rb.load(b,!0)&&(3072==(this.Rb.ab&3072)||this.Rb.Mc>=(this.ra.oa&3))&&this.Rb.Mc>=(b&3))return bd(this),this.Rb.Nc;Xc(this);return a} +function te(a,b){if(0>this.ha){switch(this.Pg&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.uj}else this.Ka=this.ha,this.Q(a),this.A-=this.tj;return b} +function ue(a,b){if(0>this.ha){switch(this.Pg&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.X=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.uj}else this.Ka=this.ha,this.R(a),this.A-=this.tj;return b}function fd(a,b,c){Hc(this,a)&&(K(this,zc(this)),this.xa&=this.Jc.oh,K(this,this.ra.oa),K(this,this.sa),null!=b&&K(this,b),wc(this,this.Jc.yj,this.Jc.oa),this.A-=this.hl+c)} +function ae(){I(this,this.zh-this.ra.La);fd.call(this,0,null,2)}function Xb(a,b){this.Z&&this.Z.message("Fault 0x"+p(a)+(null!=b?" (0x"+r(b)+")":"")+" on opcode 0x"+p($a(this.na,this.Ca))+" at "+ca(this.sa,this.ra.oa));80186<=this.Ga&&(I(this,this.zh-this.ra.La),fd.call(this,a,b,0))}function G(){Xb.call(this,6);this.zb()}function N(){I(this,this.zh-this.ra.La);Qa(this,"Undefined opcode 0x"+p($a(this.na,this.Ca))+" at "+ca(this.sa,this.ra.oa));this.zb()} +function ve(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}function we(a){a=a.call(this,this.G&255,this.I&255);this.G=this.G&-256|a}function xe(a){a=a.call(this,this.G&255,this.J&255);this.G=this.G&-256|a}function ye(a){a=a.call(this,this.G&255,this.B&255);this.G=this.G&-256|a}function ze(a){a=a.call(this,this.G&255,this.G>>8);this.G=this.G&-256|a}function Ae(a){a=a.call(this,this.G&255,this.I>>8);this.G=this.G&-256|a} +function Be(a){a=a.call(this,this.G&255,this.J>>8);this.G=this.G&-256|a}function Ce(a){a=a.call(this,this.G&255,this.B>>8);this.G=this.G&-256|a}function De(a){a=a.call(this,this.I&255,this.G&255);this.I=this.I&-256|a}function Ee(a){a=a.call(this,this.I&255,this.I&255);this.I=this.I&-256|a}function Fe(a){a=a.call(this,this.I&255,this.J&255);this.I=this.I&-256|a}function Ge(a){a=a.call(this,this.I&255,this.B&255);this.I=this.I&-256|a} +function He(a){a=a.call(this,this.I&255,this.G>>8);this.I=this.I&-256|a}function Ie(a){a=a.call(this,this.I&255,this.I>>8);this.I=this.I&-256|a}function Je(a){a=a.call(this,this.I&255,this.J>>8);this.I=this.I&-256|a}function Ke(a){a=a.call(this,this.I&255,this.B>>8);this.I=this.I&-256|a}function Le(a){a=a.call(this,this.J&255,this.G&255);this.J=this.J&-256|a}function Me(a){a=a.call(this,this.J&255,this.I&255);this.J=this.J&-256|a} +function Ne(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function Oe(a){a=a.call(this,this.J&255,this.B&255);this.J=this.J&-256|a}function Pe(a){a=a.call(this,this.J&255,this.G>>8);this.J=this.J&-256|a}function Qe(a){a=a.call(this,this.J&255,this.I>>8);this.J=this.J&-256|a}function Re(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function Se(a){a=a.call(this,this.J&255,this.B>>8);this.J=this.J&-256|a} +function Te(a){a=a.call(this,this.B&255,this.G&255);this.B=this.B&-256|a}function Ue(a){a=a.call(this,this.B&255,this.I&255);this.B=this.B&-256|a}function Ve(a){a=a.call(this,this.B&255,this.J&255);this.B=this.B&-256|a}function We(a){a=a.call(this,this.B&255,this.B&255);this.B=this.B&-256|a}function Xe(a){a=a.call(this,this.B&255,this.G>>8);this.B=this.B&-256|a}function Ye(a){a=a.call(this,this.B&255,this.I>>8);this.B=this.B&-256|a} +function Ze(a){a=a.call(this,this.B&255,this.J>>8);this.B=this.B&-256|a}function $e(a){a=a.call(this,this.B&255,this.B>>8);this.B=this.B&-256|a}function af(a){a=a.call(this,this.G>>8,this.G&255);this.G=this.G&255|a<<8}function bf(a){a=a.call(this,this.G>>8,this.I&255);this.G=this.G&255|a<<8}function cf(a){a=a.call(this,this.G>>8,this.J&255);this.G=this.G&255|a<<8}function df(a){a=a.call(this,this.G>>8,this.B&255);this.G=this.G&255|a<<8} +function ef(a){a=a.call(this,this.G>>8,this.G>>8);this.G=this.G&255|a<<8}function ff(a){a=a.call(this,this.G>>8,this.I>>8);this.G=this.G&255|a<<8}function gf(a){a=a.call(this,this.G>>8,this.J>>8);this.G=this.G&255|a<<8}function hf(a){a=a.call(this,this.G>>8,this.B>>8);this.G=this.G&255|a<<8}function jf(a){a=a.call(this,this.I>>8,this.G&255);this.I=this.I&255|a<<8}function kf(a){a=a.call(this,this.I>>8,this.I&255);this.I=this.I&255|a<<8} +function lf(a){a=a.call(this,this.I>>8,this.J&255);this.I=this.I&255|a<<8}function mf(a){a=a.call(this,this.I>>8,this.B&255);this.I=this.I&255|a<<8}function nf(a){a=a.call(this,this.I>>8,this.G>>8);this.I=this.I&255|a<<8}function of(a){a=a.call(this,this.I>>8,this.I>>8);this.I=this.I&255|a<<8}function pf(a){a=a.call(this,this.I>>8,this.J>>8);this.I=this.I&255|a<<8}function qf(a){a=a.call(this,this.I>>8,this.B>>8);this.I=this.I&255|a<<8} +function rf(a){a=a.call(this,this.J>>8,this.G&255);this.J=this.J&255|a<<8}function sf(a){a=a.call(this,this.J>>8,this.I&255);this.J=this.J&255|a<<8}function tf(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function uf(a){a=a.call(this,this.J>>8,this.B&255);this.J=this.J&255|a<<8}function vf(a){a=a.call(this,this.J>>8,this.G>>8);this.J=this.J&255|a<<8}function wf(a){a=a.call(this,this.J>>8,this.I>>8);this.J=this.J&255|a<<8} +function xf(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function yf(a){a=a.call(this,this.J>>8,this.B>>8);this.J=this.J&255|a<<8}function zf(a){a=a.call(this,this.B>>8,this.G&255);this.B=this.B&255|a<<8}function Af(a){a=a.call(this,this.B>>8,this.I&255);this.B=this.B&255|a<<8}function Bf(a){a=a.call(this,this.B>>8,this.J&255);this.B=this.B&255|a<<8}function Cf(a){a=a.call(this,this.B>>8,this.B&255);this.B=this.B&255|a<<8} +function Df(a){a=a.call(this,this.B>>8,this.G>>8);this.B=this.B&255|a<<8}function Ef(a){a=a.call(this,this.B>>8,this.I>>8);this.B=this.B&255|a<<8}function Ff(a){a=a.call(this,this.B>>8,this.J>>8);this.B=this.B&255|a<<8}function Gf(a){a=a.call(this,this.B>>8,this.B>>8);this.B=this.B&255|a<<8}function Hf(a){this.G=a.call(this,this.G,this.G)}function If(a){this.G=a.call(this,this.G,this.I)}function Jf(a){this.G=a.call(this,this.G,this.J)}function Kf(a){this.G=a.call(this,this.G,this.B)} +function Lf(a){this.G=a.call(this,this.G,this.X)}function Mf(a){this.G=a.call(this,this.G,this.H)}function Nf(a){this.G=a.call(this,this.G,this.F)}function Of(a){this.G=a.call(this,this.G,this.D)}function Pf(a){this.I=a.call(this,this.I,this.G)}function Qf(a){this.I=a.call(this,this.I,this.I)}function Rf(a){this.I=a.call(this,this.I,this.J)}function Sf(a){this.I=a.call(this,this.I,this.B)}function Tf(a){this.I=a.call(this,this.I,this.X)}function Uf(a){this.I=a.call(this,this.I,this.H)} +function Vf(a){this.I=a.call(this,this.I,this.F)}function Wf(a){this.I=a.call(this,this.I,this.D)}function Xf(a){this.J=a.call(this,this.J,this.G)}function Yf(a){this.J=a.call(this,this.J,this.I)}function Zf(a){this.J=a.call(this,this.J,this.J)}function $f(a){this.J=a.call(this,this.J,this.B)}function ag(a){this.J=a.call(this,this.J,this.X)}function bg(a){this.J=a.call(this,this.J,this.H)}function cg(a){this.J=a.call(this,this.J,this.F)}function dg(a){this.J=a.call(this,this.J,this.D)} +function eg(a){this.B=a.call(this,this.B,this.G)}function fg(a){this.B=a.call(this,this.B,this.I)}function gg(a){this.B=a.call(this,this.B,this.J)}function hg(a){this.B=a.call(this,this.B,this.B)}function ig(a){this.B=a.call(this,this.B,this.X)}function jg(a){this.B=a.call(this,this.B,this.H)}function kg(a){this.B=a.call(this,this.B,this.F)}function lg(a){this.B=a.call(this,this.B,this.D)}function mg(a){this.X=a.call(this,this.X,this.G)}function ng(a){this.X=a.call(this,this.X,this.I)} +function og(a){this.X=a.call(this,this.X,this.J)}function pg(a){this.X=a.call(this,this.X,this.B)}function qg(a){this.X=a.call(this,this.X,this.X)}function rg(a){this.X=a.call(this,this.X,this.H)}function sg(a){this.X=a.call(this,this.X,this.F)}function tg(a){this.X=a.call(this,this.X,this.D)}function ug(a){this.H=a.call(this,this.H,this.G)}function vg(a){this.H=a.call(this,this.H,this.I)}function wg(a){this.H=a.call(this,this.H,this.J)}function xg(a){this.H=a.call(this,this.H,this.B)} +function yg(a){this.H=a.call(this,this.H,this.X)}function zg(a){this.H=a.call(this,this.H,this.H)}function Ag(a){this.H=a.call(this,this.H,this.F)}function Bg(a){this.H=a.call(this,this.H,this.D)}function Cg(a){this.F=a.call(this,this.F,this.G)}function Dg(a){this.F=a.call(this,this.F,this.I)}function Eg(a){this.F=a.call(this,this.F,this.J)}function Fg(a){this.F=a.call(this,this.F,this.B)}function Gg(a){this.F=a.call(this,this.F,this.X)}function Hg(a){this.F=a.call(this,this.F,this.H)} +function Ig(a){this.F=a.call(this,this.F,this.F)}function Jg(a){this.F=a.call(this,this.F,this.D)}function Kg(a){this.D=a.call(this,this.D,this.G)}function Lg(a){this.D=a.call(this,this.D,this.I)}function Mg(a){this.D=a.call(this,this.D,this.J)}function Ng(a){this.D=a.call(this,this.D,this.B)}function Og(a){this.D=a.call(this,this.D,this.X)}function Pg(a){this.D=a.call(this,this.D,this.H)}function Qg(a){this.D=a.call(this,this.D,this.F)}function Rg(a){this.D=a.call(this,this.D,this.D)} +var Sg=[function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.G&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.G&255);this.Q(a);this.A-=this.aa},function(a){a= +a.call(this,this.N(this.C,this.D),this.G&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.G&255);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.G&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.I&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.I&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F& +65535),this.I&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.I&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.I&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.I&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.I&255);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.I&255);this.Q(a);this.A-=this.aa},function(a){a= +a.call(this,this.N(this.C,this.B+this.F&65535),this.J&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.J&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.J&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.J&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C, +this.D),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.J&255);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.J&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.B&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.B&255);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.B&255);this.Q(a); +this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.B&255);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.B&255);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.B&255);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C, +this.B+this.F&65535),this.G>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.G>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.G>>8); +this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.G>>8);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.G>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.I>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.I>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.I>>8);this.Q(a);this.A-=this.ga},function(a){a= +a.call(this,this.N(this.M,this.H+this.D&65535),this.I>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.I>>8);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.I>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.J>>8); +this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.J>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.J>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.J>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a= +a.call(this,this.N(this.C,this.K()),this.J>>8);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.J>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.B>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.B>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.B>>8);this.Q(a);this.A-=this.ga},function(a){a=a.call(this,this.N(this.M,this.H+ +this.D&65535),this.B>>8);this.Q(a);this.A-=this.fa},function(a){a=a.call(this,this.N(this.C,this.F),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.D),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.K()),this.B>>8);this.Q(a);this.A-=this.ua},function(a){a=a.call(this,this.N(this.C,this.B),this.B>>8);this.Q(a);this.A-=this.aa},function(a){a=a.call(this,this.N(this.C,this.B+this.F+this.L()&65535),this.G&255);this.Q(a);this.A-=this.V}, function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.L()&65535),this.G&255);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.L()&65535),this.G&255);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.L()&65535),this.G&255);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.F+this.L()&65535),this.G&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.L()&65535),this.G&255);this.Q(a); this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.L()&65535),this.G&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.L()&65535),this.G&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.F+this.L()&65535),this.I&255);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.L()&65535),this.I&255);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.L()&65535), this.I&255);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.L()&65535),this.I&255);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.F+this.L()&65535),this.I&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.L()&65535),this.I&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.L()&65535),this.I&255);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.L()& @@ -151,18 +151,18 @@ this.V},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.I>>8 this.V},function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.K()&65535),this.J>>8); this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.F+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.K()& 65535),this.B>>8);this.Q(a);this.A-=this.W},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.K()& -65535),this.B>>8);this.Q(a);this.A-=this.P},ye,Ge,Oe,We,df,mf,uf,Cf,ze,He,Pe,Xe,ef,nf,vf,Df,Ae,Ie,Qe,Ye,ff,of,wf,Ef,Be,Je,Re,Ze,gf,pf,xf,Ff,Ce,Ke,Se,$e,hf,qf,yf,Gf,De,Le,Te,af,jf,rf,zf,Hf,Ee,Me,Ue,bf,kf,sf,Af,If,Fe,Ne,Ve,cf,lf,tf,Bf,Jf],Wg=[function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.G);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.G);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.G); -this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.G);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.G);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+ -this.F&65535),this.I);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.I);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.I);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.I);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.I);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.I);this.R(a);this.A-=this.aa}, -function(a){a=a.call(this,this.O(this.C,this.K()),this.I);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.I);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.J);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.J);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.J);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+ -this.D&65535),this.J);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.J);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.B);this.R(a);this.A-=this.ea},function(a){a=a.call(this, -this.O(this.C,this.B+this.D&65535),this.B);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.B);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.B);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.B);this.R(a);this.A-= -this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.X);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.X);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.X);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.X);this.R(a);this.A-=this.ea},function(a){a=a.call(this, -this.O(this.C,this.F),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.X);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.H);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.H);this.R(a);this.A-=this.fa},function(a){a= -a.call(this,this.O(this.M,this.H+this.F&65535),this.H);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.H);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.H);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.H);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.H);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.H);this.R(a);this.A-= -this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.F);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.F);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.F);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.F);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this, -this.O(this.C,this.D),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.F);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.D);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.D);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.D);this.R(a);this.A-= -this.fa},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.D);this.R(a);this.A-=this.ea},function(a){a=a.call(this,this.O(this.C,this.F),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.D);this.R(a);this.A-=this.ta},function(a){a=a.call(this,this.O(this.C,this.B),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.L()& +65535),this.B>>8);this.Q(a);this.A-=this.P},ve,De,Le,Te,af,jf,rf,zf,we,Ee,Me,Ue,bf,kf,sf,Af,xe,Fe,Ne,Ve,cf,lf,tf,Bf,ye,Ge,Oe,We,df,mf,uf,Cf,ze,He,Pe,Xe,ef,nf,vf,Df,Ae,Ie,Qe,Ye,ff,of,wf,Ef,Be,Je,Re,Ze,gf,pf,xf,Ff,Ce,Ke,Se,$e,hf,qf,yf,Gf],Tg=[function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.G);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.G);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.G); +this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.G);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.G);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.G);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+ +this.F&65535),this.I);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.I);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.I);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.I);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.I);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.I);this.R(a);this.A-=this.aa}, +function(a){a=a.call(this,this.O(this.C,this.K()),this.I);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.I);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.J);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.J);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.J);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+ +this.D&65535),this.J);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.J);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.J);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.B);this.R(a);this.A-=this.fa},function(a){a=a.call(this, +this.O(this.C,this.B+this.D&65535),this.B);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.B);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.B);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.B);this.R(a);this.A-= +this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.B);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.X);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.X);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.X);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.X);this.R(a);this.A-=this.fa},function(a){a=a.call(this, +this.O(this.C,this.F),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.X);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.X);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.H);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.H);this.R(a);this.A-=this.ga},function(a){a= +a.call(this,this.O(this.M,this.H+this.F&65535),this.H);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.H);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.H);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.H);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.H);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.H);this.R(a);this.A-= +this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.F);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.F);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.F);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.F);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this, +this.O(this.C,this.D),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.F);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.F);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.D);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.D);this.R(a);this.A-=this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.D);this.R(a);this.A-= +this.ga},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.D);this.R(a);this.A-=this.fa},function(a){a=a.call(this,this.O(this.C,this.F),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.D),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.K()),this.D);this.R(a);this.A-=this.ua},function(a){a=a.call(this,this.O(this.C,this.B),this.D);this.R(a);this.A-=this.aa},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.L()& 65535),this.G);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.L()&65535),this.G);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.L()&65535),this.G);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.L()&65535),this.G);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.F+this.L()&65535),this.G);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.L()& 65535),this.G);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.L()&65535),this.G);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.L()&65535),this.G);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.L()&65535),this.I);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.L()&65535),this.I);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.L()& 65535),this.I);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.L()&65535),this.I);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.F+this.L()&65535),this.I);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.L()&65535),this.I);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.L()&65535),this.I);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.L()&65535),this.I); @@ -188,20 +188,20 @@ this.F+this.K()&65535),this.H);this.R(a);this.A-=this.W},function(a){a=a.call(th 65535),this.H);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.K()&65535),this.F);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.K()&65535),this.F);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.K()&65535),this.F);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.K()&65535),this.F);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.F+ this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.K()&65535),this.D);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.K()& 65535),this.D);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.K()&65535),this.D);this.R(a);this.A-=this.W},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.K()&65535),this.D);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.C,this.F+this.K()&65535),this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.K()&65535),this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.K()&65535), -this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.D);this.R(a);this.A-=this.P},Kf,Sf,$f,hg,pg,xg,Fg,Ng,Lf,Tf,ag,ig,qg,yg,Gg,Og,Mf,Uf,bg,jg,rg,zg,Hg,Pg,Nf,Vf,cg,kg,sg,Ag,Ig,Qg,Of,Wf,dg,lg,tg,Bg,Jg,Rg,Pf,Xf,eg,mg,ug,Cg,Kg,Sg,Qf,Yf,fg,ng,vg,Dg,Lg,Tg,Rf,Zf,gg,og,wg,Eg,Mg,Ug],Xg=[function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.F&65535));this.G=this.G&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.D& -65535));this.G=this.G&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.F&65535));this.G=this.G&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.D&65535));this.G=this.G&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.G&255,this.T(this.C,this.F));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G&255,this.T(this.C,this.D));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G&255, -this.T(this.C,this.K()));this.G=this.G&-256|a;this.A-=this.ta},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.F&65535));this.I=this.I&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.D&65535));this.I=this.I&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.I&255,this.T(this.M,this.H+this.F&65535));this.I=this.I&-256|a;this.A-=this.fa},function(a){a= -a.call(this,this.I&255,this.T(this.M,this.H+this.D&65535));this.I=this.I&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.I&255,this.T(this.C,this.F));this.I=this.I&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.D));this.I=this.I&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.K()));this.I=this.I&-256|a;this.A-=this.ta},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B));this.I=this.I&-256|a;this.A-=this.aa},function(a){a= -a.call(this,this.J&255,this.T(this.C,this.B+this.F&65535));this.J=this.J&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.J&255,this.T(this.C,this.B+this.D&65535));this.J=this.J&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.J&255,this.T(this.M,this.H+this.F&65535));this.J=this.J&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.J&255,this.T(this.M,this.H+this.D&65535));this.J=this.J&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.J&255,this.T(this.C,this.F));this.J=this.J& --256|a;this.A-=this.aa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.D));this.J=this.J&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.K()));this.J=this.J&-256|a;this.A-=this.ta},function(a){a=a.call(this,this.J&255,this.T(this.C,this.B));this.J=this.J&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B+this.F&65535));this.B=this.B&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B+this.D&65535)); -this.B=this.B&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.B&255,this.T(this.M,this.H+this.F&65535));this.B=this.B&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.B&255,this.T(this.M,this.H+this.D&65535));this.B=this.B&-256|a;this.A-=this.ea},function(a){a=a.call(this,this.B&255,this.T(this.C,this.F));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.D));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C, -this.K()));this.B=this.B&-256|a;this.A-=this.ta},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B+this.F&65535));this.G=this.G&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B+this.D&65535));this.G=this.G&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.G>>8,this.T(this.M,this.H+this.F&65535));this.G=this.G&255|a<<8;this.A-=this.fa},function(a){a=a.call(this, -this.G>>8,this.T(this.M,this.H+this.D&65535));this.G=this.G&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.F));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.D));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.K()));this.G=this.G&255|a<<8;this.A-=this.ta},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this, -this.I>>8,this.T(this.C,this.B+this.F&65535));this.I=this.I&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.B+this.D&65535));this.I=this.I&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.I>>8,this.T(this.M,this.H+this.F&65535));this.I=this.I&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.I>>8,this.T(this.M,this.H+this.D&65535));this.I=this.I&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.F));this.I=this.I&255|a<< -8;this.A-=this.aa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.D));this.I=this.I&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.K()));this.I=this.I&255|a<<8;this.A-=this.ta},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.B));this.I=this.I&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B+this.F&65535));this.J=this.J&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B+this.D&65535)); -this.J=this.J&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.F&65535));this.J=this.J&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.D&65535));this.J=this.J&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.F));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.D));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C, -this.K()));this.J=this.J&255|a<<8;this.A-=this.ta},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.F&65535));this.B=this.B&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.D&65535));this.B=this.B&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.B>>8,this.T(this.M,this.H+this.F&65535));this.B=this.B&255|a<<8;this.A-=this.fa},function(a){a=a.call(this, -this.B>>8,this.T(this.M,this.H+this.D&65535));this.B=this.B&255|a<<8;this.A-=this.ea},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.F));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.D));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.K()));this.B=this.B&255|a<<8;this.A-=this.ta},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this, +this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.D);this.R(a);this.A-=this.P},Hf,Pf,Xf,eg,mg,ug,Cg,Kg,If,Qf,Yf,fg,ng,vg,Dg,Lg,Jf,Rf,Zf,gg,og,wg,Eg,Mg,Kf,Sf,$f,hg,pg,xg,Fg,Ng,Lf,Tf,ag,ig,qg,yg,Gg,Og,Mf,Uf,bg,jg,rg,zg,Hg,Pg,Nf,Vf,cg,kg,sg,Ag,Ig,Qg,Of,Wf,dg,lg,tg,Bg,Jg,Rg],Ug=[function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.F&65535));this.G=this.G&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.D& +65535));this.G=this.G&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.F&65535));this.G=this.G&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.D&65535));this.G=this.G&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.G&255,this.T(this.C,this.F));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G&255,this.T(this.C,this.D));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G&255, +this.T(this.C,this.K()));this.G=this.G&-256|a;this.A-=this.ua},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B));this.G=this.G&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.F&65535));this.I=this.I&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.D&65535));this.I=this.I&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.I&255,this.T(this.M,this.H+this.F&65535));this.I=this.I&-256|a;this.A-=this.ga},function(a){a= +a.call(this,this.I&255,this.T(this.M,this.H+this.D&65535));this.I=this.I&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.F));this.I=this.I&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.D));this.I=this.I&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.I&255,this.T(this.C,this.K()));this.I=this.I&-256|a;this.A-=this.ua},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B));this.I=this.I&-256|a;this.A-=this.aa},function(a){a= +a.call(this,this.J&255,this.T(this.C,this.B+this.F&65535));this.J=this.J&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.B+this.D&65535));this.J=this.J&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.J&255,this.T(this.M,this.H+this.F&65535));this.J=this.J&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.J&255,this.T(this.M,this.H+this.D&65535));this.J=this.J&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.F));this.J=this.J& +-256|a;this.A-=this.aa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.D));this.J=this.J&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.J&255,this.T(this.C,this.K()));this.J=this.J&-256|a;this.A-=this.ua},function(a){a=a.call(this,this.J&255,this.T(this.C,this.B));this.J=this.J&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B+this.F&65535));this.B=this.B&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B+this.D&65535)); +this.B=this.B&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.B&255,this.T(this.M,this.H+this.F&65535));this.B=this.B&-256|a;this.A-=this.ga},function(a){a=a.call(this,this.B&255,this.T(this.M,this.H+this.D&65535));this.B=this.B&-256|a;this.A-=this.fa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.F));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C,this.D));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.B&255,this.T(this.C, +this.K()));this.B=this.B&-256|a;this.A-=this.ua},function(a){a=a.call(this,this.B&255,this.T(this.C,this.B));this.B=this.B&-256|a;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B+this.F&65535));this.G=this.G&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B+this.D&65535));this.G=this.G&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.G>>8,this.T(this.M,this.H+this.F&65535));this.G=this.G&255|a<<8;this.A-=this.ga},function(a){a=a.call(this, +this.G>>8,this.T(this.M,this.H+this.D&65535));this.G=this.G&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.F));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.D));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.K()));this.G=this.G&255|a<<8;this.A-=this.ua},function(a){a=a.call(this,this.G>>8,this.T(this.C,this.B));this.G=this.G&255|a<<8;this.A-=this.aa},function(a){a=a.call(this, +this.I>>8,this.T(this.C,this.B+this.F&65535));this.I=this.I&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.B+this.D&65535));this.I=this.I&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.I>>8,this.T(this.M,this.H+this.F&65535));this.I=this.I&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.I>>8,this.T(this.M,this.H+this.D&65535));this.I=this.I&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.F));this.I=this.I&255|a<< +8;this.A-=this.aa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.D));this.I=this.I&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.K()));this.I=this.I&255|a<<8;this.A-=this.ua},function(a){a=a.call(this,this.I>>8,this.T(this.C,this.B));this.I=this.I&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B+this.F&65535));this.J=this.J&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B+this.D&65535)); +this.J=this.J&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.F&65535));this.J=this.J&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.D&65535));this.J=this.J&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.F));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.D));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.J>>8,this.T(this.C, +this.K()));this.J=this.J&255|a<<8;this.A-=this.ua},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B));this.J=this.J&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.F&65535));this.B=this.B&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.D&65535));this.B=this.B&255|a<<8;this.A-=this.ga},function(a){a=a.call(this,this.B>>8,this.T(this.M,this.H+this.F&65535));this.B=this.B&255|a<<8;this.A-=this.ga},function(a){a=a.call(this, +this.B>>8,this.T(this.M,this.H+this.D&65535));this.B=this.B&255|a<<8;this.A-=this.fa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.F));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.D));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.K()));this.B=this.B&255|a<<8;this.A-=this.ua},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B));this.B=this.B&255|a<<8;this.A-=this.aa},function(a){a=a.call(this, this.G&255,this.T(this.C,this.B+this.F+this.L()&65535));this.G=this.G&-256|a;this.A-=this.V},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.D+this.L()&65535));this.G=this.G&-256|a;this.A-=this.W},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.F+this.L()&65535));this.G=this.G&-256|a;this.A-=this.W},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.D+this.L()&65535));this.G=this.G&-256|a;this.A-=this.V},function(a){a=a.call(this,this.G&255,this.T(this.C, this.F+this.L()&65535));this.G=this.G&-256|a;this.A-=this.P},function(a){a=a.call(this,this.G&255,this.T(this.C,this.D+this.L()&65535));this.G=this.G&-256|a;this.A-=this.P},function(a){a=a.call(this,this.G&255,this.T(this.M,this.H+this.L()&65535));this.G=this.G&-256|a;this.A-=this.P},function(a){a=a.call(this,this.G&255,this.T(this.C,this.B+this.L()&65535));this.G=this.G&-256|a;this.A-=this.P},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.F+this.L()&65535));this.I=this.I&-256|a;this.A-= this.V},function(a){a=a.call(this,this.I&255,this.T(this.C,this.B+this.D+this.L()&65535));this.I=this.I&-256|a;this.A-=this.W},function(a){a=a.call(this,this.I&255,this.T(this.M,this.H+this.F+this.L()&65535));this.I=this.I&-256|a;this.A-=this.W},function(a){a=a.call(this,this.I&255,this.T(this.M,this.H+this.D+this.L()&65535));this.I=this.I&-256|a;this.A-=this.V},function(a){a=a.call(this,this.I&255,this.T(this.C,this.F+this.L()&65535));this.I=this.I&-256|a;this.A-=this.P},function(a){a=a.call(this, @@ -231,18 +231,18 @@ a.call(this,this.I>>8,this.T(this.C,this.D+this.K()&65535));this.I=this.I&255|a< this.D+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.W},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.F+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.W},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.D+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.F+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.D+this.K()&65535));this.J=this.J& 255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>>8,this.T(this.M,this.H+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>>8,this.T(this.C,this.B+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.F+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.W},function(a){a= a.call(this,this.B>>8,this.T(this.M,this.H+this.F+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.W},function(a){a=a.call(this,this.B>>8,this.T(this.M,this.H+this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.F+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.T(this.M, -this.H+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf,of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf,Hf,If,Jf],O=[function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.G=a.call(this,this.G, -this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.G=a.call(this,this.G,this.U(this.C,this.F));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.D));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.G=a.call(this, -this.G,this.U(this.C,this.B));this.A-=this.aa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.I=a.call(this,this.I,this.U(this.C,this.F));this.A-=this.aa},function(a){this.I= -a.call(this,this.I,this.U(this.C,this.D));this.A-=this.aa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.J=a.call(this,this.J,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.J= -a.call(this,this.J,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.J=a.call(this,this.J,this.U(this.C,this.F));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.D));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.B=a.call(this, -this.B,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.B=a.call(this,this.B,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.B=a.call(this,this.B,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.B=a.call(this,this.B,this.U(this.C,this.F));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.D));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.B=a.call(this, -this.B,this.U(this.C,this.B));this.A-=this.aa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.X=a.call(this,this.X,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.X=a.call(this,this.X,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.X=a.call(this,this.X,this.U(this.C,this.F));this.A-=this.aa},function(a){this.X= -a.call(this,this.X,this.U(this.C,this.D));this.A-=this.aa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.H=a.call(this,this.H,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.H= -a.call(this,this.H,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.H=a.call(this,this.H,this.U(this.C,this.F));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.D));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.F=a.call(this, -this.F,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.F=a.call(this,this.F,this.U(this.C,this.F));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.D));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.F=a.call(this, -this.F,this.U(this.C,this.B));this.A-=this.aa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.F&65535));this.A-=this.ea},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.D&65535));this.A-=this.fa},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.F&65535));this.A-=this.fa},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.D&65535));this.A-=this.ea},function(a){this.D=a.call(this,this.D,this.U(this.C,this.F));this.A-=this.aa},function(a){this.D= -a.call(this,this.D,this.U(this.C,this.D));this.A-=this.aa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.K()));this.A-=this.ta},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.F+this.L()&65535));this.A-=this.V},function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.D+this.L()&65535));this.A-=this.W},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.F+this.L()&65535));this.A-= +this.H+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.T(this.C,this.B+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf,of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf],O=[function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.G=a.call(this,this.G, +this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.F));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.D));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.G=a.call(this, +this.G,this.U(this.C,this.B));this.A-=this.aa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.F));this.A-=this.aa},function(a){this.I= +a.call(this,this.I,this.U(this.C,this.D));this.A-=this.aa},function(a){this.I=a.call(this,this.I,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.J=a.call(this,this.J,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.J= +a.call(this,this.J,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.F));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.D));this.A-=this.aa},function(a){this.J=a.call(this,this.J,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.B=a.call(this, +this.B,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.B=a.call(this,this.B,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.B=a.call(this,this.B,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.F));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.D));this.A-=this.aa},function(a){this.B=a.call(this,this.B,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.B=a.call(this, +this.B,this.U(this.C,this.B));this.A-=this.aa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.X=a.call(this,this.X,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.X=a.call(this,this.X,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.F));this.A-=this.aa},function(a){this.X= +a.call(this,this.X,this.U(this.C,this.D));this.A-=this.aa},function(a){this.X=a.call(this,this.X,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.X=a.call(this,this.X,this.U(this.C,this.B));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.H=a.call(this,this.H,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.H= +a.call(this,this.H,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.F));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.D));this.A-=this.aa},function(a){this.H=a.call(this,this.H,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.F=a.call(this, +this.F,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.F));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.D));this.A-=this.aa},function(a){this.F=a.call(this,this.F,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.F=a.call(this, +this.F,this.U(this.C,this.B));this.A-=this.aa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.F&65535));this.A-=this.fa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.D&65535));this.A-=this.ga},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.F&65535));this.A-=this.ga},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.D&65535));this.A-=this.fa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.F));this.A-=this.aa},function(a){this.D= +a.call(this,this.D,this.U(this.C,this.D));this.A-=this.aa},function(a){this.D=a.call(this,this.D,this.U(this.C,this.K()));this.A-=this.ua},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B));this.A-=this.aa},function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.F+this.L()&65535));this.A-=this.V},function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.D+this.L()&65535));this.A-=this.W},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.F+this.L()&65535));this.A-= this.W},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.D+this.L()&65535));this.A-=this.V},function(a){this.G=a.call(this,this.G,this.U(this.C,this.F+this.L()&65535));this.A-=this.P},function(a){this.G=a.call(this,this.G,this.U(this.C,this.D+this.L()&65535));this.A-=this.P},function(a){this.G=a.call(this,this.G,this.U(this.M,this.H+this.L()&65535));this.A-=this.P},function(a){this.G=a.call(this,this.G,this.U(this.C,this.B+this.L()&65535));this.A-=this.P},function(a){this.I=a.call(this, this.I,this.U(this.C,this.B+this.F+this.L()&65535));this.A-=this.V},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.D+this.L()&65535));this.A-=this.W},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.F+this.L()&65535));this.A-=this.W},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.D+this.L()&65535));this.A-=this.V},function(a){this.I=a.call(this,this.I,this.U(this.C,this.F+this.L()&65535));this.A-=this.P},function(a){this.I=a.call(this,this.I,this.U(this.C, this.D+this.L()&65535));this.A-=this.P},function(a){this.I=a.call(this,this.I,this.U(this.M,this.H+this.L()&65535));this.A-=this.P},function(a){this.I=a.call(this,this.I,this.U(this.C,this.B+this.L()&65535));this.A-=this.P},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.F+this.L()&65535));this.A-=this.V},function(a){this.J=a.call(this,this.J,this.U(this.C,this.B+this.D+this.L()&65535));this.A-=this.W},function(a){this.J=a.call(this,this.J,this.U(this.M,this.H+this.F+this.L()&65535)); @@ -266,20 +266,20 @@ a.call(this,this.H,this.U(this.C,this.B+this.F+this.K()&65535));this.A-=this.V}, this.U(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.H=a.call(this,this.H,this.U(this.M,this.H+this.K()&65535));this.A-=this.P},function(a){this.H=a.call(this,this.H,this.U(this.C,this.B+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.U(this.C,this.B+this.F+this.K()&65535));this.A-=this.V},function(a){this.F=a.call(this,this.F,this.U(this.C,this.B+this.D+this.K()&65535));this.A-=this.W},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.F+ this.K()&65535));this.A-=this.W},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.D+this.K()&65535));this.A-=this.V},function(a){this.F=a.call(this,this.F,this.U(this.C,this.F+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.U(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.U(this.M,this.H+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.U(this.C,this.B+this.K()&65535));this.A-=this.P},function(a){this.D= a.call(this,this.D,this.U(this.C,this.B+this.F+this.K()&65535));this.A-=this.V},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.D+this.K()&65535));this.A-=this.W},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.F+this.K()&65535));this.A-=this.W},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.D+this.K()&65535));this.A-=this.V},function(a){this.D=a.call(this,this.D,this.U(this.C,this.F+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D, -this.U(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.K()&65535));this.A-=this.P},Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug],Yg=[function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.F&65535), -b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[0].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[0].call(this, -this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[0].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[0].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c= -a[1].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[1].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a, -b){var c=a[1].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[2].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.N(this.M,this.H+this.D&65535),b.call(this)); -this.Q(c);this.A-=this.ea},function(a,b){var c=a[2].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[2].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C,this.B+this.F&65535),b.call(this)); -this.Q(c);this.A-=this.ea},function(a,b){var c=a[3].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[3].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C, -this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[3].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[4].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[4].call(this, -this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[4].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c= -a[4].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[5].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c); -this.A-=this.ea},function(a,b){var c=a[5].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[5].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c); -this.A-=this.ea},function(a,b){var c=a[6].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[6].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.D), -b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[6].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[7].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.N(this.M, -this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ea},function(a,b){var c=a[7].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ta},function(a,b){var c=a[7].call(this, +this.U(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.U(this.M,this.H+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.U(this.C,this.B+this.K()&65535));this.A-=this.P},Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg],Vg=[function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.F&65535), +b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[0].call(this, +this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[0].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[0].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c= +a[1].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[1].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a, +b){var c=a[1].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[2].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[2].call(this,this.N(this.M,this.H+this.D&65535),b.call(this)); +this.Q(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[2].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C,this.B+this.F&65535),b.call(this)); +this.Q(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[3].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[3].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C, +this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[3].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[4].call(this, +this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[4].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c= +a[4].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[5].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[5].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c); +this.A-=this.fa},function(a,b){var c=a[5].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[5].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c); +this.A-=this.fa},function(a,b){var c=a[6].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[6].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[6].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.D), +b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[6].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[7].call(this,this.N(this.M, +this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ga},function(a,b){var c=a[7].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.ua},function(a,b){var c=a[7].call(this, this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.aa},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.F+this.L()&65535),b.call(this));this.Q(c);this.A-=this.V},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.D+this.L()&65535),b.call(this));this.Q(c);this.A-=this.W},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.F+this.L()&65535),b.call(this));this.Q(c);this.A-=this.W},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.D+this.L()&65535),b.call(this)); this.Q(c);this.A-=this.V},function(a,b){var c=a[0].call(this,this.N(this.C,this.F+this.L()&65535),b.call(this));this.Q(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.N(this.C,this.D+this.L()&65535),b.call(this));this.Q(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.L()&65535),b.call(this));this.Q(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.L()&65535),b.call(this));this.Q(c);this.A-=this.P},function(a,b){var c=a[1].call(this, this.N(this.C,this.B+this.F+this.L()&65535),b.call(this));this.Q(c);this.A-=this.V},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.D+this.L()&65535),b.call(this));this.Q(c);this.A-=this.W},function(a,b){var c=a[1].call(this,this.N(this.M,this.H+this.F+this.L()&65535),b.call(this));this.Q(c);this.A-=this.W},function(a,b){var c=a[1].call(this,this.N(this.M,this.H+this.D+this.L()&65535),b.call(this));this.Q(c);this.A-=this.V},function(a,b){var c=a[1].call(this,this.N(this.C,this.F+this.L()& @@ -319,20 +319,20 @@ this.G&255|c<<8},function(a,b){var c=a[3].call(this,this.I>>8,b.call(this));this c},function(a,b){var c=a[5].call(this,this.I&255,b.call(this));this.I=this.I&-256|c},function(a,b){var c=a[5].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[5].call(this,this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[5].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[5].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[5].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a, b){var c=a[5].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8},function(a,b){var c=a[6].call(this,this.G&255,b.call(this));this.G=this.G&-256|c},function(a,b){var c=a[6].call(this,this.I&255,b.call(this));this.I=this.I&-256|c},function(a,b){var c=a[6].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[6].call(this,this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[6].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c= a[6].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[6].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[6].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8},function(a,b){var c=a[7].call(this,this.G&255,b.call(this));this.G=this.G&-256|c},function(a,b){var c=a[7].call(this,this.I&255,b.call(this));this.I=this.I&-256|c},function(a,b){var c=a[7].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[7].call(this, -this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[7].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[7].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8}],Zg=[function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a, -b){var c=a[0].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[0].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[0].call(this,this.O(this.C,this.D),b.call(this));this.R(c); -this.A-=this.aa},function(a,b){var c=a[0].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[0].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.F&65535), -b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[1].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[1].call(this,this.O(this.C,this.B), -b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[2].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c= -a[2].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[2].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c= -a[3].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[3].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa}, -function(a,b){var c=a[3].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[3].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[4].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.O(this.M,this.H+this.F&65535),b.call(this)); -this.R(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[4].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[4].call(this,this.O(this.C,this.B),b.call(this)); -this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[5].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[5].call(this, -this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[5].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[6].call(this, -this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[6].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a, -b){var c=a[6].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[6].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[7].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c); -this.A-=this.fa},function(a,b){var c=a[7].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ea},function(a,b){var c=a[7].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ta},function(a,b){var c=a[7].call(this,this.O(this.C,this.B),b.call(this));this.R(c); +this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[7].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[7].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8}],Wg=[function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a, +b){var c=a[0].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[0].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[0].call(this,this.O(this.C,this.D),b.call(this));this.R(c); +this.A-=this.aa},function(a,b){var c=a[0].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[0].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.F&65535), +b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[1].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[1].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[1].call(this,this.O(this.C,this.B), +b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[2].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[2].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[2].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c= +a[2].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[2].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[2].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c= +a[3].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[3].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[3].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[3].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[3].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa}, +function(a,b){var c=a[3].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[3].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[4].call(this,this.O(this.M,this.H+this.F&65535),b.call(this)); +this.R(c);this.A-=this.ga},function(a,b){var c=a[4].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[4].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[4].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[4].call(this,this.O(this.C,this.B),b.call(this)); +this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[5].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[5].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[5].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[5].call(this, +this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[5].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[5].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[6].call(this, +this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[6].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[6].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[6].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[6].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a, +b){var c=a[6].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[6].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ga},function(a,b){var c=a[7].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c); +this.A-=this.ga},function(a,b){var c=a[7].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.fa},function(a,b){var c=a[7].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.aa},function(a,b){var c=a[7].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.ua},function(a,b){var c=a[7].call(this,this.O(this.C,this.B),b.call(this));this.R(c); this.A-=this.aa},function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.F+this.L()&65535),b.call(this));this.R(c);this.A-=this.V},function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.D+this.L()&65535),b.call(this));this.R(c);this.A-=this.W},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.F+this.L()&65535),b.call(this));this.R(c);this.A-=this.W},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.D+this.L()&65535),b.call(this));this.R(c);this.A-=this.V},function(a, b){var c=a[0].call(this,this.O(this.C,this.F+this.L()&65535),b.call(this));this.R(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.O(this.C,this.D+this.L()&65535),b.call(this));this.R(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.L()&65535),b.call(this));this.R(c);this.A-=this.P},function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.L()&65535),b.call(this));this.R(c);this.A-=this.P},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.F+this.L()& 65535),b.call(this));this.R(c);this.A-=this.V},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.D+this.L()&65535),b.call(this));this.R(c);this.A-=this.W},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.F+this.L()&65535),b.call(this));this.R(c);this.A-=this.W},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.D+this.L()&65535),b.call(this));this.R(c);this.A-=this.V},function(a,b){var c=a[1].call(this,this.O(this.C,this.F+this.L()&65535),b.call(this));this.R(c);this.A-= @@ -369,371 +369,372 @@ this.G,b.call(this))},function(a,b){this.I=a[3].call(this,this.I,b.call(this))}, a[4].call(this,this.I,b.call(this))},function(a,b){this.J=a[4].call(this,this.J,b.call(this))},function(a,b){this.B=a[4].call(this,this.B,b.call(this))},function(a,b){this.X=a[4].call(this,this.X,b.call(this))},function(a,b){this.H=a[4].call(this,this.H,b.call(this))},function(a,b){this.F=a[4].call(this,this.F,b.call(this))},function(a,b){this.D=a[4].call(this,this.D,b.call(this))},function(a,b){this.G=a[5].call(this,this.G,b.call(this))},function(a,b){this.I=a[5].call(this,this.I,b.call(this))}, function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.B=a[5].call(this,this.B,b.call(this))},function(a,b){this.X=a[5].call(this,this.X,b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.D=a[5].call(this,this.D,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.J=a[6].call(this,this.J, b.call(this))},function(a,b){this.B=a[6].call(this,this.B,b.call(this))},function(a,b){this.$|=512;this.X=a[6].call(this,this.X,b.call(this))},function(a,b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.D=a[6].call(this,this.D,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a, -b){this.B=a[7].call(this,this.B,b.call(this))},function(a,b){this.X=a[7].call(this,this.X,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))},function(a,b){this.D=a[7].call(this,this.D,b.call(this))}],ah=[function(){var a=this.da();16>(a&56)&&(this.$|=1);Zg[a].call(this,Gc,Wd)},function(){var a=this.da();a&16||(this.$|=1);Zg[a].call(this,$g,Wd)},function(){O[this.da()].call(this,ue)},function(){O[this.da()].call(this,ve)}, -N,N,N,N,N,N,N,bc,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N, -N,N],Hc=[function(){this.A-=2+(0>this.ga?0:1);return this.Jd.na},function(){this.A-=2+(0>this.ga?0:1);return this.tg.na},function(a){this.$|=2;this.Jd.load(a);this.A-=17+(0>this.ga?0:2);return a},function(a){this.$|=2;this.tg.load(a);this.A-=17+(0>this.ga?0:2);return a},function(a){this.$|=2;this.A-=14+(0>this.ga?0:2);if(0<=this.Pb.load(a,!0)&&2048!=(this.Pb.Ya&2560)&&(3072==(this.Pb.Ya&3072)||this.Pb.Kc>=(this.qa.na&3)&&this.Pb.Kc>=(a&3)))return ed(this),a;$c(this);return a},function(a){this.$|= -2;this.A-=14+(0>this.ga?0:2);if(0<=this.Pb.load(a,!0)&&512==(this.Pb.Ya&2560)&&this.Pb.Kc>=(this.qa.na&3)&&this.Pb.Kc>=(a&3))return ed(this),a;$c(this);return a},M,M],Ic=[tc,tc,tc,tc,tc,tc,M,M],Gc=Ic,$g=[function(a){0>this.ga?bc.call(this):(this.Ld(this.ga+2,this.Oc),this.Zc(this.ga+4,this.Oc>>16),a=this.Ue-this.Oc,this.A-=11);return a},function(a){0>this.ga?bc.call(this):(this.Ld(this.ga+2,this.bd),this.Zc(this.ga+4,this.bd>>16),a=this.qe-this.bd,this.A-=12);return a},function(a){0>this.ga?bc.call(this): -(this.Oc=this.Ga(this.ga+2)|this.rb(this.ga+4)<<16,this.Ue=this.Oc+a,this.$|=2,this.A-=11);return a},function(a){0>this.ga?bc.call(this):(this.bd=this.Ga(this.ga+2)|this.rb(this.ga+4)<<16,this.qe=this.bd+a,this.$|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ga?0:1);return this.Yc},M,function(a){this.Yc=this.Yc&65520|a&-65521;this.A-=3+(0>this.ga?0:3);this.Yc&1&&Bc(this,!0);this.$|=2;return a},M];function vc(){ah[this.da()].call(this)}function xc(){K(this,this.X);this.A-=this.oc} -function cc(){var a=this.X;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.zl}function dc(){this.D=this.Ha();this.F=this.Ha();this.H=this.Ha();this.X+=2;this.B=this.Ha();this.J=this.Ha();this.I=this.Ha();this.G=this.Ha();this.A-=this.xl}function ec(){O[this.da()].call(this,se)}function wc(){Wg[this.da()].call(this,te)}function fc(){K(this,this.K());this.A-=this.oc}function gc(){O[this.da()].call(this,ne)} -function hc(){K(this,this.da());this.A-=this.oc}function ic(){O[this.da()].call(this,me)}function jc(){var a=1,b=0,c=5;this.va&192&&(a=this.I,b=1,this.va&256&&(c=4));if(a--){var d=kb(this.ma,this.J,this.Ba-b-1);this.Zc(this.$a.Yb(this.D,0),d);this.D=this.D+(this.wa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}} -function kc(){var a=1,b=0,c=5;this.va&192&&(a=this.I,b=1,this.va&256&&(c=4));if(a--){var d=this.Ba-b-1,d=kb(this.ma,this.J,d)|kb(this.ma,this.J,d)<<8;this.Ld(this.$a.Yb(this.D,1),d);this.D=this.D+(this.wa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}} -function lc(){var a=1,b=0,c=5;this.va&192&&(a=this.I,b=1,this.va&256&&(c=4));if(a--){var d=this.rb(this.Ob.Sc(this.F,0));this.F=this.F+(this.wa&1024?-1:1)&65535;this.A-=c;this.I-=b;nb(this.ma,this.J,d,this.Ba-b-1);a&&(J(this,-2),this.$|=256)}} -function mc(){var a=1,b=0,c=5;this.va&192&&(a=this.I,b=1,this.va&256&&(c=4));if(a--){var d=this.Ga(this.Ob.Sc(this.F,1));this.F=this.F+(this.wa&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Ba-b-1;nb(this.ma,this.J,d&255,b);nb(this.ma,this.J,d>>8,b);a&&(J(this,-2),this.$|=256)}}function bh(){var a=this.L();Xc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function ch(){var a=this.L();Xc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)} -function dh(){var a=this.L();Sc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function eh(){var a=this.L();Sc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)}function fh(){var a=this.L();Vc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function gh(){var a=this.L();Vc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)}function hh(){var a=this.L();Sc(this)||Vc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb} -function ih(){var a=this.L();Sc(this)||Vc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)}function jh(){var a=this.L();Wc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function kh(){var a=this.L();Wc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)}function lh(){var a=this.L();Tc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function mh(){var a=this.L();Tc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)} -function nh(){var a=this.L();!Wc(this)!=!Xc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function oh(){var a=this.L();!Wc(this)==!Xc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function ph(){var a=this.L();Vc(this)||!Wc(this)!=!Xc(this)?(I(this,this.ra+a),this.A-=this.Ub):this.A-=this.Vb}function qh(){var a=this.L();Vc(this)||!Wc(this)!=!Xc(this)?this.A-=this.Vb:(I(this,this.ra+a),this.A-=this.Ub)} -function rh(){Yg[this.da()].call(this,Yd,this.da);this.A-=0>this.Ia?1:this.rh}function nc(){Yg[this.da()].call(this,ge,Sd)}function oc(){Zg[this.da()].call(this,he,Sd)}function sh(){var a=this.K();I(this,this.Ha());this.X=this.X+a&65535;this.A-=this.El}function th(){I(this,this.Ha());this.A-=this.Bl} -function pc(){var a=this.K(),b=this.da()&31;this.A-=11;K(this,this.H);var c=this.X;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.H=this.H-2&65535,K(this,this.Ga(this.Cb.Sc(this.H,1)));K(this,c)}this.H=c;this.X=this.X-a&65535}function qc(){this.X=this.H;this.H=this.Ha();this.A-=5}function uh(){var a=this.K();zc(this,this.Ha(),this.Ha());this.X=this.X+a&65535;this.Rg&&Fc(this,this.Ba);this.A-=this.Dl}function vh(){zc(this,this.Ha(),this.Ha());this.A-=this.Cl} -function wh(){O[this.da()].call(this,oe);this.A-=8}function xh(){this.$|=36;this.A-=this.Nb}function rc(){N.call(this)} -var ac=[function(){var a=this.da();Vg[a].call(this,ld)},function(){Wg[this.da()].call(this,td)},function(){Xg[this.da()].call(this,ld)},function(){O[this.da()].call(this,td)},function(){this.G=this.G&-256|ld.call(this,this.G&255,this.da());this.A--},function(){this.G=td.call(this,this.G,this.K());this.A--},function(){K(this,this.$a.na);this.A-=this.ig},function(){Rc(this,this.Ha());this.A-=this.hc},function(){Vg[this.da()].call(this,md)},function(){Wg[this.da()].call(this,ud)},function(){Xg[this.da()].call(this, -md)},function(){O[this.da()].call(this,ud)},function(){this.G=this.G&-256|md.call(this,this.G&255,this.da());this.A--},function(){this.G=ud.call(this,this.G,this.K());this.A--},function(){K(this,this.qa.na);this.A-=this.ig},function(){Lc(this,this.Ha());this.A-=this.hc},function(){Vg[this.da()].call(this,nd)},function(){Wg[this.da()].call(this,vd)},function(){Xg[this.da()].call(this,nd)},function(){O[this.da()].call(this,vd)},function(){this.G=this.G&-256|nd.call(this,this.G&255,this.da());this.A--}, -function(){this.G=vd.call(this,this.G,this.K());this.A--},function(){K(this,this.Cb.na);this.A-=this.ig},function(){Qc(this,this.Ha());this.A-=this.hc},function(){Vg[this.da()].call(this,od)},function(){Wg[this.da()].call(this,wd)},function(){Xg[this.da()].call(this,od)},function(){O[this.da()].call(this,wd)},function(){this.G=this.G&-256|od.call(this,this.G&255,this.da());this.A--},function(){this.G=wd.call(this,this.G,this.K());this.A--},function(){K(this,this.Ob.na);this.A-=this.ig},function(){Pc(this, -this.Ha());this.A-=this.hc},function(){Vg[this.da()].call(this,pd)},function(){Wg[this.da()].call(this,xd)},function(){Xg[this.da()].call(this,pd)},function(){O[this.da()].call(this,xd)},function(){this.G=this.G&-256|pd.call(this,this.G&255,this.da());this.A--},function(){this.G=xd.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.$a;this.A-=this.Nb},function(){var a=this.G&255,b=Uc(this),c=this.Y&this.ca;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.G=this.G&-256| -(this.Y=this.ia=a&255);this.ca=65536;c&&(this.Y|=this.ca);b?dd(this):Zc(this);this.A-=this.Fe},function(){Vg[this.da()].call(this,qd)},function(){Wg[this.da()].call(this,yd)},function(){Xg[this.da()].call(this,qd)},function(){O[this.da()].call(this,yd)},function(){this.G=this.G&-256|qd.call(this,this.G&255,this.da());this.A--},function(){this.G=yd.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.qa;this.A-=this.Nb},function(){var a=this.G&255,b=Uc(this),c=this.Y&this.ca; -if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.G=this.G&-256|(this.Y=this.ia=a&255);this.ca=65536;c&&(this.Y|=this.ca);b?dd(this):Zc(this);this.A-=this.Fe},function(){Vg[this.da()].call(this,rd)},function(){Wg[this.da()].call(this,zd)},function(){Xg[this.da()].call(this,rd)},function(){O[this.da()].call(this,zd)},function(){this.G=this.G&-256|rd.call(this,this.G&255,this.da());this.A--},function(){this.G=zd.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.Cb;this.A-= -this.Nb},function(){var a=this.G&255,b=this.G>>8,c,d=Uc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Y=a);this.ca=65536;c&&(this.Y|=this.ca);d?dd(this):Zc(this);this.A-=this.Fe},function(){Vg[this.da()].call(this,sd)},function(){Wg[this.da()].call(this,Ad)},function(){Xg[this.da()].call(this,sd)},function(){O[this.da()].call(this,Ad)},function(){this.G=this.G&-256|sd.call(this,this.G&255,this.da());this.A--},function(){this.G=Ad.call(this,this.G,this.K());this.A--},function(){this.$|= -20;this.C=this.M=this.Ob;this.A-=this.Nb},function(){var a=this.G&255,b=this.G>>8,c,d=Uc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Y=a);this.ca=65536;c&&(this.Y|=this.ca);d?dd(this):Zc(this);this.A-=this.Fe},function(){this.la=this.G;this.G=(this.ia=this.G+1)&65535;this.Y=this.G|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.I;this.I=(this.ia=this.I+1)&65535;this.Y=this.I|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.J; -this.J=(this.ia=this.J+1)&65535;this.Y=this.J|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.B;this.B=(this.ia=this.B+1)&65535;this.Y=this.B|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.X;this.X=(this.ia=this.X+1)&65535;this.Y=this.X|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.H;this.H=(this.ia=this.H+1)&65535;this.Y=this.H|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.F;this.F=(this.ia= -this.F+1)&65535;this.Y=this.F|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.D;this.D=(this.ia=this.D+1)&65535;this.Y=this.D|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.G;this.G=(this.ia=this.G-1)&65535;this.Y=this.G|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.I;this.I=(this.ia=this.I-1)&65535;this.Y=this.I|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.J;this.J=(this.ia=this.J-1)&65535; -this.Y=this.J|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.B;this.B=(this.ia=this.B-1)&65535;this.Y=this.B|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.X;this.X=(this.ia=this.X-1)&65535;this.Y=this.X|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.H;this.H=(this.ia=this.H-1)&65535;this.Y=this.H|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.F;this.F=(this.ia=this.F-1)&65535;this.Y=this.F| -(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.la=this.D;this.D=(this.ia=this.D-1)&65535;this.Y=this.D|(this.Y&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){K(this,this.G);this.A-=this.oc},function(){K(this,this.I);this.A-=this.oc},function(){K(this,this.J);this.A-=this.oc},function(){K(this,this.B);this.A-=this.oc},function(){K(this,this.X-2&65535);this.A-=this.oc},function(){K(this,this.H);this.A-=this.oc},function(){K(this,this.F);this.A-=this.oc},function(){K(this,this.D); -this.A-=this.oc},function(){this.G=this.Ha();this.A-=this.hc},function(){this.I=this.Ha();this.A-=this.hc},function(){this.J=this.Ha();this.A-=this.hc},function(){this.B=this.Ha();this.A-=this.hc},function(){this.X=this.Ha();this.A-=this.hc},function(){this.H=this.Ha();this.A-=this.hc},function(){this.F=this.Ha();this.A-=this.hc},function(){this.D=this.Ha();this.A-=this.hc},bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,rh,function(){Zg[this.da()].call(this, -Zd,this.K);this.A-=0>this.Ia?1:this.rh},rh,function(){Zg[this.da()].call(this,Zd,this.L);this.A-=0>this.Ia?1:this.rh},function(){Vg[this.da()].call(this,ke)},function(){Wg[this.da()].call(this,le)},function(){Xg[this.Kg=this.da()].call(this,we)},function(){O[this.Kg=this.da()].call(this,xe)},function(){this.$|=1;Vg[this.da()].call(this,ie)},function(){this.$|=1;Wg[this.da()].call(this,ie)},function(){Xg[this.da()].call(this,ie)},function(){O[this.da()].call(this,ie)},function(){var a=this.da();switch((a& -56)>>3){case 0:this.Bb=this.$a.na;break;case 1:this.Bb=this.qa.na;break;case 2:this.Bb=this.Cb.na;break;case 3:this.Bb=this.Ob.na;break;default:N.call(this);return}this.$|=1;Wg[a].call(this,je)},function(){this.$|=1;this.C=this.M=this.Xl;O[this.da()].call(this,pe)},function(){var a,b=this.da(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Fa){bc.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.X;break;case 5:a=this.H; -break;case 6:a=this.F;break;case 7:a=this.D}}O[b].call(this,ie);switch(c){case 0:Rc(this,this.G);this.G=a;break;case 1:Lc(this,this.I);this.I=a;break;case 2:Qc(this,this.J);this.J=a;break;case 3:Pc(this,this.B);this.B=a;break;case 4:Rc(this,this.X);this.X=a;break;case 5:Lc(this,this.H);this.H=a;break;case 6:Qc(this,this.F);this.F=a;break;case 7:Pc(this,this.D),this.D=a}},function(){this.$|=1;Zg[this.da()].call(this,$d,this.Ha)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a; -this.A-=3},function(){var a=this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.X;this.X=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Lk},function(){var a=this.K(),b=this.K(); -K(this,this.qa.na);K(this,this.ra);zc(this,a,b);this.A-=this.Ok},function(){N.call(this)},function(){K(this,Cc(this));this.A-=this.oc},function(){Ac(this,this.Ha());this.A-=this.hc},function(){var a=this.G>>8;a&1?cd(this):Yc(this);a&4?Tc(this)||(this.ia^=1):Tc(this)&&(this.ia^=1);a&16?dd(this):Zc(this);a&64?ed(this):$c(this);a&128?fd(this):ad(this);this.A-=this.Ab},function(){this.G=this.G&255|(Cc(this)&213)<<8;this.A-=this.Ab},function(){this.G=this.G&-256|this.T(this.C,this.K());this.A-=this.Wi}, -function(){this.G=this.U(this.C,this.K());this.A-=this.Wi},function(){var a=this.K(),b=this.G;this.Zc(this.C.Yb(a,0),b);this.A-=this.Xi},function(){var a=this.K(),b=this.G;this.Ld(this.C.Yb(a,1),b);this.A-=this.Xi},function(){var a=1,b=0,c=this.Yi;this.va&192&&(a=this.I,b=1,c=this.$i,this.va&256||(this.A-=this.Zi));if(a--){var d=this.wa&1024?-1:1,e=this.T(this.C,this.F);this.Zc(this.$a.Yb(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.va&16?-3:-2),this.$|= -256)}},function(){var a=1,b=0,c=this.Yi;this.va&192&&(a=this.I,b=1,c=this.$i,this.va&256||(this.A-=this.Zi));if(a--){var d=this.wa&1024?-2:2,e=this.U(this.C,this.F);this.Ld(this.$a.Yb(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.va&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.Ii;this.va&192&&(a=this.I,b=1,c=this.Ki,this.va&256||(this.A-=this.Ji));if(a--){var d=this.wa&1024?-1:1,e=this.T(this.C,this.F),f=this.N(this.$a,this.D);sd.call(this, -e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.ob;this.I-=b;a&&Vc(this)==(this.va&64)&&(J(this,this.va&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.Ii;this.va&192&&(a=this.I,b=1,c=this.Ki,this.va&256||(this.A-=this.Ji));if(a--){var d=this.wa&1024?-2:2,e=this.U(this.C,this.F),f=this.O(this.$a,this.D);Ad.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.ob;this.I-=b;a&&Vc(this)==(this.va&64)&&(J(this,this.va&16?-3:-2),this.$|=256)}},function(){this.Y= -this.ia=this.la=this.G&255&this.da();this.ca=256;this.A-=this.Fe},function(){this.Y=this.ia=this.la=this.G&this.K();this.ca=65536;this.A-=this.Fe},function(){var a=1,b=0,c=this.ij;this.va&192&&(a=this.I,b=1,c=this.kj,this.va&256||(this.A-=this.jj));if(a--){var d=this.G;this.Zc(this.$a.Yb(this.D,0),d);this.D=this.D+(this.wa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.ij;this.va&192&&(a=this.I,b=1,c=this.kj,this.va&256||(this.A-=this.jj));if(a--){var d= -this.G;this.Ld(this.$a.Yb(this.D,1),d);this.D=this.D+(this.wa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.Qi;this.va&192&&(a=this.I,b=1,c=this.Si,this.va&256||(this.A-=this.Ri));a--&&(this.G=this.G&-256|this.T(this.C,this.F),this.F=this.F+(this.wa&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.va&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.Qi;this.va&192&&(a=this.I,b=1,c=this.Si,this.va&256||(this.A-=this.Ri));a--&&(this.G=this.U(this.C, -this.F),this.F=this.F+(this.wa&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.va&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.cj;this.va&192&&(a=this.I,b=1,c=this.ej,this.va&256||(this.A-=this.dj));a--&&(sd.call(this,this.G&255,this.N(this.$a,this.D)),this.D=this.D+(this.wa&1024?-1:1)&65535,this.A-=c-this.ob,this.I-=b,a&&Vc(this)==(this.va&64)&&(J(this,-2),this.$|=256))},function(){var a=1,b=0,c=this.cj;this.va&192&&(a=this.I,b=1,c=this.ej,this.va&256||(this.A-=this.dj));a--&&(Ad.call(this, -this.G,this.O(this.$a,this.D)),this.D=this.D+(this.wa&1024?-2:2)&65535,this.A-=c-this.ob,this.I-=b,a&&Vc(this)==(this.va&64)&&(J(this,-2),this.$|=256))},function(){this.G=this.G&-256|this.da();this.A-=this.Ab},function(){this.I=this.I&-256|this.da();this.A-=this.Ab},function(){this.J=this.J&-256|this.da();this.A-=this.Ab},function(){this.B=this.B&-256|this.da();this.A-=this.Ab},function(){this.G=this.G&255|this.da()<<8;this.A-=this.Ab},function(){this.I=this.I&255|this.da()<<8;this.A-=this.Ab},function(){this.J= -this.J&255|this.da()<<8;this.A-=this.Ab},function(){this.B=this.B&255|this.da()<<8;this.A-=this.Ab},function(){this.G=this.K();this.A-=this.Ab},function(){this.I=this.K();this.A-=this.Ab},function(){this.J=this.K();this.A-=this.Ab},function(){this.B=this.K();this.A-=this.Ab},function(){this.X=this.K();this.A-=this.Ab},function(){this.H=this.K();this.A-=this.Ab},function(){this.F=this.K();this.A-=this.Ab},function(){this.D=this.K();this.A-=this.Ab},sh,th,sh,th,function(){O[this.da()].call(this,re)}, -function(){O[this.da()].call(this,qe)},function(){this.$|=1;Yg[this.da()].call(this,ae,this.da)},function(){this.$|=1;Zg[this.da()].call(this,ae,this.K)},uh,vh,uh,vh,function(){id.call(this,3,null,this.el)},function(){var a=this.da(),b;a:{b=this.Cg[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],this.Ba)){b=!1;break a}b=!0}b?id.call(this,a,null,0):this.A--},function(){Xc(this)?id.call(this,4,null,this.fl):this.A-=this.gl},function(){zc(this,this.Ha(),this.Ha());Ac(this,this.Ha()); -this.Rg&&Fc(this,this.Ba);this.A-=this.cl},function(){Yg[this.da()].call(this,be,Qd)},function(){Zg[this.da()].call(this,ce,Qd)},function(){Yg[this.da()].call(this,be,Rd)},function(){Zg[this.da()].call(this,ce,Rd)},function(){var a=this.da(),b=this.G&255;this.G=(b/a&255)<<8|b%a;this.ca=256;this.Y=this.ia=b;this.A-=this.Ik},function(){var a=this.da();this.Y=this.ia=this.G=(this.G>>8)*a+this.G&255;this.ca=256;this.A-=this.Hk},function(){this.G=this.G&-256|(Sc(this)?255:0);this.A-=2},function(){this.G= -this.G&-256|this.T(this.C,this.B+(this.G&255)&65535);this.A-=this.Gl},wh,wh,wh,wh,wh,wh,wh,wh,function(){var a=this.L();(this.I=this.I-1&65535)&&this.Y&this.ca-1?(I(this,this.ra+a),this.A-=this.nl):this.A-=this.Ti},function(){var a=this.L();!(this.I=this.I-1&65535)||this.Y&this.ca-1?this.A-=this.Vi:(I(this,this.ra+a),this.A-=this.Ui)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.ra+a),this.A-=this.ml):this.A-=this.Ti},function(){var a=this.L();this.I?this.A-=this.Vi:(I(this,this.ra+ -a),this.A-=this.Ui)},function(){var a=this.da();this.G=this.G&-256|kb(this.ma,a,this.Ba-2);this.A-=this.Ni},function(){var a=this.da();this.G=kb(this.ma,a,this.Ba-1)|kb(this.ma,a+1&65535,this.Ba-2)<<8;this.A-=this.Ni},function(){var a=this.da();nb(this.ma,a,this.G&255,this.Ba-2);this.A-=this.bj},function(){var a=this.da();nb(this.ma,a,this.G&255,this.Ba-2);nb(this.ma,a+1&65535,this.G>>8,this.Ba-2);this.A-=this.bj},function(){var a=this.K();K(this,this.ra);I(this,this.ra+a);this.A-=this.Mk},function(){var a= -this.K();I(this,this.ra+a);this.A-=this.Oi},function(){zc(this,this.K(),this.K());this.A-=this.il},function(){var a=this.L();I(this,this.ra+a);this.A-=this.Oi},function(){this.G=this.G&-256|kb(this.ma,this.J,this.Ba-1);this.A-=this.Mi},function(){this.G=kb(this.ma,this.J,this.Ba-1)|kb(this.ma,this.J+1&65535,this.Ba-1)<<8;this.A-=this.Mi},function(){nb(this.ma,this.J,this.G&255,this.Ba-1);this.A-=this.aj},function(){nb(this.ma,this.J,this.G&255,this.Ba-1);nb(this.ma,this.J+1&65535,this.G>>8,this.Ba- -1);this.A-=this.aj},xh,xh,function(){this.$|=132;this.A-=this.Nb},function(){this.$|=68;this.A-=this.Nb},function(){this.ib|=4;this.A-=2;this.Z&&1<this.Z.Eb.length?(J(this,-1),this.xb()):this.wa&512||(this.Z&&J(this,-1),this.xb())},function(){Sc(this)?Yc(this):cd(this);this.A-=2},function(){this.Bb=-1;Yg[this.da()].call(this,ee,Wd);0<=this.Bb&&(this.G=this.Bb)},function(){this.Bb=-1;Zg[this.da()].call(this,fe,Wd);0<=this.Bb&&(this.G=this.Bb,this.J=this.ng)},function(){this.Y&=~this.ca;this.A-=2}, -function(){this.Y|=this.ca;this.A-=2},function(){this.wa&=-513;this.A-=this.Kk},function(){this.wa|=512;this.$|=4;this.A-=2},function(){this.wa&=-1025;this.A-=2},function(){this.wa|=1024;this.A-=2},function(){Yg[this.da()].call(this,sc,Wd)},function(){Zg[this.da()].call(this,uc,Wd)}]; -function P(a){s.call(this,"ChipSet",a,P);this.Fa=a.model;this.Fa=void 0!==this.Fa?parseInt(this.Fa,10):yh;this.Xb=0;var b=a.sw1;if(b)this.Xb=zh(b,Ah|Bh.jm);else if(b=a.fdrives||2,this.Xb|=Ch.Hh,b--,this.Xb|=(b&3)<<Ch.xf,b=a.monitor||(this.Fa<Dh?"mono":"ega"),void 0!==Eh[b])this.Xb|=Eh[b]<<Bh.xf;this.me=zh(a.sw2||"11110000",0);this.Dn=this.Fa==yh?16:64;this.Jf=this.Kf=1;this.Fa>=Dh&&(this.Jf=this.Kf=2);this.bh=a.scaleTimers||!1;this.bp=a.rtcDate;this.qk=!1;a.sound&&window&&"webkitAudioContext"in window&& -(this.Yh=new webkitAudioContext);this.reset();this.Oa()}w(s,P);var yh=5150,Dh=5170,Eh={none:0,tv:1,color:2,mono:3,ega:0},Ch={Hh:1},Ah=12,Bh={qp:16,kp:32,jm:48,wf:48,xf:4};Ch.ONE=0;Ch.rp=64;Ch.pp=128;Ch.mp=192;Ch.wf=192;Ch.xf=6;k=P.prototype; -k.tb=function(a,b,c,d){switch(c){case "sw1":return this.sa[c]=d,Fh(this,c,d,this.Xb,{0:this.Fa==yh?"Bootable Floppy Drive":"Loop on POST",1:this.Fa==yh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Fa==yh)return this.sa[c]=d,Fh(this,c,d,this.me,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.sa[c]=d,!0}return!1}; -k.nc=function(a,b,c,d){this.ma=b;this.S=c;this.Z=d;this.Ca=a;this.nb=C(a,"Keyboard");this.Hl=Math.round(c.Fd/1193181);jb(b,this,Gh);mb(b,this,Hh);this.Fa<Dh?(jb(b,this,Ih),mb(b,this,Jh)):(jb(b,this,Kh),mb(b,this,Lh));if(d){var e=this;Mh(d,P);Nh(d,P.Oe,function(){for(var a=0;a<e.qb.length;a++){for(var b=e.qb[a],c="PIC"+a+":",d=0;d<b.od.length;d++)c+=" IC"+(d+1)+"="+p(b.od[d]);c+=" IMR="+p(b.ud)+" IRR="+p(b.Ib)+" ISR="+p(b.Dc);e.Z.message(c)}});Nh(d,P.Pe,function(){for(var a=0;a<e.Gb.length;a++){Oh(e, -a);var b=e.Gb[a],c="TIMER"+a+":",d=0;if(void 0!==b.ed)for(var n=0;n<=b.ed;n++)d|=b.Zb[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.ed+" COUNT="+q(d);e.Z.message(c)}});Nh(d,P.Pa,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Ph(e,b):e.oa[b];a&&(a+="\n");a+="CMOS[0x"+p(b)+"]: 0x"+p(c)}e.Z.message(a)})}Dc(c,26,this,this.An)};k.$b=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0}; -k.reset=function(){var a;this.$c=this.Xb;this.Me=this.me;Qh(this);this.Xa=Array(this.Jf);for(a=0;a<this.Jf;a++)Rh(this,a);this.qb=Array(this.Kf);Sh(this,0,32);1<this.Kf&&Sh(this,1,160);this.Vh=void 0;this.Gb=Array(3);for(a=0;a<this.Gb.length;a++)Th(this,a);this.If=this.Th=this.dc=this.Mg=void 0;this.Lg=0;if(this.Fa>=Dh){this.gb=16;this.td=0;this.Cc=16;this.Hg=0;this.se=160;512<=Uh(this)&&(this.se|=16);3==Vh(this)&&(this.se|=64);this.Rh=3;this.Gf=0;this.Dg=Array(7);this.te=0;this.oa||(this.oa=Array(64), -Wh(this,this.bp));for(a=14;46>a;a++)void 0===this.oa[a]&&(this.oa[a]=0);this.oa[20]=this.$c&(Bh.wf|2|Ch.Hh|Ch.wf);this.oa[16]=Xh(this,0)<<4|Xh(this,1);Yh(this)}}; -function Wh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,z(a,"CMOS date invalid ("+b+"), using "+c)):b&&z(a,"CMOS date: "+c);a.oa[0]=c.getSeconds();a.oa[1]=0;a.oa[2]=c.getMinutes();a.oa[3]=0;a.oa[4]=c.getHours();a.oa[5]=0;a.oa[6]=c.getDay()+1;a.oa[7]=c.getDate();a.oa[8]=c.getMonth()+1;c=c.getFullYear();a.oa[9]=c%100;c/=100;a.oa[50]=c%10|c/10<<4;a.Yf=-1;a.oa[10]=38;a.oa[11]=2;a.oa[12]=0;a.oa[13]=128} -function Ph(a,b){var c=a.oa[b];if(10>b){var d=!1;4!=b&&5!=b||a.oa[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.oa[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.oa[b]^=128);return c}function Yh(a){for(var b=0,c=16;46>c;c++)b+=a.oa[c];a.oa[47]=b&255;a.oa[46]=b>>8} -k.save=function(){var a=new H(this);a.set(0,[this.Xb,this.me,this.$c,this.Me]);for(var b=[],c=0;c<this.Xa;c++){var d=[],e=this.Xa[c];d[0]=e.Xd;d[1]=e.Sh;d[2]=e.Yj;d[3]=e.lb;for(var f=[],g=0;g<e.Fb.length;g++){var h=[],m=e.Fb[g];h[0]=m.Dd;h[1]=m.Sj;h[2]=m.Gc;h[3]=m.Qb;h[4]=m.Zb;h[5]=m.mode;h[6]=m.Ng;h[8]=m.Zo;h[9]=m.$o;f[g]=h}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.qb.length;c++)d=[],e=this.qb[c],d[0]=e.cg,d[1]=e.od,d[2]=e.Gd,d[3]=e.ud,d[4]=e.Ib,d[5]=e.Dc,d[6]=e.ue,d[7]=e.Hf,b[c]=d;a.set(2, -[b]);b=[];for(c=0;c<this.Gb.length;c++)d=[],e=this.Gb[c],d[0]=e.Gc,d[1]=e.Uc,d[2]=e.Zb,d[3]=e.Of,d[4]=e.ak,d[5]=e.mode,d[6]=e.og,d[7]=e.$d,d[8]=e.ed,d[9]=e.hd,d[10]=e.Rf,d[11]=e.$e,d[12]=e.ie,b[c]=d;a.set(3,[this.Vh,b]);a.set(4,[this.Mg,this.dc,this.Th,this.If,this.Lg]);this.Fa>=Dh&&(a.set(5,[this.gb,this.td,this.Cc,this.Hg,this.se,this.Rh]),a.set(6,[this.Gf,this.Dg,this.te,this.oa,this.Yf]));return a.data()}; -k.restore=function(a){var b,c;b=a[0];this.Xb=b[0];this.me=b[1];this.$c=b[2];this.Me=b[3];b=a[1];this.Xa=Array(this.Jf);for(c=0;c<this.Jf;c++)Rh(this,c,1==b.length?b[0][c]:b);b=a[2];this.qb=Array(this.Kf);for(c=0;c<this.Kf;c++)Sh(this,c,0===c?32:160,b[0][c]);b=a[3];this.Vh=b[0];this.Gb=Array(3);for(c=0;c<this.Gb.length;c++)Th(this,c,b[1][c]);b=a[4];this.Mg=b[0];this.dc=b[1];this.Th=b[2];this.If=b[3];this.Lg=b[4];if(b=a[5])this.gb=b[0],this.td=b[1],this.Cc=b[2],this.Hg=b[3],this.se=b[4],this.Rh=b[5]; -if(b=a[6])this.Gf=b[0],this.Dg=b[1],this.te=b[2],this.oa=b[3],this.Yf=b[4],Wh(this);return!0};function Rh(a,b,c){a=a.Xa[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.Xd=c[0];a.Sh=c[1];a.Yj=c[2];a.lb=c[3];a.Ln=b<<2;a.Fb=Array(4);for(b=0;b<a.Fb.length;b++)Zh(a,b,c[4][b])}function Zh(a,b,c){var d=a.Fb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ha=a;d.xk=b;d.Dd=c[0];d.Sj=c[1];d.Gc=c[2];d.Qb=c[3];d.Zb=c[4];d.mode=c[5];d.Ng=c[6];$h(d,c[8],c[9])} -function $h(a,b,c,d){"string"==typeof b&&(b=Oa(b));b&&(a.Vg=null,a.Zo=b.id,a.$o=c,a.Tg=b,a.ri=b[c],a.th=d)}function Sh(a,b,c,d){a=a.qb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.up=b<<3;a.cg=d[0];a.od=d[1];a.Gd=d[2];a.ud=d[3];a.Ib=d[4];a.Dc=d[5];a.ue=d[6];a.Hf=d[7]} -function Th(a,b,c){a=a.Gb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.Gc=c[0];a.Uc=c[1];a.Zb=c[2];a.Of=c[3];a.ak=c[4];a.mode=c[5];a.og=c[6];a.$d=c[7];a.ed=c[8];a.hd=c[9];a.Rf=c[10];a.$e=c[11];a.ie=c[12]}function Uh(a,b){return((((b?a.Xb:a.$c)&12)>>2)+1)*a.Dn+32*((b?a.me:a.Me)&15)}function ai(a,b){var c=b?a.Xb:a.$c;return a.Fa!=yh||c&Ch.Hh?((c&Ch.wf)>>Ch.xf)+1:0}function Xh(a,b){return b<ai(a)?a.Fa<Dh?1:2:0}function Vh(a,b){return((b?a.Xb:a.$c)&Bh.wf)>>Bh.xf} -function Fh(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+g)+'" class="'+h+'" data-value="0">'+g+"</div>\n"}c.innerHTML=f;b=y(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)void 0!==e&&void 0!==e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),bi(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");bi(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Xb= -a.Xb&~e|(c?0:e);break;case "sw2":a.me=a.me&~e|(c?0:e)}Qh(a)}}(a,b[g])}function bi(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Qh(a){var b=a.sa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(Uh(a,!0)+"Kb");d+=", "+c[Vh(a,!0)]+" Monitor";d+=", "+ai(a,!0)+" Floppy Drives";if(void 0!==a.$c&&a.$c!=a.Xb||void 0!==a.Me&&a.Me!=a.me)d+=" (Reset required)";b.innerHTML=d}} -function ci(a,b,c,d,e){var f=a.Xa[b],g=f.Fb[c].Qb[f.lb];f.lb^=1;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.lb+"]",P.Db,g);return g}function di(a,b,c,d,e,f){var g=a.Xa[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.lb+"]",P.Db);a=g.Fb[c];a.Qb[g.lb]=a.Sj[g.lb]=e;g.lb^=1}function ei(a,b,c,d,e){var f=a.Xa[b],g=f.Fb[c].Zb[f.lb];f.lb^=1;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.lb+"]",P.Db,g);return g} -function fi(a,b,c,d,e,f){var g=a.Xa[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.lb+"]",P.Db);a=g.Fb[c];a.Zb[g.lb]=a.Gc[g.lb]=e;g.lb^=1}function gi(a,b,c,d){var e=a.Xa[b],f=e.Xd|1;e.Xd&=-16;a.ba(c,null,d,"DMA"+b+".STATUS",P.Db,f);return f}function hi(a,b,c,d,e){var f=a.Xa[b];a.ba(c,d,e,"DMA"+b+".REQ",P.Db);a=d&3;f.Xd=f.Xd&~(16<<a)|(d&4)<<a+2;f.Yj=d}function ii(a,b,c,d,e){var f=a.Xa[b];a.ba(c,d,e,"DMA"+b+".MASK",P.Db);b=d&3;c=f.Fb[b];c.Dd=d&4?!0:!1;c.Dd||ji(a,f.Ln+b)} -function ki(a,b,c,d,e){a.ba(c,d,e,"DMA"+b+".CLEAR",P.Db);a=a.Xa[b];for(b=0;b<a.Fb.length;b++)Zh(a,b)}function li(a,b,c,d,e){var f=a.Xa[b].Fb[c].Ng;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",P.Db,f);return f}function mi(a,b,c,d,e,f){a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",P.Db);a.Xa[b].Fb[c].Ng=e}function ni(a,b,c,d){var e=a.Dg[b];a.ba(c,null,d,"DMA.SPARE"+b+".PAGE",P.Db,e);return e}function oi(a,b,c,d,e){a.ba(c,d,e,"DMA.SPARE"+b+".PAGE",P.Db);a.Dg[b]=d} -function pi(a,b,c,d,e){$h(a.Xa[b>>2].Fb[b&3],c,d,e)}function ji(a,b,c){b=a.Xa[b>>2].Fb[b&3];b.Tg&&b.ri&&b.th?(c&&(b.Vg=c),b.Dd||jd(a,b,!0)):c&&c(!0)} -function jd(a,b,c){c&&(b.count=b.Zb[1]<<8|b.Zb[0],b.am=b.mode&12,b.rk=b.gd=!1);for(var d=!1;0<=b.count&&(c=b.Ng<<16|b.Qb[1]<<8|b.Qb[0],4==b.am?(d=!0,function(c){b.ri.call(b.Tg,b.th,-1,function(f,g){0>f&&(b.rk||(b.rk=!0),f=255);b.Dd||gb(a.ma,c,f);(d=g)&&setTimeout(function(){qi(b)||jd(a,b)},0)})}(c)):8==b.am?(c=db(a.ma,c),0>b.ri.call(b.Tg,b.th,c)&&(b.gd=!0)):b.gd=!0),!d&&!qi(b););} -function qi(a){if(!a.gd&&0<=--a.count&&(a.mode&32?(a.Qb[0]--,0>a.Qb[0]&&(a.Qb[0]=255,a.Qb[1]--,0>a.Qb[1]&&(a.Qb[1]=255))):(a.Qb[0]++,255<a.Qb[0]&&(a.Qb[0]=0,a.Qb[1]++,255<a.Qb[1]&&(a.Qb[1]=0))),!a.Dd))return!1;var b=a.ha;b.Xd=b.Xd&~(16<<a.xk)|1<<a.xk;a.mode&16||(a.Dd=!0,a.Tg=a.th=null);a.Vg&&(a.Vg(!a.gd),a.Vg=null);return!0}function ri(a,b,c){var d=0,e=a.qb[b];if(void 0!==e.Hf)switch(e.Hf&3){case 2:d=e.Ib;break;case 3:d=e.Dc}a.ba(e.port,null,c,"PIC"+b,P.Oe,d);return d} -function si(a,b,c,d){var e=a.qb[b];a.ba(e.port,c,d,"PIC"+b,P.Oe);if(c&16)e.Gd=0,e.od[e.Gd++]=c,e.ud=0,e.ue=7,e.Ib=e.Dc=0,e.Hf=10;else if(c&8)e.Hf=c;else{var f=c&224;if(f&32){d=0;if(96==(f&96))d=1<<(c&7);else for(c=e.ue+1;;){c&=7;f=1<<c;if(e.Dc&f){d=f;break}if(c++==e.ue)break}e.Dc&d&&(e.Dc&=~d,ti(a,b))}else 192==f&&(e.ue=c&7)}}function ui(a,b,c){var d=a.qb[b],e=d.ud;a.ba(d.port+1,null,c,"PIC"+b,P.Oe,e);return e} -function vi(a,b,c,d){var e=a.qb[b];a.ba(e.port+1,c,d,"PIC"+b,P.Oe);e.Gd<e.od.length?(e.od[e.Gd++]=c,2==e.Gd&&e.od[0]&2&&e.Gd++,3!=e.Gd||e.od[0]&1||e.Gd++):(e.ud=c,d=a.S,d.$|=4,ti(a,b,b||253!=c?0:6))}function ti(a,b,c){b=a.qb[b];var d=((b.Dc|b.ud)^255)&b.Ib;a=a.S;a.ja&&(a.ib=d?a.ib|1:a.ib&-2);d&&c&&(b.cg=c)}function Q(a,b,c){var d=b>>3,e=a.qb[d];e.Ib|=1<<(b&7);e.cg=c||0;1==d&&(a.qb[0].Ib|=4);ti(a,d)} -function wi(a,b){var c=b>>3,d=a.qb[c],e=1<<(b&7);d.Ib&e&&(d.Ib&=~e,1!=c||d.Ib||(a.qb[0].Ib&=-5),ti(a,c))}function hd(a,b){void 0===b&&(b=0);var c=-1,d=a.qb[b];if(d.cg)c=-2,d.cg--;else for(var e=d.Ib&((d.Dc|d.ud)^255),f=d.ue+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.od[1]+f:hd(a,1);0<=c&&(d.Dc|=g,d.Ib&=~g);break}if(f++==d.ue)break}return c}function xi(a,b,c){var d;d=a.Gb[b];d.$d==d.ed&&yi(a,b);if(d.Rf)return d.Of[d.$d++];Oh(a,b);d=d.Zb[d.$d++];a.ba(64+b,null,c,"TIMER"+b,P.Pe,d);return d} -function zi(a,b,c,d){a.ba(64+b,c,d,"TIMER"+b,P.Pe);d=a.Gb[b];d.$d==d.ed&&yi(a,b);d.Gc[d.$d++]=c;if(d.$d==d.ed){d.$e&&0!=d.mode&&8!=d.mode||(d.Rf=!1,d.Zb[0]=d.Uc[0]=d.Gc[0],d.Zb[1]=d.Uc[1]=d.Gc[1],d.ie=F(a.S,a.bh),d.$e=!0,d.hd=0!=d.mode,0==b&&wi(a,0));2==b&&Mb(a);if(0==b){var e=Ai(a,0);2048<=e&&(a.S.nh=Math.round(65536/e))}0==b&&0==d.mode&&16==d.og&&(b=a.S,b.Mb&&(a=b.A-c*a.Hl,b.A-=a,b.Wc-=a))}}k.un=function(a,b){this.ba(a,null,b,"TIMER_CTRL",P.Pe);return null}; -k.Mo=function(a,b,c){this.ba(a,b,c,"TIMER_CTRL",P.Pe);this.Vh=b;a=(b&192)>>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Gb[a];e.og=b;e.mode=d;e.ak=c;e.Gc=[0,0];e.Zb=[0,0];e.Of=[0,0];e.hd=!1;e.Rf=!1;e.$e=!1;yi(this,a);0==a&&wi(this,0);2==a&&255==this.qb[0].ud&&77==this.dc&&(a=this.Gb[0],a.Uc[0]=a.Gc[0],a.Uc[1]=a.Gc[1],a.ie=F(this.S,this.bh))}else Oh(this,a),b=this.Gb[a],b.Of[0]=b.Zb[0],b.Of[1]=b.Zb[1],b.Rf=!0,yi(this,a)}}; -function Ai(a,b){var c=a.Gb[b],d=c.Gc[1]<<8|c.Gc[0];d||(d=1==c.ed?256:65536);return d}function yi(a,b){var c=a.Gb[b];c.$d=32==c.og?1:0;c.ed=48==c.og?2:1} -function Oh(a,b,c){var d=a.Gb[b];if(d.$e&&(2!=b||a.dc&1)){var e=F(a.S,a.bh),f=(e-d.ie)/a.Hl|0;0>f&&(d.ie=e,f=0);var g=Ai(a,b),h=a.Gb[b],m=h.Uc[1]<<8|h.Uc[0];m||(m=1==h.ed?256:65536);h=m-f;0==d.mode?(0>=h&&(h=0),h||(d.hd=!0,d.$e=!1,b||Q(a,0))):4==d.mode?(d.hd=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Uc[0]=h&255,d.Uc[1]=h>>8,d.ie=e,!b&&d.hd&&Q(a,0))):6==d.mode&&(h-=f,0>=h&&(d.hd=!d.hd,h=g+h,0>=h&&(h=g),d.Uc[0]=h&255,d.Uc[1]=h>>8,d.ie=e,!b&&d.hd&&Q(a,0)));d.Zb[0]=h&255;d.Zb[1]=h>>8;c&&(a.ie=0)}return d} -function Nb(a,b){for(var c=0;c<a.Gb.length;c++)Oh(a,c,b);if(a.Fa>=Dh){var c=0,d=a.S.Fd,e=F(a.S,a.bh);if(0<=a.Yf&&(c=e-a.Yf,Math.floor(c/d)&&60<=++a.oa[0]&&(a.oa[0]=0,60<=++a.oa[2]&&(a.oa[2]=0,24<=++a.oa[4])))){a.oa[4]=0;a.oa[6]=a.oa[6]%7+1;var f=a.oa[9],g=oa[a.oa[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.oa[7]>g&&(a.oa[7]=1,12<++a.oa[8]&&(a.oa[8]=1,a.oa[9]=(a.oa[9]+1)%100))}a.Yf=e-c%d}} -k.mn=function(a,b){var c=this.Mg;this.If&16&&(this.dc&128?c=this.$c:this.nb&&(c=Bi(this.nb)));this.ba(a,null,b,"PPI_A",P.Pa,c);return c};k.Fo=function(a,b,c){this.ba(a,b,c,"PPI_A",P.Pa);this.Mg=b};k.nn=function(a,b){var c=this.dc;this.ba(a,null,b,"PPI_B",P.Pa,c);return c};k.Go=function(a,b,c){this.ba(a,b,c,"PPI_B",P.Pa);Ci(this,b);this.nb&&(a=this.nb,c=b&128?!1:!0,b=b&64?!0:!1,a.ii!==b&&(a.ii=a.ok=b),a.ki!==c&&(a.ki=c))&&(a.ok?(Di(a),a.ok=!1):Ei(a))}; -function Ci(a,b){var c=!!(b&2),d=!!(a.dc&2);a.dc=b;c!=d&&Mb(a,c)}k.on=function(a,b){var c=0,c=this.Fa==yh?this.dc&4?c|this.Me&15:c|this.Me>>4&1:this.dc&8?c|this.$c>>4:c|this.$c&15;this.dc&1&&Oh(this,2).hd&&(c=this.dc&2?c|32:c|16);this.ba(a,null,b,"PPI_C",P.Lj|P.Pa,c);return c};k.Ho=function(a,b,c){this.ba(a,b,c,"PPI_C",P.Pa);this.Th=b};k.pn=function(a,b){var c=this.If;this.ba(a,null,b,"PPI_CTRL",P.Pa,c);return c};k.Io=function(a,b,c){this.ba(a,b,c,"PPI_CTRL",P.Pa);this.If=b}; -k.Cm=function(a,b){var c=this.Hg;this.ba(a,null,b,"8042_OUTBUFF",P.Pa,c);this.gb&=-258;var d=this.nb&&Bi(this.nb,!0);d&&Fi(this,d);return c};k.Yn=function(a,b,c){this.ba(a,b,c,"8042_INBUF.DATA",P.Pa);if(this.gb&8)switch(this.td){case 96:this.Cc=b;this.gb=this.gb&-5|b&4;break;case 209:Gi(this,b);break;default:if(this.Cc&=-17,this.nb){a=-1;switch(b){case 255:a=250,Di(this.nb)}Fi(this,a)}}this.td=b;this.gb&=-9};k.Dm=function(a,b){var c=this.dc&-193;this.ba(a,null,b,"8042_RWREG",P.Pa,c);this.dc^=16;return c}; -k.Zn=function(a,b,c){this.ba(a,b,c,"8042_RWREG",P.Pa);Ci(this,b)};k.Em=function(a,b){this.ba(a,null,b,"8042_STATUS",P.Pa,this.gb);var c=this.gb&255;this.gb&256&&(this.gb|=1,this.gb&=-257);return c}; -k.Xn=function(a,b,c){this.ba(a,b,c,"8042_INBUFF.CMD",P.Pa);this.td=b;this.gb|=8;a=0;240<=this.td&&(a=this.td^15,this.td=240);switch(this.td){case 192:Fi(this,this.se);break;case 173:this.Cc|=16;break;case 174:this.Cc&=-17;break;case 170:this.nb&&Ei(this.nb,!0);this.Cc|=16;Fi(this,85);Gi(this,3);break;case 224:Fi(this,this.Cc&16?0:1);break;case 240:a&1&&yc(this.S)}};function Fi(a,b){0<=b&&(a.Hg=b,a.gb&=-2,a.gb|=256)}function Gi(a,b){a.Rh=b;$a(a.ma,!!(b&2));b&1||yc(a.S)} -k.Sm=function(a,b){this.ba(a,null,b,"CMOS_ADDR",P.Pa,this.te);return this.te};k.no=function(a,b,c){this.ba(a,b,c,"CMOS_ADDR",P.Pa);this.te=b;this.Lg=b&128?0:128};k.Tm=function(a,b){var c=this.te&63,d=13>=c?Ph(this,c):this.oa[c];this.ba(a,null,b,"CMOS_DATA["+p(c)+"]",P.Pa,d);return d}; -k.oo=function(a,b,c){var d=this.te&63;this.ba(a,b,c,"CMOS_DATA["+p(d)+"]",P.Pa);a=this.oa;13>=d&&10>d&&(c=!1,this.oa[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12<b&&(b+=48),this.oa[11]&2||(12>=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.kn=function(a,b){this.ba(a,null,b,"MFG_DATA",P.Pa,this.Gf);return this.Gf};k.Co=function(a,b,c){this.ba(a,b,c,"MFG_DATA",P.Pa);this.Gf=b};k.Eo=function(a,b,c){this.ba(a,b,c,"NMI",P.Pa);this.Lg=b}; -k.An=function(a){var b=this.S.G>>8;this.Z&&L(this.Z,this.Z.Pa)&&(this.Z.message("ChipSet.intBIOSRTC(AH="+p(b)+") at "+ca(a-this.S.qa.Ja,this.S.qa.na)),Ec(this.S,a,function(a,d){return function(e){d=F(a.S)-d;var f="C="+(Sc(a.S)?1:0),g=a.S.J&255,h=a.S.J>>8,m=a.S.J&255,n=a.S.J>>8;if(2==b||3==b)f+=" CH(hour)="+q(h)+" CL(min)="+p(g)+" DH(sec)="+p(n);else if(4==b||5==b)f+=" CX(year)="+q(a.S.I)+" DH(month)="+p(n)+" DL(day)="+p(m);a.Ea("ChipSet.intBIOSRTC("+e+"): "+f+" (cycles="+d+")")}}(this,F(this.S)))); -return!0};function zh(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c} -function Mb(a,b){if(a.Yh){void 0!==b?a.qk=b:b=a.qk&&a.S&&a.S.Mb;var c=Math.round(1193181/Ai(a,2));if(20>c||2E4<c)b=!1;b?a.nd?(a.nd.frequency.value=c,a.Ea("speaker set to "+c+"hz",P.yg)):(a.nd=a.Yh.createOscillator(),a.nd.type=1,a.nd.connect(a.Yh.destination),a.nd.frequency.value=c,a.Ea("speaker on at "+c+"hz",P.yg),a.nd.noteOn(0)):a.nd&&(a.nd.noteOff(0),a.nd.disconnect(),delete a.nd,a.Ea("speaker off at "+c+"hz",P.yg))}else b&&a.Ea("BEEP",P.yg)} -k.Ea=function(a,b,c){this.Z&&(null==b&&(b=P.Pa),void 0!==c&&(b|=0==c?P.Pe:1==c?P.Kj:6==c?P.xg:0),L(this.Z,b)&&this.Z.message(a))};k.ba=function(a,b,c,d,e,f){this.Z&&(null==e&&(e=P.Pa),this.Z.ba(this,a,b,c,d,e,f))}; -var Gh={0:function(a,b){return ci(this,0,0,a,b)},1:function(a,b){return ei(this,0,0,a,b)},2:function(a,b){return ci(this,0,1,a,b)},3:function(a,b){return ei(this,0,1,a,b)},4:function(a,b){return ci(this,0,2,a,b)},5:function(a,b){return ei(this,0,2,a,b)},6:function(a,b){return ci(this,0,3,a,b)},7:function(a,b){return ei(this,0,3,a,b)},8:function(a,b){return gi(this,0,a,b)},32:function(a,b){return ri(this,0,b)},33:function(a,b){return ui(this,0,b)},64:function(a,b){return xi(this,0,b)},65:function(a, -b){return xi(this,1,b)},66:function(a,b){return xi(this,2,b)},67:P.prototype.un,129:function(a,b){return li(this,0,2,a,b)},130:function(a,b){return li(this,0,3,a,b)},131:function(a,b){return li(this,0,1,a,b)},135:function(a,b){return li(this,0,0,a,b)}},Ih={96:P.prototype.mn,97:P.prototype.nn,98:P.prototype.on,99:P.prototype.pn},Kh={96:P.prototype.Cm,97:P.prototype.Dm,100:P.prototype.Em,112:P.prototype.Sm,113:P.prototype.Tm,128:P.prototype.kn,132:function(a,b){return ni(this,0,a,b)},133:function(a, -b){return ni(this,1,a,b)},134:function(a,b){return ni(this,2,a,b)},136:function(a,b){return ni(this,3,a,b)},137:function(a,b){return li(this,1,2,a,b)},138:function(a,b){return li(this,1,3,a,b)},139:function(a,b){return li(this,1,1,a,b)},140:function(a,b){return ni(this,4,a,b)},141:function(a,b){return ni(this,5,a,b)},142:function(a,b){return ni(this,6,a,b)},143:function(a,b){return li(this,1,0,a,b)},160:function(a,b){return ri(this,1,b)},161:function(a,b){return ui(this,1,b)},192:function(a,b){return ci(this, -1,0,a,b)},194:function(a,b){return ei(this,1,0,a,b)},196:function(a,b){return ci(this,1,1,a,b)},198:function(a,b){return ei(this,1,1,a,b)},200:function(a,b){return ci(this,1,2,a,b)},202:function(a,b){return ei(this,1,2,a,b)},204:function(a,b){return ci(this,1,3,a,b)},206:function(a,b){return ei(this,1,3,a,b)},208:function(a,b){return gi(this,1,a,b)}},Hh={0:function(a,b,c){di(this,0,0,a,b,c)},1:function(a,b,c){fi(this,0,0,a,b,c)},2:function(a,b,c){di(this,0,1,a,b,c)},3:function(a,b,c){fi(this,0,1, -a,b,c)},4:function(a,b,c){di(this,0,2,a,b,c)},5:function(a,b,c){fi(this,0,2,a,b,c)},6:function(a,b,c){di(this,0,3,a,b,c)},7:function(a,b,c){fi(this,0,3,a,b,c)},8:function(a,b,c){this.ba(a,b,c,"DMA0.CMD",P.Db);this.Xa[0].Sh=b},9:function(a,b,c){hi(this,0,a,b,c)},10:function(a,b,c){ii(this,0,a,b,c)},11:function(a,b,c){this.ba(a,b,c,"DMA0.MODE",P.Db);this.Xa[0].Fb[b&3].mode=b},12:function(a,b,c){this.ba(a,b,c,"DMA0.INDEX",P.Db);this.Xa[0].lb=0},13:function(a,b,c){ki(this,0,a,b,c)},32:function(a,b,c){si(this, -0,b,c)},33:function(a,b,c){vi(this,0,b,c)},64:function(a,b,c){zi(this,0,b,c)},65:function(a,b,c){zi(this,1,b,c)},66:function(a,b,c){zi(this,2,b,c)},67:P.prototype.Mo,129:function(a,b,c){mi(this,0,2,a,b,c)},130:function(a,b,c){mi(this,0,3,a,b,c)},131:function(a,b,c){mi(this,0,1,a,b,c)},135:function(a,b,c){mi(this,0,0,a,b,c)}},Jh={96:P.prototype.Fo,97:P.prototype.Go,98:P.prototype.Ho,99:P.prototype.Io,160:P.prototype.Eo},Lh={96:P.prototype.Yn,97:P.prototype.Zn,100:P.prototype.Xn,112:P.prototype.no, -113:P.prototype.oo,128:P.prototype.Co,132:function(a,b,c){oi(this,0,a,b,c)},133:function(a,b,c){oi(this,1,a,b,c)},134:function(a,b,c){oi(this,2,a,b,c)},136:function(a,b,c){oi(this,3,a,b,c)},137:function(a,b,c){mi(this,1,2,a,b,c)},138:function(a,b,c){mi(this,1,3,a,b,c)},139:function(a,b,c){mi(this,1,1,a,b,c)},140:function(a,b,c){oi(this,4,a,b,c)},141:function(a,b,c){oi(this,5,a,b,c)},142:function(a,b,c){oi(this,6,a,b,c)},143:function(a,b,c){mi(this,1,0,a,b,c)},160:function(a,b,c){si(this,1,b,c)},161:function(a, -b,c){vi(this,1,b,c)},192:function(a,b,c){di(this,1,0,a,b,c)},194:function(a,b,c){fi(this,1,0,a,b,c)},196:function(a,b,c){di(this,1,1,a,b,c)},198:function(a,b,c){fi(this,1,1,a,b,c)},200:function(a,b,c){di(this,1,2,a,b,c)},202:function(a,b,c){fi(this,1,2,a,b,c)},204:function(a,b,c){di(this,1,3,a,b,c)},206:function(a,b,c){fi(this,1,3,a,b,c)},208:function(a,b,c){this.ba(a,b,c,"DMA1.CMD",P.Db);this.Xa[1].Sh=b},210:function(a,b,c){hi(this,1,a,b,c)},212:function(a,b,c){ii(this,1,a,b,c)},214:function(a,b, -c){this.ba(a,b,c,"DMA1.MODE",P.Db);this.Xa[1].Fb[b&3].mode=b},216:function(a,b,c){this.ba(a,b,c,"DMA1.INDEX",P.Db);this.Xa[1].lb=0},218:function(a,b,c){ki(this,1,a,b,c)}};Aa(function(){for(var a=y(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=x(c),d=new P(d);Qa(d,c);Qh(d)}}); -function Hi(a){s.call(this,"ROM",a,Hi);this.ub=null;this.Tj=a.addr;this.Eh=a.size;this.km=a.alias;this.pg=a.file;this.yk=a.notify;if(this.pg){a=this.pg;var b=ea(this.pg);"json"!=b&&"hex"!=b&&(a=qa()+"/api/v1/dump?file="+this.pg+"&format=bytes&decimal=true");pa(a,!0,null,this,Hi.prototype.Sn)}}w(s,Hi);Hi.prototype.nc=function(a,b,c,d){this.ma=b;this.S=c;this.Z=d;Ii(this)};Hi.prototype.$b=function(){this.Nh&&(this.Z&&Ji(this.Z,this.Tj,this.Eh,this.Nh),delete this.Nh);return!0};Hi.prototype.Wb=function(){return!0}; -Hi.prototype.Sn=function(a,b,c){if(c)B(this,"Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.ub=e;else if(f)for(this.ub=Array(4*f.length),c=b=0;b<f.length;b++)this.ub[c++]=f[b]&255,this.ub[c++]=f[b]>>8&255,this.ub[c++]=f[b]>>16&255,this.ub[c++]=f[b]>>24&255;else this.ub=d;this.Nh=d.symbols;if(!this.ub.length){this.error("Empty ROM: "+a);return}if(1==this.ub.length){this.error(this.ub[0]);return}}catch(g){B(this, -"ROM data error: "+g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.ub=Array(a.length),d=0;d<a.length;d++)this.ub[d]=parseInt(a[d],16);Ii(this)}};function Ii(a){if(!Ta(a))if(!a.pg)a.Oa();else if(a.ub&&a.ma){if(a.ub.length!=a.Eh)Ua(a,"ROM size (0x"+l(a.ub.length)+") does not match specified size (0x"+l(a.Eh)+")");else if(Ki(a,a.Tj)&&Ki(a,a.km)){if(a.yk){var b=Oa(a.yk,a.id);b&&("ega"==b.Fa&&Li(b,a.ub,[8752,12640],8),b.Oa())}delete a.ub}a.Oa()}} -function Ki(a,b){if(null==b)return!0;if(ab(a.ma,b,a.Eh,!0)){for(var c=0;c<a.ub.length;c++)gb(a.ma,b+c,a.ub[c]);return!0}return!1}Aa(function(){for(var a=y(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=x(c),d=new Hi(d);Qa(d,c)}});function Mi(a){s.call(this,"RAM",a,Mi);this.Fg=a.addr;this.Md=a.size;this.tm=a.test;this.rm=!!this.Md;this.Xg=!1}w(s,Mi);Mi.prototype.nc=function(a,b,c){this.ma=b;this.S=c;this.Ca=a;this.ja=C(a,"ChipSet");this.Oa()}; -Mi.prototype.$b=function(a,b){b||this.reset();return!0};Mi.prototype.Wb=function(){return!0}; -Mi.prototype.reset=function(){if(!this.Fg&&!this.rm&&this.ja){var a=1024*Uh(this.ja);this.Md&&a!=this.Md&&(cb(this.ma,this.Fg,this.Md),this.Xg=!1);this.Md=a}!this.Xg&&this.Md&&ab(this.ma,this.Fg,this.Md)&&(this.Xg=!0,this.status(Math.floor(this.Md/1024)+"Kb"));if(this.Xg){if(this.tm||hb(this.ma,1138,4660),this.ja&&(a=this.ja,a.oa)){var b=1048576>this.Fg?21:23,c=a.oa[b]|a.oa[b+1]<<8,c=c+(this.Md>>10);a.oa[b]=c&255;a.oa[b+1]=c>>8;Yh(a)}}else this.error("No RAM allocated")}; -Aa(function(){for(var a=y(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=x(c),d=new Mi(d);Qa(d,c)}});function Ni(a){s.call(this,"Keyboard",a,Ni);this.Mh={};this.In=250;this.Jn=100;this.Oa()}w(s,Ni); -var Si={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,backspace:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,squote:40,bquote:41,lshift:42,bslash:43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,rshift:54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,home:71,"up-arrow":72,"page-up":73,"num-minus":74, -"left-arrow":75,center:76,"right-arrow":77,"num-plus":78,end:79,"down-arrow":80,"page-down":81,ins:82,del:83},Ti={tab:9,esc:27,rshift:224,lshift:240,ctrl:241,alt:242,"caps-lock":244,f1:336,f2:337,f3:338,f4:339,f5:340,f6:341,f7:342,f8:343,f9:344,f10:345,"left-arrow":261,"up-arrow":262,"right-arrow":263,"down-arrow":264,"ctrl-c":3,"ctrl-break":254,"ctrl-alt-del":255},R=[];R[32]=57;R[49]=2;R[33]=61442;R[50]=3;R[64]=61443;R[51]=4;R[35]=61444;R[52]=5;R[36]=61445;R[53]=6;R[37]=61446;R[54]=7;R[94]=61447; +b){this.B=a[7].call(this,this.B,b.call(this))},function(a,b){this.X=a[7].call(this,this.X,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))},function(a,b){this.D=a[7].call(this,this.D,b.call(this))}],Yg=[function(){var a=this.ea();16>(a&56)&&(this.$|=1);Wg[a].call(this,Dc,Td)},function(){var a=this.ea();a&16||(this.$|=1);Wg[a].call(this,Xg,Td)},function(){O[this.ea()].call(this,re)},function(){O[this.ea()].call(this,se)}, +N,N,N,N,N,N,N,G,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N, +N],Ec=[function(){this.A-=2+(0>this.ha?0:1);return this.Ld.oa},function(){this.A-=2+(0>this.ha?0:1);return this.xg.oa},function(a){this.$|=2;this.Ld.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.$|=2;this.xg.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.$|=2;this.A-=14+(0>this.ha?0:2);if(0<=this.Rb.load(a,!0)&&2048!=(this.Rb.ab&2560)&&(3072==(this.Rb.ab&3072)||this.Rb.Mc>=(this.ra.oa&3)&&this.Rb.Mc>=(a&3)))return bd(this),a;Xc(this);return a},function(a){this.$|=2; +this.A-=14+(0>this.ha?0:2);if(0<=this.Rb.load(a,!0)&&512==(this.Rb.ab&2560)&&this.Rb.Mc>=(this.ra.oa&3)&&this.Rb.Mc>=(a&3))return bd(this),a;Xc(this);return a},M,M],Fc=[qc,qc,qc,qc,qc,qc,M,M],Dc=Fc,Xg=[function(a){0>this.ha?G.call(this):(this.Nd(this.ha+2,this.Qc),this.bd(this.ha+4,this.Qc>>16),a=this.We-this.Qc,this.A-=11);return a},function(a){0>this.ha?G.call(this):(this.Nd(this.ha+2,this.ed),this.bd(this.ha+4,this.ed>>16),a=this.se-this.ed,this.A-=12);return a},function(a){0>this.ha?G.call(this): +(this.Qc=this.Ia(this.ha+2)|this.ub(this.ha+4)<<16,this.We=this.Qc+a,this.$|=2,this.A-=11);return a},function(a){0>this.ha?G.call(this):(this.ed=this.Ia(this.ha+2)|this.ub(this.ha+4)<<16,this.se=this.ed+a,this.$|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ha?0:1);return this.ad},M,function(a){this.ad=this.ad&65520|a&-65521;this.A-=3+(0>this.ha?0:3);this.ad&1&&yc(this,!0);this.$|=2;return a},M];function sc(){Yg[this.ea()].call(this)}function uc(){K(this,this.X);this.A-=this.rc} +function $b(){var a=this.X;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.Dl}function ac(){this.D=this.Ja();this.F=this.Ja();this.H=this.Ja();this.X+=2;this.B=this.Ja();this.J=this.Ja();this.I=this.Ja();this.G=this.Ja();this.A-=this.Bl}function bc(){O[this.ea()].call(this,pe)}function tc(){Tg[this.ea()].call(this,qe)}function cc(){K(this,this.K());this.A-=this.rc}function dc(){O[this.ea()].call(this,ke)} +function ec(){K(this,this.ea());this.A-=this.rc}function fc(){O[this.ea()].call(this,je)}function gc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=hb(this.na,this.J,this.Ca-b-1);this.bd(this.cb.$b(this.D,0),d);this.D=this.D+(this.xa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}} +function hc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.Ca-b-1,d=hb(this.na,this.J,d)|hb(this.na,this.J,d)<<8;this.Nd(this.cb.$b(this.D,1),d);this.D=this.D+(this.xa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}} +function ic(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.ub(this.Qb.Uc(this.F,0));this.F=this.F+(this.xa&1024?-1:1)&65535;this.A-=c;this.I-=b;lb(this.na,this.J,d,this.Ca-b-1);a&&(J(this,-2),this.$|=256)}} +function jc(){var a=1,b=0,c=5;this.wa&192&&(a=this.I,b=1,this.wa&256&&(c=4));if(a--){var d=this.Ia(this.Qb.Uc(this.F,1));this.F=this.F+(this.xa&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Ca-b-1;lb(this.na,this.J,d&255,b);lb(this.na,this.J,d>>8,b);a&&(J(this,-2),this.$|=256)}}function Zg(){var a=this.L();Uc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function $g(){var a=this.L();Uc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)} +function ah(){var a=this.L();Pc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function bh(){var a=this.L();Pc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)}function ch(){var a=this.L();Sc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function dh(){var a=this.L();Sc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)}function eh(){var a=this.L();Pc(this)||Sc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb} +function fh(){var a=this.L();Pc(this)||Sc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)}function gh(){var a=this.L();Tc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function hh(){var a=this.L();Tc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)}function ih(){var a=this.L();Qc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function jh(){var a=this.L();Qc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)} +function kh(){var a=this.L();!Tc(this)!=!Uc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function lh(){var a=this.L();!Tc(this)==!Uc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function mh(){var a=this.L();Sc(this)||!Tc(this)!=!Uc(this)?(I(this,this.sa+a),this.A-=this.Wb):this.A-=this.Xb}function nh(){var a=this.L();Sc(this)||!Tc(this)!=!Uc(this)?this.A-=this.Xb:(I(this,this.sa+a),this.A-=this.Wb)} +function oh(){Vg[this.ea()].call(this,Vd,this.ea);this.A-=0>this.Ka?1:this.wh}function kc(){Vg[this.ea()].call(this,de,Sd)}function lc(){Wg[this.ea()].call(this,ee,Sd)}function ph(){var a=this.K();I(this,this.Ja());this.X=this.X+a&65535;this.A-=this.Il}function qh(){I(this,this.Ja());this.A-=this.Fl} +function mc(){var a=this.K(),b=this.ea()&31;this.A-=11;K(this,this.H);var c=this.X;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.H=this.H-2&65535,K(this,this.Ia(this.Eb.Uc(this.H,1)));K(this,c)}this.H=c;this.X=this.X-a&65535}function nc(){this.X=this.H;this.H=this.Ja();this.A-=5}function rh(){var a=this.K();wc(this,this.Ja(),this.Ja());this.X=this.X+a&65535;this.Wg&&Cc(this,this.Ca);this.A-=this.Hl}function sh(){wc(this,this.Ja(),this.Ja());this.A-=this.Gl} +function th(){O[this.ea()].call(this,le);this.A-=8}function uh(){this.$|=36;this.A-=this.Pb}function oc(){N.call(this)} +var Zb=[function(){var a=this.ea();Sg[a].call(this,id)},function(){Tg[this.ea()].call(this,qd)},function(){Ug[this.ea()].call(this,id)},function(){O[this.ea()].call(this,qd)},function(){this.G=this.G&-256|id.call(this,this.G&255,this.ea());this.A--},function(){this.G=qd.call(this,this.G,this.K());this.A--},function(){K(this,this.cb.oa);this.A-=this.lg},function(){Oc(this,this.Ja());this.A-=this.jc},function(){Sg[this.ea()].call(this,jd)},function(){Tg[this.ea()].call(this,rd)},function(){Ug[this.ea()].call(this, +jd)},function(){O[this.ea()].call(this,rd)},function(){this.G=this.G&-256|jd.call(this,this.G&255,this.ea());this.A--},function(){this.G=rd.call(this,this.G,this.K());this.A--},function(){K(this,this.ra.oa);this.A-=this.lg},function(){Ic(this,this.Ja());this.A-=this.jc},function(){Sg[this.ea()].call(this,kd)},function(){Tg[this.ea()].call(this,sd)},function(){Ug[this.ea()].call(this,kd)},function(){O[this.ea()].call(this,sd)},function(){this.G=this.G&-256|kd.call(this,this.G&255,this.ea());this.A--}, +function(){this.G=sd.call(this,this.G,this.K());this.A--},function(){K(this,this.Eb.oa);this.A-=this.lg},function(){Nc(this,this.Ja());this.A-=this.jc},function(){Sg[this.ea()].call(this,ld)},function(){Tg[this.ea()].call(this,td)},function(){Ug[this.ea()].call(this,ld)},function(){O[this.ea()].call(this,td)},function(){this.G=this.G&-256|ld.call(this,this.G&255,this.ea());this.A--},function(){this.G=td.call(this,this.G,this.K());this.A--},function(){K(this,this.Qb.oa);this.A-=this.lg},function(){Mc(this, +this.Ja());this.A-=this.jc},function(){Sg[this.ea()].call(this,md)},function(){Tg[this.ea()].call(this,ud)},function(){Ug[this.ea()].call(this,md)},function(){O[this.ea()].call(this,ud)},function(){this.G=this.G&-256|md.call(this,this.G&255,this.ea());this.A--},function(){this.G=ud.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.cb;this.A-=this.Pb},function(){var a=this.G&255,b=Rc(this),c=this.Y&this.da;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.G=this.G&-256| +(this.Y=this.ja=a&255);this.da=65536;c&&(this.Y|=this.da);b?ad(this):Wc(this);this.A-=this.He},function(){Sg[this.ea()].call(this,nd)},function(){Tg[this.ea()].call(this,vd)},function(){Ug[this.ea()].call(this,nd)},function(){O[this.ea()].call(this,vd)},function(){this.G=this.G&-256|nd.call(this,this.G&255,this.ea());this.A--},function(){this.G=vd.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.ra;this.A-=this.Pb},function(){var a=this.G&255,b=Rc(this),c=this.Y&this.da; +if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.G=this.G&-256|(this.Y=this.ja=a&255);this.da=65536;c&&(this.Y|=this.da);b?ad(this):Wc(this);this.A-=this.He},function(){Sg[this.ea()].call(this,od)},function(){Tg[this.ea()].call(this,wd)},function(){Ug[this.ea()].call(this,od)},function(){O[this.ea()].call(this,wd)},function(){this.G=this.G&-256|od.call(this,this.G&255,this.ea());this.A--},function(){this.G=wd.call(this,this.G,this.K());this.A--},function(){this.$|=20;this.C=this.M=this.Eb;this.A-= +this.Pb},function(){var a=this.G&255,b=this.G>>8,c,d=Rc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Y=a);this.da=65536;c&&(this.Y|=this.da);d?ad(this):Wc(this);this.A-=this.He},function(){Sg[this.ea()].call(this,pd)},function(){Tg[this.ea()].call(this,xd)},function(){Ug[this.ea()].call(this,pd)},function(){O[this.ea()].call(this,xd)},function(){this.G=this.G&-256|pd.call(this,this.G&255,this.ea());this.A--},function(){this.G=xd.call(this,this.G,this.K());this.A--},function(){this.$|= +20;this.C=this.M=this.Qb;this.A-=this.Pb},function(){var a=this.G&255,b=this.G>>8,c,d=Rc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.Y=a);this.da=65536;c&&(this.Y|=this.da);d?ad(this):Wc(this);this.A-=this.He},function(){this.ma=this.G;this.G=(this.ja=this.G+1)&65535;this.Y=this.G|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.I;this.I=(this.ja=this.I+1)&65535;this.Y=this.I|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.J; +this.J=(this.ja=this.J+1)&65535;this.Y=this.J|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.B;this.B=(this.ja=this.B+1)&65535;this.Y=this.B|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.X;this.X=(this.ja=this.X+1)&65535;this.Y=this.X|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.H;this.H=(this.ja=this.H+1)&65535;this.Y=this.H|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.F;this.F=(this.ja= +this.F+1)&65535;this.Y=this.F|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.D;this.D=(this.ja=this.D+1)&65535;this.Y=this.D|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.G;this.G=(this.ja=this.G-1)&65535;this.Y=this.G|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.I;this.I=(this.ja=this.I-1)&65535;this.Y=this.I|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.J;this.J=(this.ja=this.J-1)&65535; +this.Y=this.J|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.B;this.B=(this.ja=this.B-1)&65535;this.Y=this.B|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.X;this.X=(this.ja=this.X-1)&65535;this.Y=this.X|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.H;this.H=(this.ja=this.H-1)&65535;this.Y=this.H|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.F;this.F=(this.ja=this.F-1)&65535;this.Y=this.F| +(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){this.ma=this.D;this.D=(this.ja=this.D-1)&65535;this.Y=this.D|(this.Y&this.da?1:0)<<16;this.da=65536;this.A-=2},function(){K(this,this.G);this.A-=this.rc},function(){K(this,this.I);this.A-=this.rc},function(){K(this,this.J);this.A-=this.rc},function(){K(this,this.B);this.A-=this.rc},function(){K(this,this.X-2&65535);this.A-=this.rc},function(){K(this,this.H);this.A-=this.rc},function(){K(this,this.F);this.A-=this.rc},function(){K(this,this.D); +this.A-=this.rc},function(){this.G=this.Ja();this.A-=this.jc},function(){this.I=this.Ja();this.A-=this.jc},function(){this.J=this.Ja();this.A-=this.jc},function(){this.B=this.Ja();this.A-=this.jc},function(){this.X=this.Ja();this.A-=this.jc},function(){this.H=this.Ja();this.A-=this.jc},function(){this.F=this.Ja();this.A-=this.jc},function(){this.D=this.Ja();this.A-=this.jc},Zg,$g,ah,bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,Zg,$g,ah,bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh,oh,function(){Wg[this.ea()].call(this, +Wd,this.K);this.A-=0>this.Ka?1:this.wh},oh,function(){Wg[this.ea()].call(this,Wd,this.L);this.A-=0>this.Ka?1:this.wh},function(){Sg[this.ea()].call(this,he)},function(){Tg[this.ea()].call(this,ie)},function(){Ug[this.Pg=this.ea()].call(this,te)},function(){O[this.Pg=this.ea()].call(this,ue)},function(){this.$|=1;Sg[this.ea()].call(this,fe)},function(){this.$|=1;Tg[this.ea()].call(this,fe)},function(){Ug[this.ea()].call(this,fe)},function(){O[this.ea()].call(this,fe)},function(){var a=this.ea();switch((a& +56)>>3){case 0:this.Db=this.cb.oa;break;case 1:this.Db=this.ra.oa;break;case 2:this.Db=this.Eb.oa;break;case 3:this.Db=this.Qb.oa;break;default:N.call(this);return}this.$|=1;Tg[a].call(this,ge)},function(){this.$|=1;this.C=this.M=this.am;O[this.ea()].call(this,me)},function(){var a,b=this.ea(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Ga){G.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.X;break;case 5:a=this.H;break; +case 6:a=this.F;break;case 7:a=this.D}}O[b].call(this,fe);switch(c){case 0:Oc(this,this.G);this.G=a;break;case 1:Ic(this,this.I);this.I=a;break;case 2:Nc(this,this.J);this.J=a;break;case 3:Mc(this,this.B);this.B=a;break;case 4:Oc(this,this.X);this.X=a;break;case 5:Ic(this,this.H);this.H=a;break;case 6:Nc(this,this.F);this.F=a;break;case 7:Mc(this,this.D),this.D=a}},function(){this.$|=1;Wg[this.ea()].call(this,Xd,this.Ja)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a;this.A-= +3},function(){var a=this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.X;this.X=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Pk},function(){var a=this.K(),b=this.K();K(this, +this.ra.oa);K(this,this.sa);wc(this,a,b);this.A-=this.Sk},function(){N.call(this)},function(){K(this,zc(this));this.A-=this.rc},function(){xc(this,this.Ja());this.A-=this.jc},function(){var a=this.G>>8;a&1?$c(this):Vc(this);a&4?Qc(this)||(this.ja^=1):Qc(this)&&(this.ja^=1);a&16?ad(this):Wc(this);a&64?bd(this):Xc(this);a&128?cd(this):Yc(this);this.A-=this.Cb},function(){this.G=this.G&255|(zc(this)&213)<<8;this.A-=this.Cb},function(){this.G=this.G&-256|this.T(this.C,this.K());this.A-=this.aj},function(){this.G= +this.U(this.C,this.K());this.A-=this.aj},function(){var a=this.K(),b=this.G;this.bd(this.C.$b(a,0),b);this.A-=this.bj},function(){var a=this.K(),b=this.G;this.Nd(this.C.$b(a,1),b);this.A-=this.bj},function(){var a=1,b=0,c=this.cj;this.wa&192&&(a=this.I,b=1,c=this.ej,this.wa&256||(this.A-=this.dj));if(a--){var d=this.xa&1024?-1:1,e=this.T(this.C,this.F);this.bd(this.cb.$b(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){var a= +1,b=0,c=this.cj;this.wa&192&&(a=this.I,b=1,c=this.ej,this.wa&256||(this.A-=this.dj));if(a--){var d=this.xa&1024?-2:2,e=this.U(this.C,this.F);this.Nd(this.cb.$b(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.Ni;this.wa&192&&(a=this.I,b=1,c=this.Pi,this.wa&256||(this.A-=this.Oi));if(a--){var d=this.xa&1024?-1:1,e=this.T(this.C,this.F),f=this.N(this.cb,this.D);pd.call(this,e,f);this.F=this.F+d&65535; +this.D=this.D+d&65535;this.A-=c-this.qb;this.I-=b;a&&Sc(this)==(this.wa&64)&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){var a=1,b=0,c=this.Ni;this.wa&192&&(a=this.I,b=1,c=this.Pi,this.wa&256||(this.A-=this.Oi));if(a--){var d=this.xa&1024?-2:2,e=this.U(this.C,this.F),f=this.O(this.cb,this.D);xd.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.qb;this.I-=b;a&&Sc(this)==(this.wa&64)&&(J(this,this.wa&16?-3:-2),this.$|=256)}},function(){this.Y=this.ja=this.ma=this.G&255& +this.ea();this.da=256;this.A-=this.He},function(){this.Y=this.ja=this.ma=this.G&this.K();this.da=65536;this.A-=this.He},function(){var a=1,b=0,c=this.nj;this.wa&192&&(a=this.I,b=1,c=this.pj,this.wa&256||(this.A-=this.oj));if(a--){var d=this.G;this.bd(this.cb.$b(this.D,0),d);this.D=this.D+(this.xa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.nj;this.wa&192&&(a=this.I,b=1,c=this.pj,this.wa&256||(this.A-=this.oj));if(a--){var d=this.G;this.Nd(this.cb.$b(this.D, +1),d);this.D=this.D+(this.xa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.$|=256)}},function(){var a=1,b=0,c=this.Vi;this.wa&192&&(a=this.I,b=1,c=this.Xi,this.wa&256||(this.A-=this.Wi));a--&&(this.G=this.G&-256|this.T(this.C,this.F),this.F=this.F+(this.xa&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.wa&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.Vi;this.wa&192&&(a=this.I,b=1,c=this.Xi,this.wa&256||(this.A-=this.Wi));a--&&(this.G=this.U(this.C,this.F),this.F=this.F+(this.xa& +1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.wa&16?-3:-2),this.$|=256))},function(){var a=1,b=0,c=this.hj;this.wa&192&&(a=this.I,b=1,c=this.jj,this.wa&256||(this.A-=this.ij));a--&&(pd.call(this,this.G&255,this.N(this.cb,this.D)),this.D=this.D+(this.xa&1024?-1:1)&65535,this.A-=c-this.qb,this.I-=b,a&&Sc(this)==(this.wa&64)&&(J(this,-2),this.$|=256))},function(){var a=1,b=0,c=this.hj;this.wa&192&&(a=this.I,b=1,c=this.jj,this.wa&256||(this.A-=this.ij));a--&&(xd.call(this,this.G,this.O(this.cb, +this.D)),this.D=this.D+(this.xa&1024?-2:2)&65535,this.A-=c-this.qb,this.I-=b,a&&Sc(this)==(this.wa&64)&&(J(this,-2),this.$|=256))},function(){this.G=this.G&-256|this.ea();this.A-=this.Cb},function(){this.I=this.I&-256|this.ea();this.A-=this.Cb},function(){this.J=this.J&-256|this.ea();this.A-=this.Cb},function(){this.B=this.B&-256|this.ea();this.A-=this.Cb},function(){this.G=this.G&255|this.ea()<<8;this.A-=this.Cb},function(){this.I=this.I&255|this.ea()<<8;this.A-=this.Cb},function(){this.J=this.J& +255|this.ea()<<8;this.A-=this.Cb},function(){this.B=this.B&255|this.ea()<<8;this.A-=this.Cb},function(){this.G=this.K();this.A-=this.Cb},function(){this.I=this.K();this.A-=this.Cb},function(){this.J=this.K();this.A-=this.Cb},function(){this.B=this.K();this.A-=this.Cb},function(){this.X=this.K();this.A-=this.Cb},function(){this.H=this.K();this.A-=this.Cb},function(){this.F=this.K();this.A-=this.Cb},function(){this.D=this.K();this.A-=this.Cb},ph,qh,ph,qh,function(){O[this.ea()].call(this,oe)},function(){O[this.ea()].call(this, +ne)},function(){this.$|=1;Vg[this.ea()].call(this,Yd,this.ea)},function(){this.$|=1;Wg[this.ea()].call(this,Yd,this.K)},rh,sh,rh,sh,function(){fd.call(this,3,null,this.il)},function(){var a=this.ea(),b;a:{b=this.Gg[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],this.Ca)){b=!1;break a}b=!0}b?fd.call(this,a,null,0):this.A--},function(){Uc(this)?fd.call(this,4,null,this.jl):this.A-=this.kl},function(){wc(this,this.Ja(),this.Ja());xc(this,this.Ja());this.Wg&&Cc(this,this.Ca);this.A-= +this.gl},function(){Vg[this.ea()].call(this,Zd,Nd)},function(){Wg[this.ea()].call(this,$d,Nd)},function(){Vg[this.ea()].call(this,Zd,Od)},function(){Wg[this.ea()].call(this,$d,Od)},function(){var a=this.ea(),b=this.G&255;this.G=(b/a&255)<<8|b%a;this.da=256;this.Y=this.ja=b;this.A-=this.Mk},function(){var a=this.ea();this.Y=this.ja=this.G=(this.G>>8)*a+this.G&255;this.da=256;this.A-=this.Lk},function(){this.G=this.G&-256|(Pc(this)?255:0);this.A-=2},function(){this.G=this.G&-256|this.T(this.C,this.B+ +(this.G&255)&65535);this.A-=this.Kl},th,th,th,th,th,th,th,th,function(){var a=this.L();(this.I=this.I-1&65535)&&this.Y&this.da-1?(I(this,this.sa+a),this.A-=this.rl):this.A-=this.Yi},function(){var a=this.L();!(this.I=this.I-1&65535)||this.Y&this.da-1?this.A-=this.$i:(I(this,this.sa+a),this.A-=this.Zi)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.sa+a),this.A-=this.ql):this.A-=this.Yi},function(){var a=this.L();this.I?this.A-=this.$i:(I(this,this.sa+a),this.A-=this.Zi)},function(){var a= +this.ea();this.G=this.G&-256|hb(this.na,a,this.Ca-2);this.A-=this.Si},function(){var a=this.ea();this.G=hb(this.na,a,this.Ca-1)|hb(this.na,a+1&65535,this.Ca-2)<<8;this.A-=this.Si},function(){var a=this.ea();lb(this.na,a,this.G&255,this.Ca-2);this.A-=this.gj},function(){var a=this.ea();lb(this.na,a,this.G&255,this.Ca-2);lb(this.na,a+1&65535,this.G>>8,this.Ca-2);this.A-=this.gj},function(){var a=this.K();K(this,this.sa);I(this,this.sa+a);this.A-=this.Qk},function(){var a=this.K();I(this,this.sa+a); +this.A-=this.Ti},function(){wc(this,this.K(),this.K());this.A-=this.ml},function(){var a=this.L();I(this,this.sa+a);this.A-=this.Ti},function(){this.G=this.G&-256|hb(this.na,this.J,this.Ca-1);this.A-=this.Ri},function(){this.G=hb(this.na,this.J,this.Ca-1)|hb(this.na,this.J+1&65535,this.Ca-1)<<8;this.A-=this.Ri},function(){lb(this.na,this.J,this.G&255,this.Ca-1);this.A-=this.fj},function(){lb(this.na,this.J,this.G&255,this.Ca-1);lb(this.na,this.J+1&65535,this.G>>8,this.Ca-1);this.A-=this.fj},uh,uh, +function(){this.$|=132;this.A-=this.Pb},function(){this.$|=68;this.A-=this.Pb},function(){this.kb|=4;this.A-=2;this.Z&&1<this.Z.Gb.length?(J(this,-1),this.zb()):this.xa&512||(this.Z&&J(this,-1),this.zb())},function(){Pc(this)?Vc(this):$c(this);this.A-=2},function(){this.Db=-1;Vg[this.ea()].call(this,be,Td);0<=this.Db&&(this.G=this.Db)},function(){this.Db=-1;Wg[this.ea()].call(this,ce,Td);0<=this.Db&&(this.G=this.Db,this.J=this.rg)},function(){this.Y&=~this.da;this.A-=2},function(){this.Y|=this.da; +this.A-=2},function(){this.xa&=-513;this.A-=this.Ok},function(){this.xa|=512;this.$|=4;this.A-=2},function(){this.xa&=-1025;this.A-=2},function(){this.xa|=1024;this.A-=2},function(){Vg[this.ea()].call(this,pc,Td)},function(){Wg[this.ea()].call(this,rc,Td)}]; +function P(a){w.call(this,"ChipSet",a,P);this.Ga=a.model;this.Ga=void 0!==this.Ga?parseInt(this.Ga,10):vh;this.Zb=0;var b=a.sw1;if(b)this.Zb=wh(b,xh|yh.nm);else if(b=a.fdrives||2,this.Zb|=zh.Mh,b--,this.Zb|=(b&3)<<zh.zf,b=a.monitor||(this.Ga<Ah?"mono":"ega"),void 0!==Bh[b])this.Zb|=Bh[b]<<yh.zf;this.oe=wh(a.sw2||"11110000",0);this.Hn=this.Ga==vh?16:64;this.Lf=this.Mf=1;this.Ga>=Ah&&(this.Lf=this.Mf=2);this.hh=a.scaleTimers||!1;this.fp=a.rtcDate;this.uk=!1;a.sound&&window&&"webkitAudioContext"in window&& +(this.ci=new webkitAudioContext);this.reset();this.Sa()}x(w,P);var vh=5150,Ah=5170,Bh={none:0,tv:1,color:2,mono:3,ega:0},zh={Mh:1},xh=12,yh={up:16,op:32,nm:48,yf:48,zf:4};zh.ONE=0;zh.vp=64;zh.tp=128;zh.qp=192;zh.yf=192;zh.zf=6;k=P.prototype; +k.wb=function(a,b,c,d){switch(c){case "sw1":return this.ta[c]=d,Ch(this,c,d,this.Zb,{0:this.Ga==vh?"Bootable Floppy Drive":"Loop on POST",1:this.Ga==vh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ga==vh)return this.ta[c]=d,Ch(this,c,d,this.oe,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.ta[c]=d,!0}return!1}; +k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.Da=a;this.pb=B(a,"Keyboard");this.Ll=Math.round(c.Hd/1193181);gb(b,this,Dh);kb(b,this,Eh);this.Ga<Ah?(gb(b,this,Fh),kb(b,this,Gh)):(gb(b,this,Hh),kb(b,this,Ih));if(d){var e=this;Jh(d,P);Kh(d,P.Qe,function(){for(var a=0;a<e.sb.length;a++){for(var b=e.sb[a],c="PIC"+a+":",d=0;d<b.qd.length;d++)c+=" IC"+(d+1)+"="+p(b.qd[d]);c+=" IMR="+p(b.wd)+" IRR="+p(b.Kb)+" ISR="+p(b.Fc);e.Z.message(c)}});Kh(d,P.Re,function(){for(var a=0;a<e.Ib.length;a++){Lh(e, +a);var b=e.Ib[a],c="TIMER"+a+":",d=0;if(void 0!==b.hd)for(var n=0;n<=b.hd;n++)d|=b.ac[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.hd+" COUNT="+r(d);e.Z.message(c)}});Kh(d,P.Ta,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Mh(e,b):e.pa[b];a&&(a+="\n");a+="CMOS[0x"+p(b)+"]: 0x"+p(c)}e.Z.message(a)})}Ac(c,26,this,this.En)};k.bc=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0}; +k.reset=function(){var a;this.cd=this.Zb;this.Oe=this.oe;Nh(this);this.$a=Array(this.Lf);for(a=0;a<this.Lf;a++)Oh(this,a);this.sb=Array(this.Mf);Ph(this,0,32);1<this.Mf&&Ph(this,1,160);this.$h=void 0;this.Ib=Array(3);for(a=0;a<this.Ib.length;a++)Qh(this,a);this.Kf=this.Yh=this.fc=this.Rg=void 0;this.Qg=0;if(this.Ga>=Ah){this.jb=16;this.vd=0;this.Ec=16;this.Mg=0;this.ue=160;512<=Rh(this)&&(this.ue|=16);3==Sh(this)&&(this.ue|=64);this.Wh=3;this.If=0;this.Ig=Array(7);this.ve=0;this.pa||(this.pa=Array(64), +Th(this,this.fp));for(a=14;46>a;a++)void 0===this.pa[a]&&(this.pa[a]=0);this.pa[20]=this.cd&(yh.yf|2|zh.Mh|zh.yf);this.pa[16]=Uh(this,0)<<4|Uh(this,1);Vh(this)}}; +function Th(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ca("CMOS date invalid ("+b+"), using "+c)):b&&a.ca("CMOS date: "+c);a.pa[0]=c.getSeconds();a.pa[1]=0;a.pa[2]=c.getMinutes();a.pa[3]=0;a.pa[4]=c.getHours();a.pa[5]=0;a.pa[6]=c.getDay()+1;a.pa[7]=c.getDate();a.pa[8]=c.getMonth()+1;c=c.getFullYear();a.pa[9]=c%100;c/=100;a.pa[50]=c%10|c/10<<4;a.ag=-1;a.pa[10]=38;a.pa[11]=2;a.pa[12]=0;a.pa[13]=128} +function Mh(a,b){var c=a.pa[b];if(10>b){var d=!1;4!=b&&5!=b||a.pa[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.pa[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.pa[b]^=128);return c}function Vh(a){for(var b=0,c=16;46>c;c++)b+=a.pa[c];a.pa[47]=b&255;a.pa[46]=b>>8} +k.save=function(){var a=new H(this);a.set(0,[this.Zb,this.oe,this.cd,this.Oe]);for(var b=[],c=0;c<this.$a;c++){var d=[],e=this.$a[c];d[0]=e.Zd;d[1]=e.Xh;d[2]=e.bk;d[3]=e.nb;for(var f=[],g=0;g<e.Hb.length;g++){var h=[],m=e.Hb[g];h[0]=m.Fd;h[1]=m.Xj;h[2]=m.Ic;h[3]=m.Sb;h[4]=m.ac;h[5]=m.mode;h[6]=m.Sg;h[8]=m.cp;h[9]=m.dp;f[g]=h}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.sb.length;c++)d=[],e=this.sb[c],d[0]=e.fg,d[1]=e.qd,d[2]=e.Id,d[3]=e.wd,d[4]=e.Kb,d[5]=e.Fc,d[6]=e.we,d[7]=e.Jf,b[c]=d;a.set(2, +[b]);b=[];for(c=0;c<this.Ib.length;c++)d=[],e=this.Ib[c],d[0]=e.Ic,d[1]=e.Wc,d[2]=e.ac,d[3]=e.Rf,d[4]=e.ek,d[5]=e.mode,d[6]=e.sg,d[7]=e.be,d[8]=e.hd,d[9]=e.ld,d[10]=e.Uf,d[11]=e.bf,d[12]=e.ke,b[c]=d;a.set(3,[this.$h,b]);a.set(4,[this.Rg,this.fc,this.Yh,this.Kf,this.Qg]);this.Ga>=Ah&&(a.set(5,[this.jb,this.vd,this.Ec,this.Mg,this.ue,this.Wh]),a.set(6,[this.If,this.Ig,this.ve,this.pa,this.ag]));return a.data()}; +k.restore=function(a){var b,c;b=a[0];this.Zb=b[0];this.oe=b[1];this.cd=b[2];this.Oe=b[3];b=a[1];this.$a=Array(this.Lf);for(c=0;c<this.Lf;c++)Oh(this,c,1==b.length?b[0][c]:b);b=a[2];this.sb=Array(this.Mf);for(c=0;c<this.Mf;c++)Ph(this,c,0===c?32:160,b[0][c]);b=a[3];this.$h=b[0];this.Ib=Array(3);for(c=0;c<this.Ib.length;c++)Qh(this,c,b[1][c]);b=a[4];this.Rg=b[0];this.fc=b[1];this.Yh=b[2];this.Kf=b[3];this.Qg=b[4];if(b=a[5])this.jb=b[0],this.vd=b[1],this.Ec=b[2],this.Mg=b[3],this.ue=b[4],this.Wh=b[5]; +if(b=a[6])this.If=b[0],this.Ig=b[1],this.ve=b[2],this.pa=b[3],this.ag=b[4],Th(this);return!0};function Oh(a,b,c){a=a.$a[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.Zd=c[0];a.Xh=c[1];a.bk=c[2];a.nb=c[3];a.Pn=b<<2;a.Hb=Array(4);for(b=0;b<a.Hb.length;b++)Wh(a,b,c[4][b])}function Wh(a,b,c){var d=a.Hb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ia=a;d.Bk=b;d.Fd=c[0];d.Xj=c[1];d.Ic=c[2];d.Sb=c[3];d.ac=c[4];d.mode=c[5];d.Sg=c[6];Xh(d,c[8],c[9])} +function Xh(a,b,c,d){"string"==typeof b&&(b=Ka(b));b&&(a.$g=null,a.cp=b.id,a.dp=c,a.Yg=b,a.wi=b[c],a.yh=d)}function Ph(a,b,c,d){a=a.sb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.yp=b<<3;a.fg=d[0];a.qd=d[1];a.Id=d[2];a.wd=d[3];a.Kb=d[4];a.Fc=d[5];a.we=d[6];a.Jf=d[7]} +function Qh(a,b,c){a=a.Ib[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.Ic=c[0];a.Wc=c[1];a.ac=c[2];a.Rf=c[3];a.ek=c[4];a.mode=c[5];a.sg=c[6];a.be=c[7];a.hd=c[8];a.ld=c[9];a.Uf=c[10];a.bf=c[11];a.ke=c[12]}function Rh(a,b){return((((b?a.Zb:a.cd)&12)>>2)+1)*a.Hn+32*((b?a.oe:a.Oe)&15)}function Yh(a,b){var c=b?a.Zb:a.cd;return a.Ga!=vh||c&zh.Mh?((c&zh.yf)>>zh.zf)+1:0}function Uh(a,b){return b<Yh(a)?a.Ga<Ah?1:2:0}function Sh(a,b){return((b?a.Zb:a.cd)&yh.yf)>>yh.zf} +function Ch(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+g)+'" class="'+h+'" data-value="0">'+g+"</div>\n"}c.innerHTML=f;b=A(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)void 0!==e&&void 0!==e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),Zh(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Zh(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Zb= +a.Zb&~e|(c?0:e);break;case "sw2":a.oe=a.oe&~e|(c?0:e)}Nh(a)}}(a,b[g])}function Zh(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Nh(a){var b=a.ta.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(Rh(a,!0)+"Kb");d+=", "+c[Sh(a,!0)]+" Monitor";d+=", "+Yh(a,!0)+" Floppy Drives";if(void 0!==a.cd&&a.cd!=a.Zb||void 0!==a.Oe&&a.Oe!=a.oe)d+=" (Reset required)";b.innerHTML=d}} +function $h(a,b,c,d,e){var f=a.$a[b],g=f.Hb[c].Sb[f.nb];f.nb^=1;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.nb+"]",P.Fb,g);return g}function ai(a,b,c,d,e,f){var g=a.$a[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.nb+"]",P.Fb);a=g.Hb[c];a.Sb[g.nb]=a.Xj[g.nb]=e;g.nb^=1}function bi(a,b,c,d,e){var f=a.$a[b],g=f.Hb[c].ac[f.nb];f.nb^=1;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.nb+"]",P.Fb,g);return g} +function ci(a,b,c,d,e,f){var g=a.$a[b];a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.nb+"]",P.Fb);a=g.Hb[c];a.ac[g.nb]=a.Ic[g.nb]=e;g.nb^=1}function di(a,b,c,d){var e=a.$a[b],f=e.Zd|1;e.Zd&=-16;a.ba(c,null,d,"DMA"+b+".STATUS",P.Fb,f);return f}function ei(a,b,c,d,e){var f=a.$a[b];a.ba(c,d,e,"DMA"+b+".REQ",P.Fb);a=d&3;f.Zd=f.Zd&~(16<<a)|(d&4)<<a+2;f.bk=d}function fi(a,b,c,d,e){var f=a.$a[b];a.ba(c,d,e,"DMA"+b+".MASK",P.Fb);b=d&3;c=f.Hb[b];c.Fd=d&4?!0:!1;c.Fd||gi(a,f.Pn+b)} +function hi(a,b,c,d,e){a.ba(c,d,e,"DMA"+b+".CLEAR",P.Fb);a=a.$a[b];for(b=0;b<a.Hb.length;b++)Wh(a,b)}function ii(a,b,c,d,e){var f=a.$a[b].Hb[c].Sg;a.ba(d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",P.Fb,f);return f}function ji(a,b,c,d,e,f){a.ba(d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",P.Fb);a.$a[b].Hb[c].Sg=e}function ki(a,b,c,d){var e=a.Ig[b];a.ba(c,null,d,"DMA.SPARE"+b+".PAGE",P.Fb,e);return e}function li(a,b,c,d,e){a.ba(c,d,e,"DMA.SPARE"+b+".PAGE",P.Fb);a.Ig[b]=d} +function mi(a,b,c,d,e){Xh(a.$a[b>>2].Hb[b&3],c,d,e)}function gi(a,b,c){b=a.$a[b>>2].Hb[b&3];b.Yg&&b.wi&&b.yh?(c&&(b.$g=c),b.Fd||gd(a,b,!0)):c&&c(!0)} +function gd(a,b,c){c&&(b.count=b.ac[1]<<8|b.ac[0],b.em=b.mode&12,b.vk=b.kd=!1);for(var d=!1;0<=b.count&&(c=b.Sg<<16|b.Sb[1]<<8|b.Sb[0],4==b.em?(d=!0,function(c){b.wi.call(b.Yg,b.yh,-1,function(f,g){0>f&&(b.vk||(b.vk=!0),f=255);b.Fd||bb(a.na,c,f);(d=g)&&setTimeout(function(){ni(b)||gd(a,b)},0)})}(c)):8==b.em?(c=$a(a.na,c),0>b.wi.call(b.Yg,b.yh,c)&&(b.kd=!0)):b.kd=!0),!d&&!ni(b););} +function ni(a){if(!a.kd&&0<=--a.count&&(a.mode&32?(a.Sb[0]--,0>a.Sb[0]&&(a.Sb[0]=255,a.Sb[1]--,0>a.Sb[1]&&(a.Sb[1]=255))):(a.Sb[0]++,255<a.Sb[0]&&(a.Sb[0]=0,a.Sb[1]++,255<a.Sb[1]&&(a.Sb[1]=0))),!a.Fd))return!1;var b=a.ia;b.Zd=b.Zd&~(16<<a.Bk)|1<<a.Bk;a.mode&16||(a.Fd=!0,a.Yg=a.yh=null);a.$g&&(a.$g(!a.kd),a.$g=null);return!0}function oi(a,b,c){var d=0,e=a.sb[b];if(void 0!==e.Jf)switch(e.Jf&3){case 2:d=e.Kb;break;case 3:d=e.Fc}a.ba(e.port,null,c,"PIC"+b,P.Qe,d);return d} +function pi(a,b,c,d){var e=a.sb[b];a.ba(e.port,c,d,"PIC"+b,P.Qe);if(c&16)e.Id=0,e.qd[e.Id++]=c,e.wd=0,e.we=7,e.Kb=e.Fc=0,e.Jf=10;else if(c&8)e.Jf=c;else{var f=c&224;if(f&32){d=0;if(96==(f&96))d=1<<(c&7);else for(c=e.we+1;;){c&=7;f=1<<c;if(e.Fc&f){d=f;break}if(c++==e.we)break}e.Fc&d&&(e.Fc&=~d,qi(a,b))}else 192==f&&(e.we=c&7)}}function ri(a,b,c){var d=a.sb[b],e=d.wd;a.ba(d.port+1,null,c,"PIC"+b,P.Qe,e);return e} +function si(a,b,c,d){var e=a.sb[b];a.ba(e.port+1,c,d,"PIC"+b,P.Qe);e.Id<e.qd.length?(e.qd[e.Id++]=c,2==e.Id&&e.qd[0]&2&&e.Id++,3!=e.Id||e.qd[0]&1||e.Id++):(e.wd=c,d=a.S,d.$|=4,qi(a,b,b||253!=c?0:6))}function qi(a,b,c){b=a.sb[b];var d=((b.Fc|b.wd)^255)&b.Kb;a=a.S;a.ka&&(a.kb=d?a.kb|1:a.kb&-2);d&&c&&(b.fg=c)}function Q(a,b,c){var d=b>>3,e=a.sb[d];e.Kb|=1<<(b&7);e.fg=c||0;1==d&&(a.sb[0].Kb|=4);qi(a,d)} +function ti(a,b){var c=b>>3,d=a.sb[c],e=1<<(b&7);d.Kb&e&&(d.Kb&=~e,1!=c||d.Kb||(a.sb[0].Kb&=-5),qi(a,c))}function ed(a,b){void 0===b&&(b=0);var c=-1,d=a.sb[b];if(d.fg)c=-2,d.fg--;else for(var e=d.Kb&((d.Fc|d.wd)^255),f=d.we+1;;){var f=f&7,g=1<<f;if(e&g){c=b||2!=f?d.qd[1]+f:ed(a,1);0<=c&&(d.Fc|=g,d.Kb&=~g);break}if(f++==d.we)break}return c}function ui(a,b,c){var d;d=a.Ib[b];d.be==d.hd&&vi(a,b);if(d.Uf)return d.Rf[d.be++];Lh(a,b);d=d.ac[d.be++];a.ba(64+b,null,c,"TIMER"+b,P.Re,d);return d} +function wi(a,b,c,d){a.ba(64+b,c,d,"TIMER"+b,P.Re);d=a.Ib[b];d.be==d.hd&&vi(a,b);d.Ic[d.be++]=c;if(d.be==d.hd){d.bf&&0!=d.mode&&8!=d.mode||(d.Uf=!1,d.ac[0]=d.Wc[0]=d.Ic[0],d.ac[1]=d.Wc[1]=d.Ic[1],d.ke=E(a.S,a.hh),d.bf=!0,d.ld=0!=d.mode,0==b&&ti(a,0));2==b&&Kb(a);if(0==b){var e=xi(a,0);2048<=e&&(a.S.sh=Math.round(65536/e))}0==b&&0==d.mode&&16==d.sg&&(b=a.S,b.Ob&&(a=b.A-c*a.Ll,b.A-=a,b.Yc-=a))}}k.yn=function(a,b){this.ba(a,null,b,"TIMER_CTRL",P.Re);return null}; +k.Qo=function(a,b,c){this.ba(a,b,c,"TIMER_CTRL",P.Re);this.$h=b;a=(b&192)>>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Ib[a];e.sg=b;e.mode=d;e.ek=c;e.Ic=[0,0];e.ac=[0,0];e.Rf=[0,0];e.ld=!1;e.Uf=!1;e.bf=!1;vi(this,a);0==a&&ti(this,0);2==a&&255==this.sb[0].wd&&77==this.fc&&(a=this.Ib[0],a.Wc[0]=a.Ic[0],a.Wc[1]=a.Ic[1],a.ke=E(this.S,this.hh))}else Lh(this,a),b=this.Ib[a],b.Rf[0]=b.ac[0],b.Rf[1]=b.ac[1],b.Uf=!0,vi(this,a)}}; +function xi(a,b){var c=a.Ib[b],d=c.Ic[1]<<8|c.Ic[0];d||(d=1==c.hd?256:65536);return d}function vi(a,b){var c=a.Ib[b];c.be=32==c.sg?1:0;c.hd=48==c.sg?2:1} +function Lh(a,b,c){var d=a.Ib[b];if(d.bf&&(2!=b||a.fc&1)){var e=E(a.S,a.hh),f=(e-d.ke)/a.Ll|0;0>f&&(d.ke=e,f=0);var g=xi(a,b),h=a.Ib[b],m=h.Wc[1]<<8|h.Wc[0];m||(m=1==h.hd?256:65536);h=m-f;0==d.mode?(0>=h&&(h=0),h||(d.ld=!0,d.bf=!1,b||Q(a,0))):4==d.mode?(d.ld=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Wc[0]=h&255,d.Wc[1]=h>>8,d.ke=e,!b&&d.ld&&Q(a,0))):6==d.mode&&(h-=f,0>=h&&(d.ld=!d.ld,h=g+h,0>=h&&(h=g),d.Wc[0]=h&255,d.Wc[1]=h>>8,d.ke=e,!b&&d.ld&&Q(a,0)));d.ac[0]=h&255;d.ac[1]=h>>8;c&&(a.ke=0)}return d} +function Lb(a,b){for(var c=0;c<a.Ib.length;c++)Lh(a,c,b);if(a.Ga>=Ah){var c=0,d=a.S.Hd,e=E(a.S,a.hh);if(0<=a.ag&&(c=e-a.ag,Math.floor(c/d)&&60<=++a.pa[0]&&(a.pa[0]=0,60<=++a.pa[2]&&(a.pa[2]=0,24<=++a.pa[4])))){a.pa[4]=0;a.pa[6]=a.pa[6]%7+1;var f=a.pa[9],g=oa[a.pa[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.pa[7]>g&&(a.pa[7]=1,12<++a.pa[8]&&(a.pa[8]=1,a.pa[9]=(a.pa[9]+1)%100))}a.ag=e-c%d}} +k.qn=function(a,b){var c=this.Rg;this.Kf&16&&(this.fc&128?c=this.cd:this.pb&&(c=yi(this.pb)));this.ba(a,null,b,"PPI_A",P.Ta,c);return c};k.Jo=function(a,b,c){this.ba(a,b,c,"PPI_A",P.Ta);this.Rg=b};k.rn=function(a,b){var c=this.fc;this.ba(a,null,b,"PPI_B",P.Ta,c);return c};k.Ko=function(a,b,c){this.ba(a,b,c,"PPI_B",P.Ta);zi(this,b);this.pb&&(a=this.pb,c=b&128?!1:!0,b=b&64?!0:!1,a.ni!==b&&(a.ni=a.sk=b),a.pi!==c&&(a.pi=c))&&(a.sk?(Ai(a),a.sk=!1):Bi(a))}; +function zi(a,b){var c=!!(b&2),d=!!(a.fc&2);a.fc=b;c!=d&&Kb(a,c)}k.sn=function(a,b){var c=0,c=this.Ga==vh?this.fc&4?c|this.Oe&15:c|this.Oe>>4&1:this.fc&8?c|this.cd>>4:c|this.cd&15;this.fc&1&&Lh(this,2).ld&&(c=this.fc&2?c|32:c|16);this.ba(a,null,b,"PPI_C",P.Qj|P.Ta,c);return c};k.Lo=function(a,b,c){this.ba(a,b,c,"PPI_C",P.Ta);this.Yh=b};k.tn=function(a,b){var c=this.Kf;this.ba(a,null,b,"PPI_CTRL",P.Ta,c);return c};k.Mo=function(a,b,c){this.ba(a,b,c,"PPI_CTRL",P.Ta);this.Kf=b}; +k.Gm=function(a,b){var c=this.Mg;this.ba(a,null,b,"8042_OUTBUFF",P.Ta,c);this.jb&=-258;var d=this.pb&&yi(this.pb,!0);d&&Ci(this,d);return c};k.bo=function(a,b,c){this.ba(a,b,c,"8042_INBUF.DATA",P.Ta);if(this.jb&8)switch(this.vd){case 96:this.Ec=b;this.jb=this.jb&-5|b&4;break;case 209:Di(this,b);break;default:if(this.Ec&=-17,this.pb){a=-1;switch(b){case 255:a=250,Ai(this.pb)}Ci(this,a)}}this.vd=b;this.jb&=-9};k.Hm=function(a,b){var c=this.fc&-193;this.ba(a,null,b,"8042_RWREG",P.Ta,c);this.fc^=16;return c}; +k.co=function(a,b,c){this.ba(a,b,c,"8042_RWREG",P.Ta);zi(this,b)};k.Im=function(a,b){this.ba(a,null,b,"8042_STATUS",P.Ta,this.jb);var c=this.jb&255;this.jb&256&&(this.jb|=1,this.jb&=-257);return c}; +k.ao=function(a,b,c){this.ba(a,b,c,"8042_INBUFF.CMD",P.Ta);this.vd=b;this.jb|=8;a=0;240<=this.vd&&(a=this.vd^15,this.vd=240);switch(this.vd){case 192:Ci(this,this.ue);break;case 173:this.Ec|=16;break;case 174:this.Ec&=-17;break;case 170:this.pb&&Bi(this.pb,!0);this.Ec|=16;Ci(this,85);Di(this,3);break;case 224:Ci(this,this.Ec&16?0:1);break;case 240:a&1&&vc(this.S)}};function Ci(a,b){0<=b&&(a.Mg=b,a.jb&=-2,a.jb|=256)}function Di(a,b){a.Wh=b;Wa(a.na,!!(b&2));b&1||vc(a.S)} +k.Wm=function(a,b){this.ba(a,null,b,"CMOS_ADDR",P.Ta,this.ve);return this.ve};k.ro=function(a,b,c){this.ba(a,b,c,"CMOS_ADDR",P.Ta);this.ve=b;this.Qg=b&128?0:128};k.Xm=function(a,b){var c=this.ve&63,d=13>=c?Mh(this,c):this.pa[c];this.ba(a,null,b,"CMOS_DATA["+p(c)+"]",P.Ta,d);return d}; +k.so=function(a,b,c){var d=this.ve&63;this.ba(a,b,c,"CMOS_DATA["+p(d)+"]",P.Ta);a=this.pa;13>=d&&10>d&&(c=!1,this.pa[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12<b&&(b+=48),this.pa[11]&2||(12>=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.on=function(a,b){this.ba(a,null,b,"MFG_DATA",P.Ta,this.If);return this.If};k.Go=function(a,b,c){this.ba(a,b,c,"MFG_DATA",P.Ta);this.If=b};k.Io=function(a,b,c){this.ba(a,b,c,"NMI",P.Ta);this.Qg=b}; +k.En=function(a){var b=this.S.G>>8;this.Z&&L(this.Z,this.Z.Ta)&&(this.Z.message("ChipSet.intBIOSRTC(AH="+p(b)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,d){return function(e){d=E(a.S)-d;var f="C="+(Pc(a.S)?1:0),g=a.S.J&255,h=a.S.J>>8,m=a.S.J&255,n=a.S.J>>8;if(2==b||3==b)f+=" CH(hour)="+r(h)+" CL(min)="+p(g)+" DH(sec)="+p(n);else if(4==b||5==b)f+=" CX(year)="+r(a.S.I)+" DH(month)="+p(n)+" DL(day)="+p(m);a.Fa("ChipSet.intBIOSRTC("+e+"): "+f+" (cycles="+d+")")}}(this,E(this.S)))); +return!0};function wh(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c} +function Kb(a,b){if(a.ci){void 0!==b?a.uk=b:b=a.uk&&a.S&&a.S.Ob;var c=Math.round(1193181/xi(a,2));if(20>c||2E4<c)b=!1;b?a.pd?(a.pd.frequency.value=c,a.Fa("speaker set to "+c+"hz",P.Cg)):(a.pd=a.ci.createOscillator(),a.pd.type=1,a.pd.connect(a.ci.destination),a.pd.frequency.value=c,a.Fa("speaker on at "+c+"hz",P.Cg),a.pd.noteOn(0)):a.pd&&(a.pd.noteOff(0),a.pd.disconnect(),delete a.pd,a.Fa("speaker off at "+c+"hz",P.Cg))}else b&&a.Fa("BEEP",P.Cg)} +k.Fa=function(a,b,c){this.Z&&(null==b&&(b=P.Ta),void 0!==c&&(b|=0==c?P.Re:1==c?P.Pj:6==c?P.Bg:0),L(this.Z,b)&&this.Z.message(a))};k.ba=function(a,b,c,d,e,f){this.Z&&(null==e&&(e=P.Ta),this.Z.ba(this,a,b,c,d,e,f))}; +var Dh={0:function(a,b){return $h(this,0,0,a,b)},1:function(a,b){return bi(this,0,0,a,b)},2:function(a,b){return $h(this,0,1,a,b)},3:function(a,b){return bi(this,0,1,a,b)},4:function(a,b){return $h(this,0,2,a,b)},5:function(a,b){return bi(this,0,2,a,b)},6:function(a,b){return $h(this,0,3,a,b)},7:function(a,b){return bi(this,0,3,a,b)},8:function(a,b){return di(this,0,a,b)},32:function(a,b){return oi(this,0,b)},33:function(a,b){return ri(this,0,b)},64:function(a,b){return ui(this,0,b)},65:function(a, +b){return ui(this,1,b)},66:function(a,b){return ui(this,2,b)},67:P.prototype.yn,129:function(a,b){return ii(this,0,2,a,b)},130:function(a,b){return ii(this,0,3,a,b)},131:function(a,b){return ii(this,0,1,a,b)},135:function(a,b){return ii(this,0,0,a,b)}},Fh={96:P.prototype.qn,97:P.prototype.rn,98:P.prototype.sn,99:P.prototype.tn},Hh={96:P.prototype.Gm,97:P.prototype.Hm,100:P.prototype.Im,112:P.prototype.Wm,113:P.prototype.Xm,128:P.prototype.on,132:function(a,b){return ki(this,0,a,b)},133:function(a, +b){return ki(this,1,a,b)},134:function(a,b){return ki(this,2,a,b)},136:function(a,b){return ki(this,3,a,b)},137:function(a,b){return ii(this,1,2,a,b)},138:function(a,b){return ii(this,1,3,a,b)},139:function(a,b){return ii(this,1,1,a,b)},140:function(a,b){return ki(this,4,a,b)},141:function(a,b){return ki(this,5,a,b)},142:function(a,b){return ki(this,6,a,b)},143:function(a,b){return ii(this,1,0,a,b)},160:function(a,b){return oi(this,1,b)},161:function(a,b){return ri(this,1,b)},192:function(a,b){return $h(this, +1,0,a,b)},194:function(a,b){return bi(this,1,0,a,b)},196:function(a,b){return $h(this,1,1,a,b)},198:function(a,b){return bi(this,1,1,a,b)},200:function(a,b){return $h(this,1,2,a,b)},202:function(a,b){return bi(this,1,2,a,b)},204:function(a,b){return $h(this,1,3,a,b)},206:function(a,b){return bi(this,1,3,a,b)},208:function(a,b){return di(this,1,a,b)}},Eh={0:function(a,b,c){ai(this,0,0,a,b,c)},1:function(a,b,c){ci(this,0,0,a,b,c)},2:function(a,b,c){ai(this,0,1,a,b,c)},3:function(a,b,c){ci(this,0,1, +a,b,c)},4:function(a,b,c){ai(this,0,2,a,b,c)},5:function(a,b,c){ci(this,0,2,a,b,c)},6:function(a,b,c){ai(this,0,3,a,b,c)},7:function(a,b,c){ci(this,0,3,a,b,c)},8:function(a,b,c){this.ba(a,b,c,"DMA0.CMD",P.Fb);this.$a[0].Xh=b},9:function(a,b,c){ei(this,0,a,b,c)},10:function(a,b,c){fi(this,0,a,b,c)},11:function(a,b,c){this.ba(a,b,c,"DMA0.MODE",P.Fb);this.$a[0].Hb[b&3].mode=b},12:function(a,b,c){this.ba(a,b,c,"DMA0.INDEX",P.Fb);this.$a[0].nb=0},13:function(a,b,c){hi(this,0,a,b,c)},32:function(a,b,c){pi(this, +0,b,c)},33:function(a,b,c){si(this,0,b,c)},64:function(a,b,c){wi(this,0,b,c)},65:function(a,b,c){wi(this,1,b,c)},66:function(a,b,c){wi(this,2,b,c)},67:P.prototype.Qo,129:function(a,b,c){ji(this,0,2,a,b,c)},130:function(a,b,c){ji(this,0,3,a,b,c)},131:function(a,b,c){ji(this,0,1,a,b,c)},135:function(a,b,c){ji(this,0,0,a,b,c)}},Gh={96:P.prototype.Jo,97:P.prototype.Ko,98:P.prototype.Lo,99:P.prototype.Mo,160:P.prototype.Io},Ih={96:P.prototype.bo,97:P.prototype.co,100:P.prototype.ao,112:P.prototype.ro, +113:P.prototype.so,128:P.prototype.Go,132:function(a,b,c){li(this,0,a,b,c)},133:function(a,b,c){li(this,1,a,b,c)},134:function(a,b,c){li(this,2,a,b,c)},136:function(a,b,c){li(this,3,a,b,c)},137:function(a,b,c){ji(this,1,2,a,b,c)},138:function(a,b,c){ji(this,1,3,a,b,c)},139:function(a,b,c){ji(this,1,1,a,b,c)},140:function(a,b,c){li(this,4,a,b,c)},141:function(a,b,c){li(this,5,a,b,c)},142:function(a,b,c){li(this,6,a,b,c)},143:function(a,b,c){ji(this,1,0,a,b,c)},160:function(a,b,c){pi(this,1,b,c)},161:function(a, +b,c){si(this,1,b,c)},192:function(a,b,c){ai(this,1,0,a,b,c)},194:function(a,b,c){ci(this,1,0,a,b,c)},196:function(a,b,c){ai(this,1,1,a,b,c)},198:function(a,b,c){ci(this,1,1,a,b,c)},200:function(a,b,c){ai(this,1,2,a,b,c)},202:function(a,b,c){ci(this,1,2,a,b,c)},204:function(a,b,c){ai(this,1,3,a,b,c)},206:function(a,b,c){ci(this,1,3,a,b,c)},208:function(a,b,c){this.ba(a,b,c,"DMA1.CMD",P.Fb);this.$a[1].Xh=b},210:function(a,b,c){ei(this,1,a,b,c)},212:function(a,b,c){fi(this,1,a,b,c)},214:function(a,b, +c){this.ba(a,b,c,"DMA1.MODE",P.Fb);this.$a[1].Hb[b&3].mode=b},216:function(a,b,c){this.ba(a,b,c,"DMA1.INDEX",P.Fb);this.$a[1].nb=0},218:function(a,b,c){hi(this,1,a,b,c)}};za(function(){for(var a=A(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new P(d);Ma(d,c);Nh(d)}}); +function Ei(a){w.call(this,"ROM",a,Ei);this.xb=null;this.Yj=a.addr;this.Jh=a.size;this.om=a.alias;this.tg=a.file;this.Ck=a.notify;if(this.tg){a=this.tg;var b=ea(this.tg);"json"!=b&&"hex"!=b&&(a=qa()+"/api/v1/dump?file="+this.tg+"&format=bytes&decimal=true");pa(a,!0,null,this,Ei.prototype.Wn)}}x(w,Ei);Ei.prototype.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;Fi(this)};Ei.prototype.bc=function(){this.Sh&&(this.Z&&Gi(this.Z,this.Yj,this.Jh,this.Sh),delete this.Sh);return!0};Ei.prototype.Yb=function(){return!0}; +Ei.prototype.Wn=function(a,b,c){if(c)this.Ha("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.xb=e;else if(f)for(this.xb=Array(4*f.length),c=b=0;b<f.length;b++)this.xb[c++]=f[b]&255,this.xb[c++]=f[b]>>8&255,this.xb[c++]=f[b]>>16&255,this.xb[c++]=f[b]>>24&255;else this.xb=d;this.Sh=d.symbols;if(!this.xb.length){v("Empty ROM: "+a);return}if(1==this.xb.length){v(this.xb[0]);return}}catch(g){this.Ha("ROM data error: "+ +g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.xb=Array(a.length),d=0;d<a.length;d++)this.xb[d]=parseInt(a[d],16);Fi(this)}};function Fi(a){if(!Pa(a))if(!a.tg)a.Sa();else if(a.xb&&a.na){if(a.xb.length!=a.Jh)Qa(a,"ROM size (0x"+l(a.xb.length)+") does not match specified size (0x"+l(a.Jh)+")");else if(Hi(a,a.Yj)&&Hi(a,a.om)){if(a.Ck){var b=Ka(a.Ck,a.id);b&&("ega"==b.Ga&&Ii(b,a.xb,[8752,12640],8),b.Sa())}delete a.xb}a.Sa()}} +function Hi(a,b){if(null==b)return!0;if(Xa(a.na,b,a.Jh,!0)){for(var c=0;c<a.xb.length;c++)bb(a.na,b+c,a.xb[c]);return!0}return!1}za(function(){for(var a=A(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Ei(d);Ma(d,c)}});function Ni(a){w.call(this,"RAM",a,Ni);this.Kg=a.addr;this.Od=a.size;this.xm=a.test;this.vm=!!this.Od;this.bh=!1}x(w,Ni);Ni.prototype.pc=function(a,b,c){this.na=b;this.S=c;this.Da=a;this.ka=B(a,"ChipSet");this.Sa()}; +Ni.prototype.bc=function(a,b){b||this.reset();return!0};Ni.prototype.Yb=function(){return!0}; +Ni.prototype.reset=function(){if(!this.Kg&&!this.vm&&this.ka){var a=1024*Rh(this.ka);this.Od&&a!=this.Od&&(Za(this.na,this.Kg,this.Od),this.bh=!1);this.Od=a}!this.bh&&this.Od&&Xa(this.na,this.Kg,this.Od)&&(this.bh=!0,this.status(Math.floor(this.Od/1024)+"Kb"));if(this.bh){if(this.xm||cb(this.na,1138,4660),this.ka&&(a=this.ka,a.pa)){var b=1048576>this.Kg?21:23,c=a.pa[b]|a.pa[b+1]<<8,c=c+(this.Od>>10);a.pa[b]=c&255;a.pa[b+1]=c>>8;Vh(a)}}else v("No RAM allocated")}; +za(function(){for(var a=A(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Ni(d);Ma(d,c)}});function Oi(a){w.call(this,"Keyboard",a,Oi);this.Rh={};this.Mn=250;this.Nn=100;this.Sa()}x(w,Oi); +var Pi={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,backspace:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,squote:40,bquote:41,lshift:42,bslash:43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,rshift:54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,home:71,"up-arrow":72,"page-up":73,"num-minus":74, +"left-arrow":75,center:76,"right-arrow":77,"num-plus":78,end:79,"down-arrow":80,"page-down":81,ins:82,del:83},Qi={tab:9,esc:27,rshift:224,lshift:240,ctrl:241,alt:242,"caps-lock":244,f1:336,f2:337,f3:338,f4:339,f5:340,f6:341,f7:342,f8:343,f9:344,f10:345,"left-arrow":261,"up-arrow":262,"right-arrow":263,"down-arrow":264,"ctrl-c":3,"ctrl-break":254,"ctrl-alt-del":255},R=[];R[32]=57;R[49]=2;R[33]=61442;R[50]=3;R[64]=61443;R[51]=4;R[35]=61444;R[52]=5;R[36]=61445;R[53]=6;R[37]=61446;R[54]=7;R[94]=61447; R[55]=8;R[38]=61448;R[56]=9;R[42]=61449;R[57]=10;R[40]=61450;R[48]=11;R[41]=61451;R[45]=12;R[95]=61452;R[61]=13;R[43]=61453;R[113]=16;R[81]=61456;R[119]=17;R[87]=61457;R[101]=18;R[69]=61458;R[114]=19;R[82]=61459;R[116]=20;R[84]=61460;R[121]=21;R[89]=61461;R[117]=22;R[85]=61462;R[105]=23;R[73]=61463;R[111]=24;R[79]=61464;R[112]=25;R[80]=61465;R[91]=26;R[123]=61466;R[93]=27;R[125]=61467;R[97]=30;R[65]=61470;R[115]=31;R[83]=61471;R[100]=32;R[68]=61472;R[102]=33;R[70]=61473;R[103]=34;R[71]=61474; R[104]=35;R[72]=61475;R[106]=36;R[74]=61476;R[107]=37;R[75]=61477;R[108]=38;R[76]=61478;R[59]=39;R[58]=61479;R[39]=40;R[34]=61480;R[96]=41;R[126]=61481;R[92]=43;R[124]=61483;R[122]=44;R[90]=61484;R[120]=45;R[88]=61485;R[99]=46;R[67]=61486;R[118]=47;R[86]=61487;R[98]=48;R[66]=61488;R[110]=49;R[78]=61489;R[109]=50;R[77]=61490;R[44]=51;R[60]=61491;R[46]=52;R[62]=61492;R[47]=53;R[63]=61493;R[8]=14;R[9]=15;R[13]=28;R[27]=1;R[240]=42;R[224]=54;R[241]=29;R[242]=56;R[244]=58;R[336]=59;R[337]=60;R[338]=61; -R[339]=62;R[340]=63;R[341]=64;R[342]=65;R[343]=66;R[344]=67;R[345]=68;R[261]=75;R[262]=72;R[263]=77;R[264]=80;R[254]=61766;R[255]=15921491;k=Ni.prototype; -k.tb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.sa[a])switch(c){case "kbd":return this.sa[a]=d,d.onkeydown=function(a){return Ui(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.Da&32?e.Da&=-33:b=e.Da&12?!1:!Vi(e,a);return b},d.onkeyup=function(a){return Ui(e,a,!1)},!0;default:if(void 0!==Ti[c]&&"button"==b)return this.sa[a]=d,d.onclick=function(a,b,c){return function(){a.S&&a.S.Kd();return!Vi(a,c)}}(this,c,Ti[c]),!0;if(void 0!==Si[c])return this.sa[a]= -d,b=function(a,b,c){return function(){Wi(a,c)}}(this,c,Si[c]),c=function(a,b,c){return function(){Wi(a,c)}}(this,c,Si[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.nc=function(a,b,c,d){this.ma=b;this.S=c;this.Z=d;this.Ca=a;this.ja=C(a,"ChipSet")};k.Oa=function(){this.nk=(this.Bm=ua("iOS"))||ua("Android");this.Ea("mobile keyboard support: "+(this.nk?"true":"false"));return s.prototype.Oa.call(this)}; -function Di(a){a.Ea("keyboard reset",!0);a.vc=[170];a.ja&&Q(a.ja,1,4)}function Bi(a,b){var c=0;a.vc.length&&(c=a.vc[0],a.Ea("scan code "+p(c)+" delivered"),b&&Ei(a));return c}function Ei(a,b){0<a.vc.length&&(b?a.vc=[]:(a.vc.shift(),0<a.vc.length&&a.ja&&Q(a.ja,1)))}k.$b=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};k.Wb=function(a){return a&&this.save?this.save():!0}; -k.reset=function(){this.ee();this.Da=0;this.vc=[];if(this.pd)for(var a in this.pd)aa(a)||this.pd[a]&&clearTimeout(this.pd[a]);this.pd=[];this.Ml=this.Je=0};k.save=function(){var a=new H(this);a.set(0,this.Fj());return a.data()};k.restore=function(a){return this.ee(a[0])};k.ee=function(a){var b=0;void 0===a&&(a=[]);this.ii=a[b++];this.ki=a[b];return!0};k.Fj=function(){var a=0,b=[];b[a++]=this.ii;b[a]=this.ki;return b}; -function Wi(a,b){var c=b&127,d=c==b;if(a.vc)if(20>a.vc.length){if(!(!d&&!a.Mh[c]||d&&a.Mh[c])){a.Mh[c]=d;a.Ea("scan code "+p(b)+" buffered");a.vc.push(b);1==a.vc.length&&a.ja&&Q(a.ja,1);for(var e in Si)if(Si[e]==c){(c=a.sa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.vc.length&&a.vc.push(255),a.Ea("scan code buffer overflow")}function Xi(a,b){var c=b?a.Jn:a.In;a.S&&a.S.jd&&(c/=a.S.jd);return c} -function Yi(a,b){!a.Je||void 0!==b&&b==a.Je||(clearTimeout(a.pd[a.Je]),Zi(a,a.Je,!1))} -function Ui(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Ml=f);240==f+224?(a.Da&=-2,c&&(a.Da|=1),f+=224,e=!1):241==f+224?(a.Da&=-5,c&&(a.Da|=4),f+=224,e=!1):242==f+224?(a.Da&=-9,c&&(a.Da|=8),f+=224,e=!1):244==f+224?(a.Da&=-17,c&&(a.Da|=16),f+=224,d=Vi(a,f)):91==f?(a.Da&=-33,c&&(a.Da|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.Da&12)&&(f=254),d=c?!Vi(a,f):!1):void 0!==R[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.Da&=-33,a.nk||f!=a.Ml||Yi(a));void 0===d&&(d=!Zi(a,f,c));return d} -function Vi(a,b,c){var d=!1;Yi(a,b);Zi(a,b,!0)&&(c?Zi(a,b,!1):(c=!1,a.pd[b]&&(clearTimeout(a.pd[b]),c=!0),c=Xi(a,c),a.pd[a.Je=b]=setTimeout(function(a){return function(){Zi(a,b,!1)}}(a),c)),d=!0);return d} -function Zi(a,b,c){var d=!1;c||(a.pd[b]=null,a.Je==b&&(a.Je=0));var e=R[b];void 0===e&&1<=b&&26>=b&&(e=R[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.Da&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.Da&17||(d=42):224==f?a.Da&18||(d=54):241==f?a.Da&4||(d=29):242==f&&(a.Da&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;c<b.length;c++)Wi(a,b[c]);d=!0}return d}k.Ea=function(a,b){this.Z&&L(this.Z,this.Z.Kj|(b?this.Z.Mj:0))&&this.Z.message(a)}; -Aa(function(){for(var a=y(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=x(c),d=new Ni(d);Qa(d,c)}}); -function S(a,b,c,d){s.call(this,"Video",a,S);this.Fa=a.model;this.Rc=0;"ega"==this.Fa&&(this.Ul=a.switches,this.Rc=a.memory||0);this.ld=a.mode;if(void 0===this.ld||void 0===T[this.ld])this.ld=$i;this.ph=a.charCols;this.Ei=a.charRows;if(void 0===this.ph||void 0===this.Ei)this.ph=T[this.ld][0],this.Ei=T[this.ld][1];this.vd=a.screenWidth;this.be=a.screenHeight;this.sm=a.scale;this.qm=12<=Math.round(this.vd/this.ph);this.um=a.touchScreen;this.Kb=b;this.Tc=c;this.Zl=d;this.ab=this.rc=0;this.Rd=[];this.sd= -Array(16);this.li=!1;var e=this;this.Kb&&(this.Kb.onfocus=function(){e.li=!0},this.Kb.onblur=function(){e.li=!1});if(a=a.fontROM)"json"!=ea(a)&&(a=qa()+"/api/v1/dump?file="+a+"&format=bytes"),pa(a,!0,null,this,this.Tn)}w(s,S); -var aj={2:{Gi:15700,Fi:208,vj:85,wj:96},3:{Gi:18432,Fi:364,vj:85,wj:96},4:{Gi:21850,Fi:364,vj:85,wj:96}},bj={6:[1,3,!0],7:[2,3,!0],8:[5,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[5,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},$i=7,T=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];T[$i]=[80,25,1,0,1];T[13]=[320,200,16];T[14]=[640,200,16];T[15]=[640,350,16];T[16]=[640,350,16];T[0]=T[1];T[2]=T[3];T[5]=T[4];var cj=Array(5);cj[0]=[0,0,0,255];cj[1]=[127,192,127,255]; -cj[2]=[127,192,127,255];cj[3]=[127,255,127,255];cj[4]=[127,255,127,255];var dj=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],U=Array(16);U[0]=[0,0,0,255];U[1]=[0,0,170,255];U[2]=[0,170,0,255];U[3]=[0,170,170,255];U[4]=[170,0,0,255];U[5]=[170,0,170,255];U[6]=[170,85,0,255];U[7]=[170,170,170,255];U[8]=[85,85,85,255];U[9]=[85,85,255,255];U[10]=[85,255,85,255];U[11]=[85,255,255,255];U[12]=[255,85,85,255];U[13]=[255,85,255,255];U[14]=[255,255,85,255];U[15]=[255,255,255,255]; -var ej=[2,4,6],fj=[3,5,7],gj=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],hj=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],V=[0];V[128]=1;V[32768]=2;V[32896]=3;V[8388608]=4;V[8388736]=5;V[8421376]=6;V[8421504]=7;V[2147483648]=8;V[2147483776]=9;V[2147516416]=10;V[2147516544]=11;V[2155872256]=12;V[2155872384]=13;V[2155905024]=14;V[2155905152]=15; -function ij(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=jj[b],f=a.fe||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(kj)];this.Z=a.Z;this.type=e[0];this.port=e[1];this.de=b;this.ab=e[2];this.rc=e[3];this.Rc=d||e[4];65536<=this.Rc&&720896<=this.ab&&(this.rc=Math.min(this.Rc>>2,32768));this.kc=c[0];this.wc=c[1];this.We=c[2];this.rf=c[3];this.mc=c[4]&255;this.fh=c[4]>>8&255;this.bc=c[5];this.yi=kj;this.Gg=lj;if(5==b){this.yi=mj;this.Gg=nj;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5), -0,0,0,Array(9),0,this.Rc,Array(this.Rc>>2),771,0,4294967295,0,4294967295,0,4294967295,0]);this.fd=b[0];this.zd=b[1];this.Pd=b[2];this.Oh=oj;this.Gh=b[3];this.Vf=b[4];this.eh=b[5];this.Bd=b[6];this.Af=b[7];this.Qh=pj;this.si=b[8];this.ti=b[9];this.Ad=b[10];this.pe=b[11];this.Ph=qj;this.sb=b[12];d=this.Rc>>2;if((this.cd=b[14])&&this.cd.length<d){for(var e=this.cd,g=0,h=Array(d),m=0;m<e.length-1;){for(var n=e[m++],r=e[m++];n--;)h[g]=r,g+=2;g==d&&(g=1)}this.cd=h}this.Dh(b[15]);this.qj=b[16];this.eb=b[17]; -this.kd=b[18];this.jb=b[19];this.sh=b[20];this.he=b[21];this.Ge=b[22];this.Ai=b[23];this.Bi=b[24]}f=aj[f]||aj[3];this.Ci=a.S.Fd/f.Gi|0;this.Mn=this.Ci*f.vj/100|0;this.Gk=this.Ci*f.Fi;this.Pn=this.Gk*f.wj/100|0;this.Hi=null==c[7]?0:c[7]}} -var kj=18,mj=25,lj="HORZ_TOTAL HORZ_DISP HORZ_SYNC_POS HORZ_SYNC_WIDTH VERT_TOTAL VERT_TOTAL_ADJ VERT_DISP VERT_SYNC_POS INTERLACE_POS MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),nj="HORZ_TOTAL HORZ_DISP_END HORZ_BLANK_START HORZ_BLANK_END HORZ_RETRACE_START HORZ_RETRACE_END VERT_TOTAL CRTC_OVERFLOW PRESET_ROW_SCAN MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO VERT_DISP_END OFFSET UNDERLINE VERT_BLANK_START VERT_BLANK_END MODE_CTRL LONE_COMPARE".split(" "), -oj="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVRSCAN PLANES HORZPAN".split(" "),pj=["RESET","CLK","MAPMASK","CHARMAP","MODE"],qj="SRESET ESRESET COLRCMP DATAROT READMAP MODE MISC COLRDC BITMASK".split(" ");function rj(a){return this.qc(a)|this.qc(a+1)<<8}function sj(a,b){this.Ac(a,b&255);this.Ac(a+1,b>>8&255)} -var W=[,,function(a){a+=this.offset;return(this.ha.sb=this.pa[a])>>this.ha.qj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.pa[b]>>8:this.pa[b])&255}];W[16]=function(a){a+=this.offset;a=this.pa[a];for(var b=this.ha.Ai&this.ha.Bi,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};W[512]=function(a,b){var c=a+this.offset,d;d=this.pa[c]&~this.ha.eb|(b|b<<8|b<<16|b<<24)&this.ha.eb;d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -W[1024]=function(a,b){var c=a+this.offset;b=b>>this.ha.kd|b<<8-this.ha.kd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ha.he|this.ha.Ge;d=d&this.ha.eb|this.pa[c]&~this.ha.eb;d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -W[1536]=function(a,b){var c=a+this.offset;b=b>>this.ha.kd|b<<8-this.ha.kd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ha.he|this.ha.Ge;d&=this.ha.sb;d=d&this.ha.eb|this.pa[c]&~this.ha.eb;d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -W[2560]=function(a,b){var c=a+this.offset;b=b>>this.ha.kd|b<<8-this.ha.kd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ha.he|this.ha.Ge;d|=this.ha.sb;d=d&this.ha.eb|this.pa[c]&~this.ha.eb;d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -W[3584]=function(a,b){var c=a+this.offset;b=b>>this.ha.kd|b<<8-this.ha.kd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ha.he|this.ha.Ge;d^=this.ha.sb;d=d&this.ha.eb|this.pa[c]&~this.ha.eb;d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};W[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ha.eb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.pa[d]&~c;c=c&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[d]!=c&&(this.pa[d]=c,this.Za=!0)}; -W[4096]=function(a){a+=this.offset;var b=this.pa[a]&~this.ha.eb|this.ha.sb&this.ha.eb;this.pa[a]!=b&&(this.pa[a]=b,this.Za=!0)};W[8192]=function(a,b){var c=a+this.offset,d=hj[b&15],d=d&this.ha.eb|this.pa[c]&~this.ha.eb,d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};W[24576]=function(a,b){var c=a+this.offset,d=hj[b&15],d=d&this.ha.sb,d=d&this.ha.eb|this.pa[c]&~this.ha.eb,d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -W[40960]=function(a,b){var c=a+this.offset,d=hj[b&15],d=d|this.ha.sb,d=d&this.ha.eb|this.pa[c]&~this.ha.eb,d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};W[57344]=function(a,b){var c=a+this.offset,d=hj[b&15],d=d^this.ha.sb,d=d&this.ha.eb|this.pa[c]&~this.ha.eb,d=d&this.ha.jb|this.ha.sb&~this.ha.jb;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -function tj(a){var b=[];if(void 0!==a.de){b[0]=a.kc;b[1]=a.wc;b[2]=a.We;b[3]=a.rf;b[4]=a.mc|a.fh<<8;b[5]=a.bc;if(5==a.de){var c=[];c[0]=a.fd;c[1]=a.zd;c[2]=a.Pd;c[3]=a.Gh;c[4]=a.Vf;c[5]=a.eh;c[6]=a.Bd;c[7]=a.Af;c[8]=a.si;c[9]=a.ti;c[10]=a.Ad;c[11]=a.pe;c[12]=a.sb;c[13]=a.Rc;var d;a:if(d=a.cd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h<d.length;){for(var m=d[h],n=h+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-h>>1;f[e++]=m;h=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=a.mh;c[16]= -a.qj;c[17]=a.eb;c[18]=a.kd;c[19]=a.jb;c[20]=a.sh;c[21]=a.he;c[22]=a.Ge;c[23]=a.Ai;c[24]=a.Bi;b[6]=c}b[7]=a.Hi}return b}function uj(a,b,c,d,e){if(d){var f="",g,h=0;for(g=0;g<e.length;g++)h<e[g].length&&(h=e[g].length);h++;for(g=0;g<e.length;g++){f&&(f+="\n");var m=e[g],f=f+(b+"["+p(g)+"]: "+(m+" ".substr(0,h-m.length))+p(d[g])+(g===c?"*":""))}a.Z.message(f)}else a.Z.message(b+": "+p(c))} -ij.prototype.Dh=function(a){if(null!=a&&a!=this.mh){var b=a&255,c=W[b];c||b&1&&(c=W[1]);var b=a&65280,d=W[b];d||b&256&&(d=W[256]);this.Df||(this.Df=[null,rj,null,sj]);this.Df[0]=c;this.Df[2]=d;this.mh=a}};var jj=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=S.prototype; -k.nc=function(a,b,c,d){this.ma=b;this.S=c;this.Z=d;jb(b,this,vj);mb(b,this,wj);"ega"==this.Fa&&(jb(b,this,xj),mb(b,this,yj));if(d){var e=this;Dc(this.S,16,this,this.Bn);Nh(d,d.zg,function(a){if(e.Aa)if(a){var b=e.Aa;if(b.cd){a=ba(a);a=void 0!==a?a-b.ab:b.So||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var n=l(b.ab+a)+":",r=0;8>r&&a<b.cd.length;r++)var u=b.cd[a++],n=n+(" "+l(u));c&&(c+="\n");c+=n}c&&b.Z.message(c);b.So=a}else b.Z.message("no buffer")}else{e.Z.message("BIOSMODE: "+p(e.Hd));b=e.Aa;uj(b, -"CRTC",b.mc,b.bc,b.Gg);if(1==b.de||3==b.de)uj(b," MODEREG",b.wc),uj(b," STATUS1",b.rf);3==b.de&&uj(b," COLOR",b.We);5==b.de&&(b.Z.message(" ATCDATA: "+b.fd),uj(b," ATC",b.zd,b.Pd,b.Oh),uj(b," GRC",b.Ad,b.pe,b.Ph),uj(b," SEQ",b.Bd,b.Af,b.Qh),uj(b," FEAT",b.eh),uj(b," MISC",b.Vf),uj(b," STATUS0",b.Gh),uj(b," LATCHES",b.sb),b.Z.message(" ACCESS: "+q(b.mh)),b.Z.message("Use 'dump video buffer' to dump video memory"))}else e.Z.message("no active video card")})}(this.nb=C(a,"Keyboard"))&&this.Kb&& -this.nb.tb("input",this.Zl?"textarea":"canvas","kbd",this.Zl||this.Kb);this.Ig=9;(this.ja=C(a,"ChipSet"))&&this.Ul&&(this.Ig=zh(this.Ul,this.Ig));this.nb&&this.um&&zj(this)};k.Bn=function(a){this.Z&&L(this.Z,this.Z.zg)&&(this.Z.message("Video.intBIOS(AX="+q(this.S.G)+") at "+ca(a-this.S.qa.Ja,this.S.qa.na)),Ec(this.S,a,function(a,c){return function(d){var e=c,e=F(a.S)-e;a.Ea("Video.intBIOSReturn("+d+") (cycles="+e+")")}}(this,F(this.S))));return!0}; -k.tb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.sa[c]=d,d.onclick=function(){Ab(e,!0)},!0}return!1};k.Kd=function(){this.Kb&&this.Kb.focus()};function zj(a){var b=a.Kb;b&&!a.hi&&(b.addEventListener("touchstart",function(b){Aj(a,b)},!1),b.addEventListener("touchmove",function(b){Aj(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.hi=!0)} -function Aj(a,b){a.li&&b.preventDefault();var c=0,d=0,e=a.Kb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.vd/a.Kb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.vd/3)|0;d=a.be/a.Kb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.be/3)|0;1!=d?d?Vi(a.nb,264,!0):Vi(a.nb,262,!0):1!=c&&(c?Vi(a.nb,263,!0):Vi(a.nb,261,!0))}k.$b=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0}; -k.Wb=function(a){return a&&this.save?this.save():!0}; -k.reset=function(){var a=!0,b=0;this.ja&&(b=Vh(this.ja));var c=!1;if(this.Fa)switch(this.Fa){case "ega":var c=!0,d=bj[this.Ig];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.fe!==b&&(this.fe=b,a=!0);this.Aa=null;this.Qc=this.Wh=new ij(this,1);this.wb=this.Sg=new ij(this,3);c?(this.ka=new ij(this,5,null,this.Rc),Bj(this)):this.ka=new ij;Cj(this);this.Hd=null;this.ld=3==b?$i:3;this.ye=this.Jc=-1;this.xe=0;Dj(this,this.ld);if(this.Aa.ab&&a){a=this.Aa.ab+this.Xh;for(b=this.Aa.ab;b<a;b+= -2)d=Math.floor(65536*Math.random()),4==this.fe?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),hb(this.ma,b,c|d<<8);Ab(this,!0)}};function Bj(a){a.ka.Vf&1?(a.Qc=a.Wh,a.wb=a.ka):(a.Qc=a.ka,a.wb=a.Sg)}k.save=function(){var a=new H(this);a.set(0,tj(this.Wh));a.set(1,tj(this.Sg));a.set(2,[this.fe,this.ld,this.Hd]);a.set(3,tj(this.ka));return a.data()}; -k.restore=function(a){var b=a[2];this.fe=b[0];this.ld=b[1];this.Hd=b[2];this.Aa=null;this.Qc=this.Wh=new ij(this,1,a[0]);this.wb=this.Sg=new ij(this,3,a[1]);this.ka=new ij(this,5,a[3],this.Rc);this.ka.kc&&Bj(this);Cj(this);if(!Ej(this))return!1;Fj(this);return!0}; -k.Tn=function(a,b,c){if(c)B(this,"Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){this.error("Empty font ROM image: "+a);return}if(1==d.length){this.error(d[0]);return}if(8192==d.length)Li(this,d,[0,6144]);else{B(this,"Unrecognized font data length ("+d.length+")");return}}catch(e){B(this,"Font ROM data error: "+e.message);return}this.Oa()}}; -function Gj(a,b){if(1==b)return a.sd[0]=U[0],a.sd[1]=U[7],a.sd;if(2==b){var c=a.Aa.We;if(a.Aa===a.ka){var d=a.ka.Pd[0],c=d&7;d&16&&(c|=8);18!=a.ka.Pd[1]&&(c|=32)}a.sd[0]=U[c&15];c=c&32?fj:ej;for(d=0;d<c.length;d++)a.sd[d+1]=U[c[d]];return a.sd}if(a.wb===a.Sg)return U;c=null!=a.ka.Pd[15]?a.ka.Pd:gj;for(d=0;d<a.sd.length;d++){var e=c[d]||0;a.sd[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.sd}function Li(a,b,c,d){a.Eg=b;a.Lh=c;a.Be=d} -function Cj(a){var b=!1;if(window&&a.Eg){var c=a.Be?0:2048,d=a.Be?a.Be:9;Hj(a,1,a.Lh[0],c,d,14,a.Eg,cj,dj)&&(b=!0);c=Gj(a);d=a.Be?a.Be:8;Hj(a,3,a.Lh[1],0,d,8,a.Eg,c)&&(b=!0);a.Be&&Hj(a,5,a.Lh[0],0,a.Be,14,a.Eg,c)&&(b=!0)}return b}function Hj(a,b,c,d,e,f,g,h,m){var n=!1;Ij(a,b,c,d,e,f,g,h,m)&&(n=!0);a.qm&&Ij(a,b<<1,c,d,e,f,g,h,m)&&(n=!0);return n} -function Ij(a,b,c,d,e,f,g,h,m){var n=!1,r=b&1?0:1,u=a.Rd[b];u||(u={ic:e<<r,jc:f<<r,Qe:Array(h.length),Qj:h.slice(),yf:m,Jh:Array(h.length)});for(m=0;m<h.length;m++){var t=h[m],v=u.Qe[m]?u.Qj[m]:[];if(t[0]!==v[0]||t[1]!==v[1]||t[2]!==v[2]){var n=u,v=m,A=r,D=c,ka=d,la=e,tb=f,Mc=g,Td=[0,0,0,0],Nc=window.document.createElement("canvas");Nc.width=n.ic<<4;Nc.height=n.jc<<4;for(var Oi=Nc.getContext("2d"),Ha=void 0,Ib=void 0,fb=void 0,Oc=8>tb||!ka?tb:8,Ud=Oi.createImageData(n.ic,n.jc),Ha=0;256>Ha;Ha++){for(fb= -0;fb<tb;fb++)for(var jl=n.yf&&v&1&&fb>=tb-2,kl=Mc[fb<Oc?D+Ha*Oc+fb:ka+Ha*Oc+fb-Oc],Vd=0;Vd<=A;Vd++)for(Ib=0;Ib<la;Ib++){var Pi=Ib<<A,Qi=(fb<<A)+Vd,Ri=jl||kl&128>>(8<=Ib&&176<=Ha&&223>=Ha?7:Ib)?t:Td;Jj(Ud,Pi,Qi,Ri);A&&Jj(Ud,Pi+1,Qi,Ri)}Oi.putImageData(Ud,(Ha&15)*n.ic,(Ha>>4)*n.jc)}n.Qe[v]="#"+p(t[0])+p(t[1])+p(t[2]);n.Qj[v]=t;n.Jh[v]=Nc;n=!0}}a.Rd[b]=u;return n}function Kj(a){0<a.xe||0<=a.Jc?0>a.ye&&(a.ye=0):a.ye=-1} -function Fj(a){if(a.Sb){for(var b=10;15>=b;b++)if(null==a.Aa.bc[b])return;var c=a.Aa.bc[10],b=c&31,d=a.Aa.bc[11]&31,e=a.Aa.bc[9]&31,f=!1;a.Aa===a.ka&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Lj(a);else{c=a.Aa.bc[15]+((a.Aa.bc[14]&63)<<8);a.Jc!=c&&(Lj(a),a.Jc=c);d=d-b+1;if(a.bm!=b||a.ik!=d)a.bm=b,a.ik=d;a.ae=e+1;Kj(a)}}} -function Lj(a){if(0<=a.Jc){if(void 0!==a.cc){var b=a.cc[a.Jc];if(b&131072){var b=b&-131073,c=a.Jc%a.zb,d=Math.floor(a.Jc/a.zb);a.Sb&&a.Rd[a.Sb]&&(a.Xe&&Mj(a,c,d,b,a.Xe),Mj(a,c,d,b));a.cc[a.Jc]=b}}a.Jc=-1}} -function Nj(a){var b;a=a.Aa;var c=a.pe[5];if(null!=c){b=2;var d=512,e=a.pe[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.kd=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.le=function(a){var b=this.Aa;null!=a&&b&&a!=b.mh&&(b.Dh(a),this.ma.Dh(b.ab,b.rc,b.Df))}; -function Ej(a,b){var c,d=a.Hd,e=a.Aa;if(e)if(1==e.de)d=$i;else if(5==e.de){var d=null,f=e.Rc>>2,g=32768<f?32768:f,h=e.pe[6];if(null!=h){switch(h&12){case 0:e.ab=655360;e.rc=f;d=255;break;case 4:e.ab=655360;e.rc=f;d=3==a.fe?15:16;break;case 8:e.ab=720896;e.rc=g;d=$i;break;case 12:e.ab=753664,e.rc=g,d=3==a.fe?2:3}c=e.Af[1]&8;f=e.bc[6]|(e.bc[7]&1)<<8;255!=d&&(h&1?753664==e.ab?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Nj(a)}}else e.wc&8&&(e.wc&2?(d=e.wc&16?6:5,e.wc&4||(d-=1)):(d=e.wc&1?3:1,e.wc&4&&(d-= -1)));else a.Hd=null,null==d&&(d=a.ld);if(!Dj(a,d,b))return!1;a.le(c);return!0} -function Dj(a,b,c){if(null!=b&&(b!=a.Hd||c)){a.lm=0;a.Hd=b;b=a.Aa||(b==$i?a.Qc:a.wb);if(b!=a.Aa||b.ab!=a.ab||b.rc!=a.rc){Lj(a);if(a.ab){if(!cb(a.ma,a.ab,a.rc))return!1;a.Aa&&(a.Aa.kc=!1)}a.Aa=b;b.kc=!0;a.ab=b.ab;a.rc=b.rc;if(!ab(a.ma,b.ab,b.rc,!1,b===a.ka?b:null))return!1}a.Sb=0;a.zb=a.ph;a.pc=a.Ei;a.zi=T[$i][2];b=0;var d=T[a.Hd];d&&(a.zb=d[0],a.pc=d[1],a.zi=d[2],b=d[3]||0,a.Sb=d[4],4==a.fe&&a.Aa===a.ka&&3==a.Sb&&(7==a.ka.bc[9]?a.pc=43:a.Sb=5));a.Dk=a.zb*a.pc;a.oh=a.Dk/a.zi;a.Xh=(a.oh<<1)+b;a.fk= -b?a.Xh+b>>1:0;13<=a.Hd&&(a.oh<<=1);a.Rd.length&&(a.wd=Math.floor(a.vd/a.zb),a.xd=Math.floor(a.be/a.pc),a.Sb?(b=a.Rd[a.Sb],d=a.Rd[a.Sb<<1],a.sm&&80==a.zb?d&&a.wd>=3*d.ic>>2&&(a.Sb<<=1,b=d):(d&&a.wd>=d.ic&&(a.Sb<<=1,b=d),b&&(a.wd=b.ic,a.xd=b.jc)),a.Pf=a.Qf=0,b&&(a.Pf=a.zb*b.ic,a.Qf=a.pc*b.jc)):(a.wd=a.xd=1,a.Pf=a.zb,a.Qf=a.pc),a.ih=a.Tc.createImageData(a.Pf,a.Qf),a.Ve=window.document.createElement("canvas"),a.Ve.width=a.Pf,a.Ve.height=a.Qf,a.Xe=a.Ve.getContext("2d"),a.Ij=a.Jj=0,a.Zh=a.vd,a.$h=a.be, -b=a.vd-a.zb*a.wd,d=a.be-a.pc*a.xd,0<b&&(a.Ij=b>>1,a.Zh-=b),0<d&&(a.Jj=d>>1,a.$h-=d),b||d)&&(a.Tc.fillStyle=a.Kb.style.backgroundColor,a.Tc.fillRect(0,0,a.vd,a.be));!1!==c?Ab(a,!0):Oj(a,!0)}return!0}function Jj(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Oj(a,b){var c;if(b){if(c=a.oh,void 0===a.cc||a.cc.length!=c)a.cc=Array(c)}else{if(void 0===a.cc)return;c=a.cc.length}for(var d=0;d<c;d++)a.cc[d]=-1;a.xe=-1} -function Mj(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Rd[a.Sb];h.yf&&(d=h.yf[d]);var m=g>>4&15;h.yf&&(m=h.yf[m]);e?(b*=h.ic,c*=h.jc,e.fillStyle=h.Qe[m],e.fillRect(b,c,h.ic,h.jc)):(b=b*a.wd+a.Ij,c=c*a.xd+a.Jj,a.Tc.fillStyle=h.Qe[m],a.Tc.fillRect(b,c,a.wd,a.xd));g&256&&(m=(f&15)*h.ic,f=(f>>4)*h.jc,e?e.drawImage(h.Jh[d],m,f,h.ic,h.jc,b,c,h.ic,h.jc):a.Tc.drawImage(h.Jh[d],m,f,h.ic,h.jc,b,c,a.wd,a.xd));g&512&&(f=a.bm,g=a.ik,e?(a.ae&&a.ae!==h.jc&&(f=Math.floor(f*h.jc/a.ae),g=Math.floor(g*h.jc/a.ae)), -e.fillStyle=h.Qe[d],e.fillRect(b,c+f,h.ic,g)):(a.ae&&a.ae!==a.xd&&(f=Math.floor(f*a.xd/a.ae),g=Math.floor(g*a.xd/a.ae)),a.Tc.fillStyle=h.Qe[d],a.Tc.fillRect(b,c+f,a.wd,g)))} -function Ab(a,b){if(a.Lb){var c=!1;a.Aa&&(a.Aa===a.ka?a.ka.zd&32&&(c=!0):a.Aa.wc&8&&(c=!0));if(c||b){if(b)Oj(a,!0);else if(void 0===a.cc)return;var d=!1;!(b||++a.lm&15)&&0<=a.ye&&(a.ye++,d=!0);var e=0,f=a.Dk,c=a.Aa.ab,g=c+a.Aa.rc,h=(a.Aa.bc[12]<<8)+a.Aa.bc[13];a.Sb&&(h<<=1);var c=c+h,m=a.Xh;c+m>g&&(m=g-c,0>m&&(m=0));g=c+m;if(h=!b){for(var h=a.ma,n=!0,r=c>>h.mb;0<m&&r<h.za.length;)h.za[r].Za&&(h.za[r].Za=n=!1,h.za[r].lk=!0),m-=h.fc,r++;h=n}if(h){if(!d)return;if(!a.xe){if(0>a.Jc)return;e=a.Jc;f=e+1}}if(a.Sb){if(a.Rd[a.Sb]){d= -0;h=a.xe=0;m=1048575;a.Aa.wc&32&&(h=32768,m&=~h,a.ye&2||(m&=-65537));for(c+=e<<1;c<g&&e<f;)n=eb(a.ma,c),n|=65536,n&h&&(a.xe++,n&=m),e==a.Jc&&(n|=a.ye&1?131072:0),r=a.cc[e],r!=n&&(Mj(a,e%a.zb,Math.floor(e/a.zb),n,a.Xe),a.cc[e]=n,d++),c+=2,e++;d&&a.Xe&&a.Tc.drawImage(a.Ve,0,0,a.Pf,a.Qf,a.Ij,a.Jj,a.Zh,a.$h);Kj(a)}}else if(a.fk){for(var f=g,u,t,e=c,g=a.xe=0,d=a.zi,h=16==d?65536:196608,m=16==d?1:2,n=Gj(a,m),v=r=0,A=a.zb,D=0,ka=a.pc,la=0;e<f;){u=eb(a.ma,e);t=a.cc[g];if(t===u)r+=d;else{a.cc[g]=u;u=u>>8| -(u&255)<<8;t=h;var tb=16;r<A&&(A=r);for(var Mc=0;Mc<d;Mc++){var Td=(u&(t>>=m))>>(tb-=m);Jj(a.ih,r++,v,n[Td])}r>D&&(D=r);v<ka&&(ka=v);v>=la&&(la=v+1)}e+=2;g++;if(r>=a.zb){r=0;v+=2;if(v>a.pc)break;v==a.pc&&(v=1,e=c+a.fk)}}A<a.zb&&(a.Xe.putImageData(a.ih,0,0,A,ka,D-A,la-ka),a.Tc.drawImage(a.Ve,0,0,a.zb,a.pc,0,0,a.vd,a.be))}else{f=g;e=a.xe=0;g=Gj(a);d=a.Aa.cd;m=h=0;n=a.zb;r=0;v=a.pc;for(A=0;c<f;){D=c++-a.ab;D=d[D];ka=a.cc[e];if(ka===D)h+=8;else{a.cc[e]=D;h<n&&(n=h);for(ka=0;8>ka;ka++)la=D&2155905152, -0>la&&(la=-la),la=V[la]||0,Jj(a.ih,h++,m,g[la]),D<<=1;h>r&&(r=h);m<v&&(v=m);m>=A&&(A=m+1)}e++;if(h>=a.zb&&(h=0,++m>a.pc))break}n<a.zb&&(a.Xe.putImageData(a.ih,0,0,n,v,r-n,A-v),a.Tc.drawImage(a.Ve,0,0,a.zb,a.pc,0,0,a.vd,a.be))}}}}k.gn=function(a,b){return Pj(this,this.Qc,b)};k.Ao=function(a,b,c){a=this.Qc;a.fh=a.mc;a.mc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.fn=function(a,b){return Qj(this,this.Qc,b)};k.zo=function(a,b,c){Rj(this,this.Qc,b,c)};k.hn=function(a,b){return Sj(this,this.Qc,b)}; -k.Bo=function(a,b,c){a=this.Qc;this.ba(a.port+4,b,c,"MODE");a.wc=b;Ej(this,!1)};k.jn=function(a,b){return Tj(this,this.Qc,b)};k.Kl=function(a,b,c){this.ka.eh=this.ka.eh&-4|b&3;this.ba(a,b,c,"FEAT")};k.zk=function(a,b){var c=this.ka.fd?this.ka.Pd[this.ka.zd&31]:this.ka.zd;this.ba(960,null,b,"ATC."+(this.ka.fd?this.ka.Oh[this.ka.zd&31]:"INDX"),c);this.ka.fd=!this.ka.fd;return c}; -k.Jl=function(a,b,c){var d=this.ka.zd&32;if(this.ka.fd){var e=this.ka.zd&31;if(16<=e||!d)this.ba(a,b,c,"ATC."+this.ka.Oh[e]),this.ka.Pd[e]=b;this.ka.fd=!1}else this.ka.zd=b,this.ba(a,b,c,"ATC.INDX"),this.ka.fd=!0,b&32&&!d&&Cj(this)&&Ab(this,!0)};k.tn=function(a,b){var c=3-((this.ka.Vf&12)>>2),c=this.ka.Gh&-17|(this.Ig&1<<c)<<4-c;this.ka.Gh=c;this.ba(962,null,b,"STATUS0",c);return c};k.Do=function(a,b,c){this.ka.Vf=b;Bj(this);this.ba(962,b,c,"MISC")}; -k.sn=function(a,b){var c=this.ka.Bd;this.ba(964,null,b,"SEQ.INDX",c);return c};k.Ko=function(a,b,c){this.ka.Bd=b;this.ba(964,b,c,"SEQ.INDX")};k.rn=function(a,b){var c=this.ka.Af[this.ka.Bd];this.ba(965,null,b,"SEQ"+this.ka.Qh[this.ka.Bd],c);return c};k.Jo=function(a,b,c){this.ba(965,b,c,"SEQ."+this.ka.Qh[this.ka.Bd]);this.ka.Af[this.ka.Bd]=b;2==this.ka.Bd&&(this.ka.eb=hj[b&15])};k.Zm=function(a,b){var c=this.ka.si;this.ba(972,null,b,"GRC1",c);return c}; -k.uo=function(a,b,c){this.ka.si=b;this.ba(972,b,c,"GRC1")};k.$m=function(a,b){var c=this.ka.ti;this.ba(970,null,b,"GRC2",c);return c};k.vo=function(a,b,c){this.ka.ti=b;this.ba(970,b,c,"GRC2")};k.Ym=function(a,b){var c=this.ka.Ad;this.ba(974,null,b,"GRC.INDX",c);return c};k.to=function(a,b,c){this.ka.Ad=b;this.ba(974,b,c,"GRC.INDX")};k.Xm=function(a,b){var c=this.ka.pe[this.ka.Ad];this.ba(975,null,b,"GRC."+this.ka.Ph[this.ka.Ad],c);return c}; -k.so=function(a,b,c){this.ba(975,b,c,"GRC."+this.ka.Ph[this.ka.Ad]);this.ka.pe[this.ka.Ad]=b;switch(this.ka.Ad){case 0:this.ka.sh=hj[b&15];this.ka.Ge=this.ka.sh&~this.ka.he;break;case 1:this.ka.he=~hj[b&15];this.ka.Ge=this.ka.sh&~this.ka.he;break;case 2:this.ka.Ai=hj[b&15]&2155905152;break;case 3:case 5:this.le(Nj(this));break;case 4:this.ka.qj=(b&3)<<3;break;case 6:Ej(this,!1);break;case 7:this.ka.Bi=hj[b&15^15]&2155905152;break;case 8:this.ka.jb=b|b<<8|b<<16|b<<24}}; -k.Pm=function(a,b){return Pj(this,this.wb,b)};k.lo=function(a,b,c){a=this.wb;a.fh=a.mc;a.mc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.Om=function(a,b){return Qj(this,this.wb,b)};k.ko=function(a,b,c){Rj(this,this.wb,b,c)};k.Qm=function(a,b){return Sj(this,this.wb,b)};k.mo=function(a,b,c){a=this.wb;this.ba(a.port+4,b,c,"MODE");a.wc=b;Ej(this,!1)};k.Nm=function(a,b){var c=this.wb.We;this.ba(this.wb.port+5,null,b,this.wb.type+".COLOR",c);return c}; -k.jo=function(a,b,c){this.ba(this.wb.port+5,b,c,this.wb.type+".COLOR");this.wb.We!==b&&(this.wb.We=b,Oj(this,!1))};k.Rm=function(a,b){return Tj(this,this.wb,b)};function Pj(a,b,c){var d=b.mc;a.ba(b.port,null,c,"CRTC.INDX",d);return d}function Qj(a,b,c){var d;b.mc<b.yi&&(d=b.bc[b.mc]);a.ba(b.port+1,null,c,"CRTC."+b.Gg[b.mc],d);return d}function Rj(a,b,c,d){b.mc<b.yi&&(a.ba(b.port+1,c,d,"CRTC."+b.Gg[b.mc]),b.bc[b.mc]=c,9==b.mc&&8!=b.fh&&Ej(a,!0),Fj(a))} -function Sj(a,b,c){var d=b.wc;a.ba(b.port+4,null,c,"MODE",d);return d}function Tj(a,b,c){var d=0,e=F(a.S),f=e-b.Hi;0>f&&(f=0);f%b.Ci>b.Mn&&(d|=1);f%=b.Gk;f>b.Pn&&(d|=8);b.Hi=e-f;b===a.ka?(d|=b.rf&48^48,b.fd=!1):d=(b.rf^=9)|240;b.rf=d;a.ba(b.port+6,null,c,b===a.ka?"STATUS1":"STATUS",d);return d}k.Ea=function(a,b){this.Z&&(b||L(this.Z,this.Z.zg))&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.zg,e)}; -var vj={948:S.prototype.gn,949:S.prototype.fn,952:S.prototype.hn,954:S.prototype.jn,980:S.prototype.Pm,981:S.prototype.Om,984:S.prototype.Qm,985:S.prototype.Nm,986:S.prototype.Rm},wj={948:S.prototype.Ao,949:S.prototype.zo,952:S.prototype.Bo,980:S.prototype.lo,981:S.prototype.ko,984:S.prototype.mo,985:S.prototype.jo},xj={960:S.prototype.zk,961:S.prototype.zk,962:S.prototype.tn,964:S.prototype.sn,965:S.prototype.rn,970:S.prototype.$m,972:S.prototype.Zm,974:S.prototype.Ym,975:S.prototype.Xm},yj={954:S.prototype.Kl, -960:S.prototype.Jl,961:S.prototype.Jl,962:S.prototype.Do,964:S.prototype.Ko,965:S.prototype.Jo,970:S.prototype.vo,972:S.prototype.uo,974:S.prototype.to,975:S.prototype.so,986:S.prototype.Kl}; -Aa(function(){for(var a=y(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=x(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing <canvas> support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; -e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new S(d,e,f);Qa(d,c)}}); -function X(a){this.wk=a.adapter;switch(this.wk){case 1:this.xj=1016;this.dg=4;break;case 2:this.xj=760;this.dg=3;break;default:ra("Unrecognized serial adapter #"+this.wk);return}this.Zd=null;s.call(this,"SerialPort",a,X);var b=a.binding,c;a=Uj;b&&(void 0===c&&(c="Panel"),(c=Pa(c,this.id))&&(b=c.sa[b])&&this.tb(null,null,a,b))}w(s,X);var Uj="buffer";k=X.prototype;k.Uj=function(a,b){return a==this.gh?(this.Ak=b,this):null}; -k.tb=function(a,b,c,d){var e=this;switch(c){case Uj:return this.sa[c]=this.Zd=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Vj(e,[b]))},d.onkeypress=function(a){a=a||window.event;Vj(e,[a.which||a.keyCode])},!0}return!1};k.nc=function(a,b,c,d){this.ma=b;this.S=c;this.Z=d;this.ja=C(a,"ChipSet");d&&Mh(d,X);jb(b,this,Wj,this.xj);mb(b,this,Xj,this.xj);this.Oa()}; -k.$b=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ee()};k.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.Uh;c[b++]=this.Zj;c[b++]=this.Ne;c[b++]=this.Jg;c[b++]=this.Vd;c[b++]=this.Pc;c[b++]=this.dd;c[b++]=this.Ec;c[b++]=this.Xj;c[b]=this.Cf;a.set(0,c);return a.data()};k.restore=function(a){return this.ee(a[0])}; -k.ee=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.Uh=a[b++];this.Zj=a[b++];this.Ne=a[b++];this.Jg=a[b++];this.Vd=a[b++];this.Pc=a[b++];this.dd=a[b++];this.Ec=a[b++];this.Xj=a[b++];this.Cf=a[b];return!0};function Vj(a,b){a.Cf=a.Cf.concat(b);Yj(a)}function Yj(a){0<a.Cf.length&&!(a.Ec&1)&&(a.Uh=a.Cf.shift(),a.Ec|=1);var b=-1;a.Ec&1&&a.Jg&1&&(b=4);0<=b?(a.Vd&=-8,a.Vd|=b,a.ja&&a.dg&&Q(a.ja,a.dg)):(a.Vd|=1,a.ja&&a.dg&&wi(a.ja,a.dg))} -k.qn=function(a,b){var c=this.Pc&128?this.Ne&255:this.Uh;this.ba(a,null,b,this.Pc&128?"DLL":"RBR",c);this.Ec&=-2;Yj(this);return c};k.an=function(a,b){var c=this.Pc&128?this.Ne>>8:this.Jg;this.ba(a,null,b,this.Pc&128?"DLM":"IER",c);return c};k.bn=function(a,b){var c=this.Vd;this.ba(a,null,b,"IIR",c);return c};k.cn=function(a,b){var c=this.Pc;this.ba(a,null,b,"LCR",c);return c};k.en=function(a,b){var c=this.dd;this.ba(a,null,b,"MCR",c);return c}; -k.dn=function(a,b){var c=this.Ec;this.ba(a,null,b,"LSR",c);return c};k.ln=function(a,b){var c=this.Xj;this.ba(a,null,b,"MSR",c);return c};k.Lo=function(a,b,c){this.ba(a,b,c,this.Pc&128?"DLL":"THR");this.Pc&128?this.Ne=this.Ne&-256|b:(this.Zj=b,this.Ec&=-97,this.Zd?(13!=b&&(8==b?this.Zd.value=this.Zd.value.slice(0,-1):(this.Zd.value+=String.fromCharCode(b),this.Zd.scrollTop=this.Zd.scrollHeight)),a=!0):a=!1,a&&(this.Ec|=96))}; -k.wo=function(a,b,c){this.ba(a,b,c,this.Pc&128?"DLM":"IER");this.Pc&128?this.Ne=this.Ne&255|b<<8:this.Jg=b};k.xo=function(a,b,c){this.ba(a,b,c,"LCR");this.Pc=b}; -k.yo=function(a,b,c){var d=this.dd;this.ba(a,b,c,"MCR");this.dd=b;this.Ak&&(d^b)&3&&(a=this.Ak,b=this.dd,(c=3==(b&3))?a.kc||(d=!1,a.dd&2||(a.reset(),a.Ea("serial mouse reset"),d=!0),a.dd&1||(a.Ea("serial mouse ID requested"),d=!0),d&&(Vj(a.Mf,[77]),a.Ea("serial mouse ID sent")),Zj(a,a.Kb),a.kc=c):a.kc&&(a.Ea("serial mouse inactive"),ak(a.Kb),a.kc=c),a.dd=b)};k.Ea=function(a){this.Z&&L(this.Z,this.Z.Nj)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Nj,e)}; -var Wj={0:X.prototype.qn,1:X.prototype.an,2:X.prototype.bn,3:X.prototype.cn,4:X.prototype.en,5:X.prototype.dn,6:X.prototype.ln},Xj={0:X.prototype.Lo,1:X.prototype.wo,3:X.prototype.xo,4:X.prototype.yo};Aa(function(){for(var a=y(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=x(c),d=new X(d);Qa(d,c)}});function bk(a){s.call(this,"Mouse",a,bk);if(this.ui=a.serial)this.Aj="SerialPort";this.kc=!1;this.Oa()}w(s,bk);k=bk.prototype; -k.nc=function(a,b,c,d){this.Ca=a;this.ma=b;this.S=c;(this.Z=d)&&Mh(d,bk)};k.$b=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Aj&&!this.Mf){for(var c=null;(c=C(this.Ca,this.Aj,c))&&(!c.Uj||!(this.Mf=c.Uj(this.ui,this))););if(this.Mf){if(c=C(this.Ca,"Video"))this.Kb=c.Kb}else ra(this.id+": "+this.Aj+" "+this.ui+" unavailable")}this.kc?Zj(this,this.Kb):ak(this.Kb)}return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ee()}; -k.save=function(){var a=new H(this);a.set(0,this.Fj());return a.data()};k.restore=function(a){return this.ee(a[0])};k.ee=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.kc=a[b++];this.vg=a[b++];this.wg=a[b++];this.uf=a[b++];this.vf=a[b++];this.Yg=a[b++];this.Zg=a[b++];this.dd=a[b];return!0};k.Fj=function(){var a=0,b=[];b[a++]=this.kc;b[a++]=this.vg;b[a++]=this.wg;b[a++]=this.uf;b[a++]=this.vf;b[a++]=this.Yg;b[a++]=this.Zg;b[a]=this.dd;return b}; -function Zj(a,b){b&&(a.hi||(b.addEventListener("mousemove",function(b){if(a.kc&&a.S&&a.S.Mb){if(0>a.vg||0>a.wg)a.vg=b.clientX,a.wg=b.clientY;a.uf=b.clientX-a.vg;a.vf=b.clientY-a.wg;(a.uf||a.vf)&&ck(a,null,b.clientX,b.clientY);a.vg=b.clientX;a.wg=b.clientY}},!1),b.addEventListener("mousedown",function(b){dk(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){dk(a,b.button,!1)},!1),a.hi=!0),b.style.cursor="none")}function ak(a){a&&(a.style.cursor="auto")} -function dk(a,b,c){if(a.kc&&a.S&&a.S.Mb)switch(b){case 0:a.Yg!=c&&(a.Yg=c,ck(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.Zg!=c&&(a.Zg=c,ck(a,"mouse button2 "+(c?"dn":"up")))}}function ck(a,b,c,d){var e=64|(a.Yg?32:0)|(a.Zg?16:0)|(a.vf&192)>>4|(a.uf&192)>>6,f=a.uf&63,g=a.vf&63;a.Ea((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+p(e)+","+p(f)+","+p(g)+"]");Vj(a.Mf,[e,f,g]);a.uf=a.vf=0}k.Ea=function(a){this.Z&&L(this.Z,this.Z.hm)&&this.Z.message(a)}; -Aa(function(){for(var a=y(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=x(c),d=new bk(d);Qa(d,c)}});function ek(a,b,c){s.call(this,"Disk",{id:a.hh+".disk"+fk++},ek);this.ha=a;this.Ca=a.Ca;this.Z=a.Z;this.Ka=b;this.mode=c;this.Id=b.name;this.xc=b.xc;this.yc=b.yc;this.md=b.md;this.Rb=b.Rb;this.af=b.af;this.ni=this.yd=!1;this.create();this.oe=[];this.Bg=[];this.Nd=null;this.Ck=0;this.pi=!1;this.Oa()}var fk=0;w(s,ek);k=ek.prototype;k.nc=function(a,b,c,d){this.Z=d}; -k.$b=function(a,b){b||this.ni&&!this.yd&&this.load(this.Id,this.pf);return!0};k.Wb=function(a,b){if(this.yd){var c,d=0;if(this.pi&&!sa("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=gk(this,!1);)if(d=c[0]){B(this,'Unable to save "'+this.Id+'" (error '+d+")");break}b&&this.yd&&(c="action=close&volume="+this.pf,c+="&machine="+this.ha.cf(),c+="&user="+this.ha.ce(),pa(qa()+"/api/v1/disk?"+c,!0),this.yd=!1);d||B(this,this.Id+" saved")}return!0}; -k.create=function(){this.fb=[];if("preload"!=this.mode){for(var a=Array(this.xc),b=0;b<a.length;b++){for(var c=Array(this.yc),d=0;d<c.length;d++){for(var e=Array(this.md),f=1;f<=e.length;f++)e[f-1]=hk(null,b,d,f,this.Rb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.fb=a}this.Wg=0}; -k.load=function(a,b,c){var d=b;this.Id=a;this.pf=b;this.tk=c;0>b.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.xc+":"+this.yc+":"+this.md+":"+this.Rb,a+="&machine="+this.ha.cf(),a+="&user="+this.ha.ce(),d=qa()+"/api/v1/disk?"+a,this.ni=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"): --1!==b.indexOf("/",b.length-1)&&(c="dir"),d=qa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.af?"":d)+"&format=json"));pa(d,!0,null,this,this.Qn,b)}; -k.Qn=function(a,b,c,d){var e=null;this.bf=!1;var f=0>c&&this.Ca&&!this.Ca.Lb;if(this.ni)c?B(this,'Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.yd=!0,e=this);else if(c)B(this,'Unable to load disk "'+this.Id+'" (error '+c+")",f);else try{if(0<da(a,!0).toLowerCase().indexOf("-readonly"))this.bf=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.bf=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.Id]:0>b.indexOf("0x")&&'["'!= -b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)this.error(h[0]);else{for(b=a=0;b<h.length;b++)for(c=0;c<h[b].length;c++)for(d=0;d<h[b][c].length;d++){var m=h[b][c][d],n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,r=m.pattern;void 0===r&&(r=m.pattern=0);var u=m.data;if(void 0===u){var t=m.bytes;if(void 0!==t&&t.length){for(var f=n<<2,v=t.length;v<f;v++)t[v]=r;this.fill(m,t,0)}else u=[],r=m.pattern=r|r<<8|r<<16|r<< -24,m.data=u;delete m.bytes}hk(m,b,c);for(f=0;f<u.length;f++)a=a+u[f]&4294967295}this.fb=h;this.Wg=a;e=this}else this.error("Empty disk image: "+this.Id)}catch(A){this.error("Disk image error: "+A.message)}this.tk&&this.tk.call(this.ha,this.Ka,e,this.Id,this.pf)};function hk(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.ym=b;a.Am=c;a.Vc=a.Fc=0;a.Za=!1;return a} -k.Rn=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],g=d[2],h=d[3];a=d[4];b=JSON.parse(b);for(var m=0;h--;){var n=this.seek(e,f,g,!0);if(!n)break;this.fill(n,b,m);m+=n.length;g++}}(d=d[5])&&d(c,a)};function ik(a,b,c,d,e,f){if(a.yd){var g;g="action=read&volume="+a.pf;g+="&chs="+a.xc+":"+a.yc+":"+a.md+":"+a.Rb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ha.cf());g+="&user="+a.ha.ce();pa(qa()+"/api/v1/disk?"+g,!0,null,a,a.Rn,[b,c,d,e,!0,f])}else f&&f(-1,!1)} -function jk(a,b,c){b.Za=!0;var d=a.oe.indexOf(b);0<=d&&(a.oe.splice(d,1),a.Bg.splice(d,1));a.oe.push(b);a.Bg.push(ma());c&&kk(a)}function kk(a){if(a.oe.length){var b=a.Bg[0]+2E3;a.Nd&&a.Ck<b&&(clearTimeout(a.Nd),a.Nd=null);if(!a.Nd){var c=ma(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Nd=setTimeout(function(){gk(a,!0)},b);a.Ck=c+b}}else a.Nd&&(clearTimeout(a.Nd),a.Nd=null)} -function gk(a,b){b&&(a.Nd=null);var c=a.oe[0];if(c){for(var d=c.ym,e=c.Am,c=c.sector,f=0,g=[],h=c-1;h<a.fb[d][e].length;h++){var m=a.fb[d][e][h];if(!m.Za)break;var n=a.oe.indexOf(m);a.oe.splice(n,1);a.Bg.splice(n,1);g=g.concat(lk(m));m.Za=!1;f++}a.yd?(h={},a.pi=!0,h.action="write",h.volume=a.pf,h.chs=a.xc+":"+a.yc+":"+a.md+":"+a.Rb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ha.cf(),h.user=a.ha.ce(),h.data=JSON.stringify(g),d=pa(qa()+"/api/v1/disk",b,h,a,a.Wn,[d,e,c,f,b])):d=!1;return b||d}return!1} -k.Wn=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.pi=!1;if(0<=a&&a<this.fb.length&&0<=b&&b<this.fb[a].length)for(e-=1;0<f--&&0<=e&&e<this.fb[a][b].length;e++){var g=this.fb[a][b][e];c?jk(this,g,!1):g.Za||(g.Vc=g.Fc=0)}d&&kk(this)};k.info=function(){return this.fb.length?[this.fb.length,this.fb[0].length,this.fb[0][0].length,this.fb[0][0][0].length]:[0,0,0,0]}; -function mk(a){a=JSON.stringify(a.fb);a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");return a=a.replace(/(sector|length|data|pattern):/gm,'"$1":')} -k.seek=function(a,b,c,d,e){var f=null,g=this.Ka,h=this.fb[a];if(h){var m=h[b];if(!m&&g.Ff&&b<g.yc)for(m=h[b]=Array(g.Wd),h=0;h<m.length;h++)m[h]=hk(null,a,b,h+1,g.Ta,0);if(m){for(h=0;h<m.length;h++)if(m[h].sector==c){f=m[h];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++h<m.length;)null===m[h].pattern&&d++;ik(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.Ff&&9==g.Qa&&(f=m[h]=hk(null,a,b,g.Qa,g.Ta,0))}}e&&e(f,!1);return f}; -k.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function lk(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function nk(a,b){var c=-1;if(b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c} -k.write=function(a,b,c){if(this.bf)return!1;if(b<a.length){if(c!=nk(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Fc?f<a.Vc?(a.Fc+=a.Vc-f,a.Vc=f):f>=a.Vc+a.Fc&&(a.Fc+=f-(a.Vc+a.Fc)+1):(a.Vc=f,a.Fc=1);d[f]=d[f]&~(255<<b)|c<<b;this.yd&&jk(this,a,!0)}return!0}return null}; -k.save=function(){var a=0,b=[];b[a++]=[this.pf,this.Wg];if(!this.yd&&!this.bf)for(var c=this.fb,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g.Fc){for(var h=[],m=0,n=g.Vc,r=g.Vc+g.Fc;n<r;)h[m++]=g.data[n++];b[a++]=[d,e,f,g.Vc,h]}}return b}; -k.restore=function(a){var b=0,c="unsupported restore format";if(this.fb.length&&a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&e[1]!=this.Wg&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.Wg+")",b=-1);for(;d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],m=g[f++],n=g[f++];if(h>=this.fb.length||m>=this.fb[h].length||n>=this.fb[h][m].length){c="sector "+h+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.bf){c="unable to modify write-protected disk";b=-1;break}e= -g[f++];f=g[f++];g=e+f.length;h=this.fb[h][m][n];for(m=h.data.length;m<e;)h.data[m++]=h.pattern;m=0;h.Vc=e;for(h.Fc=f.length;e<g;)h.data[e++]=f[m++];b++}}0>b&&B(this,"unable to restore disk '"+this.Id+": "+c);return b};k.Ea=function(a){this.Z&&L(this.Z,this.Z.em)&&this.Z.message(a)}; -function ok(a){s.call(this,"FDC",a,ok);this.dmaRead=this.bi;this.dmaWrite=this.ci;this.dmaFormat=this.mm;this.Ie=null;if(a.autoMount&&(this.Ie=a.autoMount,"string"==typeof this.Ie))try{this.Ie=eval("("+a.autoMount+")")}catch(b){this.error("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Ie=null}this.sc=[];this.Cd();this.Ef()||this.Oa()}w(s,ok); -var pk={3:{Yd:3,Ae:0,name:"SPECIFY"},4:{Yd:2,Ae:1,name:"DRIVE_STATUS"},5:{Yd:9,Ae:7,name:"WRITE_DATA"},6:{Yd:9,Ae:7,name:"READ_DATA"},7:{Yd:2,Ae:0,name:"RECALIBRATE"},8:{Yd:1,Ae:2,name:"INT_STATUS"},13:{Yd:6,Ae:7,name:"FORMAT"},15:{Yd:3,Ae:0,name:"SEEK"}};k=ok.prototype; -k.tb=function(a,b,c,d){switch(c){case "listDisks":return this.sa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.sa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){a.error("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d='<a href="'+m+'" target="_blank">'+d+"</a>"); -c.innerHTML=d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.sa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||qk(a,c)}}(this,d),!0;case "loadDrive":return this.sa[c]=d,d.onclick=function(a){return function(){var b,c=a.sa.listDisks,d=a.sa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.xa.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=da(d); -z(a,"Attempting to load "+d+' as "'+c+'"')}for(;rk(a,b,c,d,!1)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var m=a,n=d,r=void 0,r=0;r<m.sc.length;r++)if(m.sc[r][1]==n){m.sc.splice(r,1);break}sk(a,b,!1,!0)}}else sk(a,b);else B(a,"Nothing to load")}}(this),!0}return!1};k.nc=function(a,b,c,d){this.ma=b;this.S=c;this.Z=d;this.Ca=a;this.ja=C(a,"ChipSet");jb(b,this,tk);mb(b,this,uk);Dc(c,19,this,this.xi)}; -k.$b=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ca.oi){this.sc=[];for(var c=0;c<this.xa.length;c++)sk(this,c,!0);this.Ef(!0)}}else if(!this.restore(a))return!1;if(this.ja){this.qh=ai(this.ja);for(c=0;c<this.qh;c++){var d=this.xa[c];d.$j=Xh(this.ja,c);2==d.$j&&(d.xc=80)}if(d=this.sa.listDrives){for(;d.firstChild;)d.removeChild(d.firstChild);d.innerHTML="";for(c=0;c<this.qh;c++){var e=window.document.createElement("option");e.value=c;e.innerHTML=String.fromCharCode(65+c)+":";d.appendChild(e)}0< -this.qh&&(d.value="0",qk(this,0))}}}return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Cd()};k.save=function(){var a=new H(this);a.set(0,this.Cj());return a.data()};k.restore=function(a){return this.Cd(a[0])}; -k.Cd=function(a){var b=0,c=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.yb=a[b++];b++;this.ya=a[b++];this.ac=a[b++];this.kb=a[b++];this.Va=a[b++];this.of=a[b++];var d=a[b++],e=a[b++];null!=e&&(this.sc=e);void 0===this.xa&&(this.qh=0,this.xa=Array(4));for(e=0;e<this.xa.length;e++)void 0===this.xa[e]&&(this.xa[e]={}),this.vi(this.xa[e],e,d[e])||(c=!1);this.ke=a[b++]||0;this.Ol=a[b]||0;return c}; -k.Cj=function(){var a=0,b=[];b[a++]=this.yb;b[a++]=0;b[a++]=this.ya;b[a++]=this.ac;b[a++]=this.kb;b[a++]=this.Va;b[a++]=this.of;b[a++]=this.Ej();for(var c=a++,d=0;d<this.xa.length;d++){var e=this.xa[d];e.ua&&vk(this,e.Le,e.ua)}b[c]=this.sc;b[a++]=this.ke;b[a]=this.Ol;return b}; -k.vi=function(a,b,c){var d=0,e=!0;a.yb=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.xc||40,c[3],9,512,c[1]]);a.Wa=c[d++];a.name=c[d][0];a.xc=c[d][1];a.yc=c[d][2];a.md=c[d][3];a.Rb=c[d][4];a.af=c[d][5];d++;a.$j=1;a.hb=c[d++];a.Ud=c[d++];a.vb=c[d++];a.Ud=100<=a.Ud?a.Ud-100:a.Ud-a.vb;a.Qa=c[d++];a.Wd=c[d++];a.Ta=c[d++];a.Sa=c[d++];a.Na=null;a.ua||(a.Le="");var f=c[d++];f===wk?(f=c[d++],c=c[d],rk(this,b,f,c,!0)?a.ua&&xk(this,f,c,a.ua):this.Oa(!1)):void 0!==f&&a.ua&& -0>a.ua.restore(f)&&(e=!1);e&&a.ua&&void 0!==a.Sa&&(a.Na=a.ua.seek(a.vb,a.hb,a.Qa));return e};k.Ej=function(){for(var a=0,b=[],c=0;c<this.xa.length;c++)b[a++]=this.Dj(this.xa[c]);return b};k.Dj=function(a){var b=0,c=[];c[b++]=a.Wa;c[b++]=[a.name,a.xc,a.yc,a.md,a.Rb,a.af];c[b++]=a.hb;c[b++]=a.Ud+100;c[b++]=a.vb;c[b++]=a.Qa;c[b++]=a.Wd;c[b++]=a.Ta;c[b++]=a.Sa;c[b++]=wk;c[b++]=a.Tl;c[b]=a.Le;return c};k.hk=function(a){var b;a=this.xa[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b}; -k.Wl=function(a,b,c){if(a.ua){var d=a.ua.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.vb=Math.floor(b/f),b%=f,a.hb=Math.floor(b/e),a.Qa=b%e+1,a.Ta=c*d[3],a.Wa=0,!0}return!1};k.Ef=function(a){a||(this.we=0);if(this.Ie)for(var b in this.Ie){var c=this.Ie[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.xa.length){!rk(this,d,c.name,c.path,!0)&&a&&this.Oa(!1);continue}}B(this,"Unrecognized auto-mount specification for drive "+b)}return!!this.we}; -function rk(a,b,c,d,e){var f=a.xa[b];if(d&&f.Le!=d){sk(a,b,e,!0);if(f.Ic)return B(a,"Drive "+b+" busy"),!0;f.Ic=!0;e&&(f.De=!0,a.we++,a.Ea("loading diskette '"+c+"'"));(new ek(a,f,"preload")).load(c,d,a.Hn);return!1}return!0} -k.Hn=function(a,b,c,d){a.Ic=!1;b&&b.fb.length>a.xc&&(B(this,'Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.yb)),b=null);b&&(a.ua=b,a.Tl=c,a.Le=d,xk(this,c,d,b),this.ke|=128,B(this,'Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.yb),a.De));a.De&&(a.De=!1,--this.we||this.Oa());qk(this,a.yb)}; -function qk(a,b){if(0<=b&&b<a.xa.length){var c=a.xa[b],d=a.sa.listDisks,e=a.sa.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.Le){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function sk(a,b,c,d){var e=a.xa[b];e.ua&&(vk(a,e.Le,e.ua),e.Tl="",e.Le="",e.ua=null,a.ke|=128,d||B(a,"Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||qk(a,b))} -function xk(a,b,c,d){var e;for(e=0;e<a.sc.length;e++)if(a.sc[e][1]==c){d.restore(a.sc[e][2]);return}a.sc[e]=[b,c,[]]}function vk(a,b,c){var d;for(d=0;d<a.sc.length;d++)if(a.sc[d][1]==b){a.sc[d][2]=c.save();break}}k.ro=function(a,b,c){this.ba(a,b,c,"OUTPUT");b&4?this.of&4||this.of&8&&this.ja&&Q(this.ja,6):this.Cd();this.of=b};k.Wm=function(a,b){this.ba(a,null,b,"STATUS",this.ya);return this.ya}; -k.Um=function(a,b){var c=0;this.kb<this.Va&&(c=this.ac[this.kb]);this.of&8&&this.ja&&wi(this.ja,6);this.ba(a,null,b,"DATA["+this.kb+"]",c);++this.kb>=this.Va&&(this.ya&=-81,this.kb=this.Va=0);return c}; -k.qo=function(a,b,c){this.ba(a,b,c,"DATA["+this.Va+"]");this.Va<this.ac.length&&(this.ac[this.Va++]=b);a=this.ac[0]&31;if(void 0!==pk[a]&&this.Va>=pk[a].Yd){b=!1;this.kb=0;var d;a=this.La()&31;switch(a){case 3:this.La("SRT");this.La("HLT");this.Jb();break;case 4:c=this.La("DS");this.yb=c&3;d=this.xa[this.yb];this.Jb();this.pb((d.Wa&4278190080)>>>24,"ST3");break;case 5:case 6:c=this.La("DS");this.yb=c&3;d=this.xa[this.yb];d.hb=c>>2&1;d.vb=this.La("C");this.La("H");d.Qa=this.La("R");b=this.La("N"); -d.Ta=128<<b;d.Wd=this.La("EOT");this.La("GPL");this.La("DTL");6==a?this.di(d):this.ei(d);this.Jb();yk(this,d);this.pb((d.Wa&65280)>>>8,"ST1");this.pb((d.Wa&16711680)>>>16,"ST2");this.pb(d.vb,"C");this.pb(d.hb,"H");this.pb(d.Qa,"R");this.pb(b,"N");b=!0;break;case 7:c=this.La("DS");this.yb=c&3;d=this.xa[this.yb];d.vb=d.Ud=0;d.Wa=268435488;this.Jb();b=!0;break;case 8:d=this.xa[this.yb];d.hb=0;this.Jb();yk(this,d);this.pb(d.vb,"PCN");break;case 13:c=this.La("DS");this.yb=c&3;d=this.xa[this.yb];d.hb=c>> -2&1;b=this.La("N");d.Ta=128<<b;d.Wd=this.La("SC");this.La("GPL");d.Vj=this.La("D");this.jk(d);this.Jb();yk(this,d);this.pb((d.Wa&65280)>>>8,"ST1");this.pb((d.Wa&16711680)>>>16,"ST2");this.pb(d.vb,"C");this.pb(d.hb,"H");this.pb(d.Qa,"R");this.pb(b,"N");b=!0;break;case 15:c=this.La("DS"),this.yb=c&3,d=this.xa[this.yb],d.hb=c>>2&1,a=this.La("NCN"),d.vb+=a-d.Ud,0>d.vb&&(d.vb=0),d.vb>=d.xc&&(d.vb=d.xc-1),d.Ud=a,d.Wa=32,0==d.vb&&(d.Wa|=268435456),this.Jb(),b=!0}0<this.Va&&(this.ya|=80);this.of&8&&(!d|| -d.Wa&8||!b||this.ja&&Q(this.ja,6))}};k.Vm=function(a,b){var c=this.ke;this.ke&=-129;this.ba(a,null,b,"INPUT",c);return c};k.po=function(a,b,c){this.ba(a,b,c,"CONTROL");this.Ol=b};k.La=function(){var a=this.ac[this.kb];this.kb++;return a};k.Jb=function(){this.kb=this.Va=0};k.pb=function(a){this.ac[this.Va++]=a};function yk(a,b){a.pb(b.yb|b.hb<<2|b.Wa&255,"ST0")}k.bi=function(a,b,c){void 0===b||0>b?this.qc(a,c):c(-1,!1)};k.ci=function(a,b){return void 0!==b&&0<=b?this.Ac(a,b):-1}; -k.mm=function(a,b){return void 0!==b&&0<=b?this.Gj(a,b):-1};k.di=function(a){a.Wa=72;a.ua&&(a.Na=null,a.Wa=0,this.ja&&(pi(this.ja,2,this,"dmaRead",a),ji(this.ja,2)))};k.ei=function(a){a.Wa=72;a.ua&&(a.ua.bf?a.Wa=576:(a.Na=null,a.Wa=0,this.ja&&(pi(this.ja,2,this,"dmaWrite",a),ji(this.ja,2))))};k.jk=function(a){a.Wa=72;a.ua&&(a.Na=null,a.Wa=0,this.ja&&(a.ze=0,a.uc=Array(4),a.Ff=!0,a.Lf=0,pi(this.ja,2,this,"dmaFormat",a),ji(this.ja,2),a.Ff=!1))}; -k.qc=function(a,b){var c=-1;if(!a.Wa&&a.ua){do{if(a.Na&&0<=(c=nk(a.Na,a.Sa++)))break;a.Na=a.ua.seek(a.vb,a.hb,a.Qa);if(!a.Na){a.Wa=1088;break}a.Sa=0;a.Qa++}while(1)}b(c,!1)};k.Ac=function(a,b){if(a.Wa||!a.ua)return-1;do{if(a.Na&&a.ua.write(a.Na,a.Sa++,b))break;a.Na=a.ua.seek(a.vb,a.hb,a.Qa);if(!a.Na){a.Wa=8256;b=-1;break}a.Sa=0;a.Qa++}while(1);return b}; -k.Gj=function(a,b){if(a.Wa)return-1;a.uc[a.ze++]=b;if(a.ze==a.uc.length){a.vb=a.uc[0];a.hb=a.uc[1];a.Qa=a.uc[2];a.Ta=128<<a.uc[3];for(var c=a.ze=0;c<a.Ta;c++)if(0>this.Ac(a,a.Vj))return-1;a.Lf++}a.Lf>=a.Wd&&(b=-1);return b}; -k.xi=function(a){var b=this.S.G&255,c=this.S.G>>8,d=this.S.I&255,e=this.S.I>>8,f=this.S.J&255,g=this.S.J>>8;this.Z&&L(this.Z,this.Z.xg)&&128>f&&(this.Z.message("FDC.intBIOS(AH="+p(c)+",D="+p(f)+",C="+p(e)+",H="+p(g)+",S="+p(d)+",N="+p(b)+") at "+ca(a-this.S.qa.Ja,this.S.qa.na)),Ec(this.S,a,function(a,b){return function(c){b=F(a.S)-b;a.Ea("FDC.intBIOS("+c+"): C="+(Sc(a.S)?1:0)+" (cycles="+b+")")}}(this,F(this.S))));return!0};k.Ea=function(a){this.Z&&L(this.Z,this.Z.xg)&&this.Z.message(a)}; -k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.xg,e)};var tk={1012:ok.prototype.Wm,1013:ok.prototype.Um,1015:ok.prototype.Vm},uk={1010:ok.prototype.ro,1013:ok.prototype.qo,1015:ok.prototype.po};Aa(function(){for(var a=y(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=x(c),d=new ok(d);Qa(d,c)}}); -function Y(a){s.call(this,"HDC",a,Y);this.dmaRead=this.bi;this.dmaWrite=this.ci;this.dmaWriteBuffer=this.nm;this.dmaWriteFormat=this.om;this.Kh=[];if(a.drives)try{this.Kh=eval("("+a.drives+")")}catch(b){this.error("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.Uf=(this.Ce="at"==a.type)?1:0;this.zm=this.Ce?2:3}w(s,Y); -var zk=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];k=Y.prototype;k.tb=function(){return!1};k.nc=function(a,b,c,d){this.ma=b;this.S=c;this.Z=d;this.Ca=a;this.ja=C(a,"ChipSet");jb(b,this,this.Ce?Ak:Bk);mb(b,this,this.Ce?Ck:Dk);Dc(c,19,this,this.zn);Dc(c,64,this,this.xi);this.reset();this.Ef()||this.Oa()}; -k.$b=function(a,b){if(!b)if(!a||!this.restore)this.Cd(),this.Ca.oi&&this.Ef(!0);else if(!this.restore(a))return!1;return!0};k.Wb=function(a){return a&&this.save?this.save():!0};k.cf=function(){return this.Ca?this.Ca.cf():""};k.ce=function(){return this.Ca?this.Ca.ce():""};k.reset=function(){this.Cd(null,!0)};k.save=function(){var a=new H(this);a.set(0,this.Cj());return a.data()};k.restore=function(a){return this.Cd(a[0])}; -k.Cd=function(a,b){var c=0,d=!0;if(this.Ce)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.je=a[c++],this.Sl=a[c++],this.Ah=a[c++],this.Bh=a[c++],this.zh=a[c++],this.yh=a[c++],this.mg=a[c++],this.ya=a[c++],this.zj=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.nf=a[c++];this.ya=a[c++];this.ac=a[c++];this.kb=a[c++];this.Va=a[c++];this.Rl=a[c++];this.Ql=a[c++];this.Pl=a[c++];var e=a[c++];void 0!==e?this.df=e:void 0===this.df&&(this.df=-1)}void 0===this.xa&&(this.xa=Array(this.Kh.length));c=a[c];void 0=== -c&&(c=[]);for(e=0;e<this.xa.length;e++){void 0===this.xa[e]&&(this.xa[e]={});var f=this.xa[e];this.vi(e,f,this.Kh[e],c[e],b)||(d=!1);null!=this.nf&&1>=e&&(this.nf|=(f.type&3)<<(1-e<<1))}return d}; -k.Cj=function(){var a=0,b=[];this.Ce?(b[a++]=this.je,b[a++]=this.Sl,b[a++]=this.Ah,b[a++]=this.Bh,b[a++]=this.zh,b[a++]=this.yh,b[a++]=this.mg,b[a++]=this.ya,b[a++]=this.zj):(b[a++]=this.nf,b[a++]=this.ya,b[a++]=this.ac,b[a++]=this.kb,b[a++]=this.Va,b[a++]=this.Rl,b[a++]=this.Ql,b[a++]=this.Pl,b[a++]=this.df);b[a]=this.Ej();return b}; -k.vi=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.yb=a;b.errorCode=d[f++];b.Yl=d[f++];b.af=d[f++];b.Re=d[f++];b.Se=d[f++];b.hb=d[f++];b.yc=d[f++];b.Od=d[f++];b.Qa=d[f++];b.Wd=d[f++];b.Ta=d[f++];b.Og=this.Ce?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.ce()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===zk[this.Uf][b.type])b.type=this.zm;c=zk[this.Uf][b.type]; -b.md=c[2]||17;b.Rb=c[3]||512;if(e&&this.ja&&(e=this.ja,c=b.type,e.oa)){var h=e.oa[18],h=a?h&240|c:h&15|c<<4;e.oa&&(e.oa[18]=h,Yh(e))}void 0===b.ua&&(b.ua=null,B(this,"Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Ek(this,b);b.Sa=d[f++];b.Na=null;b.ua&&(a=d[f],void 0!==a&&0>b.ua.restore(a)&&(g=!1),g&&void 0!==b.Sa&&(b.Na=b.ua.seek(b.Od,b.hb,b.Qa+b.Og)));return g};k.Ej=function(){for(var a=0,b=[],c=0;c<this.xa.length;c++)b[a++]=this.Dj(this.xa[c]);return b}; -k.Dj=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.Yl;c[b++]=a.af;c[b++]=a.Re;c[b++]=a.Se;c[b++]=a.hb;c[b++]=a.yc;c[b++]=a.Od;c[b++]=a.Qa;c[b++]=a.Wd;c[b++]=a.Ta;c[b++]=a.Sa;c[b]=a.ua?a.ua.save():null;return c};k.hk=function(a){var b;a=this.xa[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b}; -function Ek(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Re[2])?e=b.Re[0]<<8|b.Re[1]:c=b.type);null==c||d||(d=zk[a.Uf][c][1],e=zk[a.Uf][c][0]);d&&((c=zk[a.Uf][b.type])&&e!=c[0]&&d!=c[1]&&B(a,"Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.xc=e,b.yc=d,null==b.ua&&(b.ua=new ek(a,b,b.mode)))}} -k.Wl=function(a,b,c){if(a.ua){var d=a.ua.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.Od=Math.floor(b/g),b%=g,a.hb=Math.floor(b/f),a.Qa=b%f,a.Ta=c*d[3],a.errorCode=0,!0}}return!1}; -k.Ef=function(a){a||(this.we=0);for(var b=0;b<this.xa.length;b++){var c=this.xa[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.xa[b];e.Ic?(B(this,"Drive "+b+" busy"),d=!0):(e.Ic=!0,e.De=!0,this.we++,this.Ea("loading "+d),(e.ua||new ek(this,e,e.mode)).load(d,c,this.Gn),d=!1);!d&&a&&this.Oa(!1)}else a&&void 0!==c.type&&(c.ua=null,Ek(this,c,c.type))}return!!this.we}; -k.Gn=function(a,b,c){a.Ic=!1;(a.ua=b)&&B(this,'Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.yb),a.De);a.De&&(a.De=!1,--this.we||this.Oa())};k.wn=function(a,b){var c=0;this.kb<this.Va&&(c=this.ac[this.kb]);this.ja&&wi(this.ja,5);this.ya&=-33;this.ba(a,null,b,"DATA["+this.kb+"]",c);++this.kb>=this.Va&&(this.kb=this.Va=0,this.ya&=-15);return c}; -k.No=function(a,b,c){this.ba(a,b,c,"DATA["+this.Va+"]");this.Va<this.ac.length&&(this.ac[this.Va++]=b);a=12!=this.ac[0]?6:this.ac.length;6==this.Va&&(this.ya&=-2);this.Va>=a&&(this.ya|=2,this.ya&=-2,Fk(this))};k.xn=function(a,b){var c=this.ya;this.ba(a,null,b,"STATUS",c);this.kb<this.Va&&(this.ya|=1);return c};k.Qo=function(a,b,c){this.ba(a,b,c,"RESET");this.Rl=b;this.ja&&wi(this.ja,5);this.Cd()};k.vn=function(a,b){this.ba(a,null,b,"CONFIG",this.nf);return this.nf}; -k.Po=function(a,b,c){this.ba(a,b,c,"PULSE");this.Ql=b;this.ya=13};k.Oo=function(a,b,c){this.ba(a,b,c,"PATTERN");this.Pl=b};k.uj=function(a,b,c){this.ba(a,b,c,"NOISE")};k.Hm=function(a,b){var c=-1,d=!1;if(this.Ka&&(d=0<this.Ka.Sa,c=this.qc(this.Ka),this.Ka.Sa==this.Ka.Rb))if(this.Ka.Ta-=this.Ka.Rb,this.Ka.Ta>=this.Ka.Rb){var e=this;this.qc(this.Ka,function(a){0<=a?e.ja&&Q(e.ja,14):(e.ya=1,e.je=16)},!1)}else this.ya=80;d||this.ba(a,null,b,"DATA",c);return c}; -k.co=function(a,b,c){this.Ka&&0!=this.Ka.Sa||this.ba(a,b,c,"DATA");this.Ka&&this.Ka.Ta>=this.Ka.Rb&&(0>this.Ac(this.Ka,b)?(this.ya=1,this.je=16):this.Ka.Sa==this.Ka.Rb&&(this.Ka.Ta-=this.Ka.Rb,this.ja&&Q(this.ja,14),this.Ka.Ta>=this.Ka.Rb||(this.ya=80)))};k.Jm=function(a,b){var c=this.je;this.ba(a,null,b,"ERROR",c);return c};k.io=function(a,b,c){this.ba(a,b,c,"WPREC");this.Sl=b};k.Km=function(a,b){var c=this.Ah;this.ba(a,null,b,"SECCNT",c);return c}; -k.fo=function(a,b,c){this.ba(a,b,c,"SECCNT");this.Ah=b};k.Lm=function(a,b){var c=this.Bh;this.ba(a,null,b,"SECNUM",c);return c};k.ho=function(a,b,c){this.ba(a,b,c,"SECNUM");this.Bh=b};k.Gm=function(a,b){var c=this.zh;this.ba(a,null,b,"CYLLO",c);return c};k.bo=function(a,b,c){this.ba(a,b,c,"CYLLO");this.zh=b};k.Fm=function(a,b){var c=this.yh;this.ba(a,null,b,"CYLHI",c);return c};k.ao=function(a,b,c){this.ba(a,b,c,"CYLHI");this.yh=b};k.Im=function(a,b){var c=this.mg;this.ba(a,null,b,"DRVHD",c);return c}; -k.eo=function(a,b,c){this.ba(a,b,c,"DRVHD");this.mg=b};k.Mm=function(a,b){var c=this.ya;this.ba(a,null,b,"STATUS",c);return c};k.$n=function(a,b,c){this.ba(a,b,c,"COMMAND");this.zj=b;this.ja&&wi(this.ja,14);Gk(this)}; -function Gk(a){var b=!1,c=a.zj,d=a.mg&16?1:0,e=a.mg&15,f=a.zh|(a.yh&3)<<8,g=a.Bh,h=a.Ah;a.Ka=null;a.je=0;a.ya=80;(d=a.xa[d])?(d.Od=f,d.hb=e,d.Qa=g,d.Ta=h*d.Rb,c=144<=c?c:c&240,d.Na=null,d.errorCode=0,a.Ka=d):c=-1;switch(c&240){case 32:a.qc(d,function(b){0<=b&&a.ja?(Q(a.ja,14),a.ya=136):(a.ya=1,a.je=16)},!1);break;case 48:a.ja?(Q(a.ja,14),a.ya=136):(a.ya=1,a.je=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.je=1;b=!0;break;case 145:d.yc=e+1,d.md=h,b=!0}b&&a.ja&&Q(a.ja,14)} -function Fk(a){a.kb=0;var b=a.La(),c=a.La(),d=c&32,e=d>>5,f=c&31,g=a.La(),h=a.La(),m=g<<2&768|h,n=g&63,r=a.La(),u=a.La(),t=a.xa[e];t&&(t.Od=m,t.hb=f,t.Qa=n,t.Ta=r*t.Rb);switch(b){case 3:a.Jb(t?t.errorCode:4);a.pb(c);a.pb(g);a.pb(h);a.pb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.La());)t&&c<t.Re.length&&(t.Re[c++]=b);t&&Ek(a,t);b=0;t||a.df!=e||(a.df=-1,b=2);a.Jb(b|d);b=-1;break;case 224:case 228:a.Jb(0|d),b=-1}if(0<=b)switch(void 0===t?b=-1:(t.errorCode=0,t.Yl=0),b){case 0:a.Jb(0|d);break;case 1:t.tp= -u;a.Jb(0|d);break;case 5:a.Jb(0|d);break;case 8:a.di(t,function(b){a.Jb(b|d)});break;case 10:a.ei(t,function(b){a.Jb(b|d)});break;case 15:Hk(a,t,function(b){a.Jb(b|d)});break;default:a.Jb(2|d)}}k.La=function(){var a=-1;this.kb<this.Va&&(a=this.ac[this.kb++]);return a};k.Jb=function(a){this.kb=this.Va=0;void 0!==a&&this.pb(a);this.ja&&Q(this.ja,5);this.ya|=32};k.pb=function(a){this.ac[this.Va++]=a};k.bi=function(a,b,c){void 0===b||0>b?this.qc(a,c):c(-1,!1)}; -k.ci=function(a,b){return void 0!==b&&0<=b?this.Ac(a,b):-1};k.nm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Sa<a.Se.length?a.Se[a.Sa++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.om=function(a,b){return void 0!==b&&0<=b?this.Gj(a,b):-1};k.di=function(a,b){a.errorCode=4;if(a.ua&&(a.Na=null,this.ja)){a.errorCode=0;pi(this.ja,3,this,"dmaRead",a);ji(this.ja,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)}; -k.ei=function(a,b){a.errorCode=4;if(a.ua&&(a.Na=null,this.ja)){a.errorCode=0;pi(this.ja,3,this,"dmaWrite",a);ji(this.ja,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Hk(a,b,c){b.errorCode=4;b.Se&&b.Se.length==b.Ta||(b.Se=Array(b.Ta));b.Sa=0;a.ja?(b.errorCode=0,pi(a.ja,3,a,"dmaWriteBuffer",b),ji(a.ja,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)} -k.jk=function(a,b){a.errorCode=4;if(a.ua&&(a.Na=null,this.ja)){a.ze=0;a.uc=Array(4);a.Ff=!0;a.Lf=0;a.errorCode=0;pi(this.ja,3,this,"dmaWriteFormat",a);ji(this.ja,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Ff=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)}; -k.qc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Na&&(d=nk(a.Na,a.Sa),a.Sa+=e,0<=d))return b&&b(d,!1),d;b&&a.ua.seek(a.Od,a.hb,a.Qa+a.Og,!1,function(c,d){var h=-1;(a.Na=c)?(a.Sa=0,Ik(a),h=nk(a.Na,a.Sa),a.Sa+=e):a.errorCode=20;b(h,d)});return d};k.Ac=function(a,b){if(a.errorCode)return-1;do{if(a.Na&&a.ua.write(a.Na,a.Sa++,b))break;a.ua.seek(a.Od,a.hb,a.Qa+a.Og,!0,function(b){a.Na=b});if(!a.Na){a.errorCode=20;b=-1;break}a.Sa=0;Ik(a)}while(1);return b}; -function Ik(a){a.Qa++;var b=1-a.Og;a.Qa>=a.md+b&&(a.Qa=b,a.Wj++,a.Wj>=a.yc&&(a.Wj=0,a.Od++))}k.Gj=function(a,b){if(a.errorCode)return-1;a.uc[a.ze++]=b;if(a.ze==a.uc.length){a.Od=a.uc[0];a.hb=a.uc[1];a.Qa=a.uc[2];a.Ta=128<<a.uc[3];for(var c=a.ze=0;c<a.Ta;c++)if(0>this.Ac(a,a.Vj))return-1;a.Lf++}a.Lf>=a.Wd&&(b=-1);return b}; -k.zn=function(a){var b=this.S.J&255;!(this.S.G>>8)&&128<b&&(this.df=b-128);this.Z&&L(this.Z,this.Z.Ih)&&128<=b&&(this.Z.message("HDC.intBIOSDisk(AX="+q(this.S.G)+",DL="+p(b)+") at "+ca(a-this.S.qa.Ja,this.S.qa.na)),Ec(this.S,a,function(a,b){return function(e){b=F(a.S)-b;a.Ea("HDC.intBIOSDisk("+e+"): C="+(Sc(a.S)?1:0)+" (cycles="+b+")")}}(this,F(this.S))));return!0};k.xi=function(){var a;(a=this.S.G>>8)||(a=!this.ja)||(a=!(this.ja.qb[0].ud&64));return a?!0:!1}; -k.Ea=function(a){this.Z&&L(this.Z,this.Z.Ih)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Ih,e)}; -var Bk={800:Y.prototype.wn,801:Y.prototype.xn,802:Y.prototype.vn},Ak={496:Y.prototype.Hm,497:Y.prototype.Jm,498:Y.prototype.Km,499:Y.prototype.Lm,500:Y.prototype.Gm,501:Y.prototype.Fm,502:Y.prototype.Im,503:Y.prototype.Mm},Dk={800:Y.prototype.No,801:Y.prototype.Qo,802:Y.prototype.Po,803:Y.prototype.Oo,807:Y.prototype.uj,811:Y.prototype.uj,815:Y.prototype.uj},Ck={496:Y.prototype.co,497:Y.prototype.io,498:Y.prototype.fo,499:Y.prototype.ho,500:Y.prototype.bo,501:Y.prototype.ao,502:Y.prototype.eo,503:Y.prototype.$n}; -Aa(function(){for(var a=y(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=x(c),d=new Y(d);Qa(d,c)}}); -function Jk(a){s.call(this,"Debugger",a,Jk);this.Qg=this.Xc=-1;this.Bc=[0,0];this.Pj=[0,0];this.wh=null;this.Ye=!1;this.ne=[0,0];this.tc=[];Kk(this);Lk(this);this.cb={Lj:{Ra:1,Ua:"mem"},Mj:{Ra:2,Ua:"port"},Db:{Ra:4,Ua:"dma"},Oe:{Ra:8,Ua:"pic"},Pe:{Ra:16,Ua:"timer"},Kj:{Ra:32,Ua:"keyboard"},zg:{Ra:64,Ua:"video"},xg:{Ra:128,Ua:"fdc"},Ih:{Ra:256,Ua:"hdc"},em:{Ra:512,Ua:"disk"},Nj:{Ra:1024,Ua:"serial"},yg:{Ra:2048,Ua:"speaker"},Pa:{Ra:4096,Ua:"chipset"},im:{Ra:8192,Ua:"state"},hm:{Ra:16384,Ua:"mouse"}, -dm:{Ra:32768,Ua:"computer"},fm:{Ra:65536,Ua:"dos"},op:{Ra:131072,Ua:"log"},gm:{Ra:262144,Ua:"halt"}};Mh(this,this,a.messages);this.Bj=a.commands}w(s,Jk); -var Mk={"?":"help","a [#]":"assemble","b [#]":"breakpoint",c:"clear window","d [#]":"dump memory","e [#]":"edit memory",f:"frequencies","g [#]":"go [to #]","h [#]":"halt/history","i [#]":"input port #",l:"load sector(s)",m:"messages","o [#]":"output port #",p:"step over",r:"dump/edit registers","t [#]":"step instruction(s)","u [#]":"unassemble",x:"execution options"},Nk="DB AAA AAD AAM AAS ADC ADD AND ARPL AS: BOUND BSF BSR BT BTC BTR BTS CALL CBW CLC CLD CLI CLTS CMC CMP CMPSB CMPSW CS: CWD DAA DAS DEC DIV DS: ENTER ES: ESC FADD FBLD FBSTP FCOM FCOMP FDIV FDIVR FIADD FICOM FICOMP FIDIV FIDIVR FILD FIMUL FIST FISTP FISUB FISUBR FLD FLDCW FLDENV FMUL FNSAVE FNSTCW FNSTENV FNSTSW FRSTOR FS: FST FSTP FSUB FSUBR GBP GS: HLT IDIV IMUL IN INC INS INT INT3 INTO IRET JBE JC JCXZ JG JGE JL JLE JMP JNBE JNC JNO JNP JNS JNZ JO JP JS JZ LAHF LAR LDS LEA LEAVE LES LFS LGDT LGS LIDT LLDT LMSW LOCK LODSB LODSW LOOP LOOPNZ LOOPZ LSL LSS LTR MOV MOVSB MOVSW MOVSX MOVZX MUL NEG NOP NOT OR OS: OUT OUTS POP POPA POPF PUSH PUSHA PUSHF RCL RCR REPNZ REPZ RET RETF ROL ROR SAHF SAR SBB SCASB SCASW SETBE SETC SETG SETGE SETL SETLE SETNBE SETNC SETNO SETNP SETNS SETNZ SETO SETP SETS SETZ SGDT SHL SHLD SHR SHRD SIDT SLDT SMSW SS: STC STD STI STOSB STOSW STR SUB TEST VERR VERW WAIT XCHG XLAT XOR".split(" "), -Ok="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),Pk="BX+SI BX+DI BP+SI BP+DI SI DI BP BX".split(" "),Z=[0,0],Qk=[204,12291],Rk=[[6,12417,4257],[6,12420,4260],[6,12449,4225],[6,12452,4228],[6,12385,4097],[6,14435,4100],[136,4211],[133,8307],[129,12417,4257],[129,12420,4260],[129,12449,4225],[129,12452,4228],[129,12385,4097],[129,14435,4100],[136,4467],[133,8563],[5,12417,4257],[5,12420,4260],[5,12449,4225],[5,12452,4228],[5,12385,4097],[5,14435,4100],[136,4723],[133,8819], +R[339]=62;R[340]=63;R[341]=64;R[342]=65;R[343]=66;R[344]=67;R[345]=68;R[261]=75;R[262]=72;R[263]=77;R[264]=80;R[254]=61766;R[255]=15921491;k=Oi.prototype; +k.wb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.ta[a])switch(c){case "kbd":return this.ta[a]=d,d.onkeydown=function(a){return Ri(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.Ea&32?e.Ea&=-33:b=e.Ea&12?!1:!Si(e,a);return b},d.onkeyup=function(a){return Ri(e,a,!1)},!0;default:if(void 0!==Qi[c]&&"button"==b)return this.ta[a]=d,d.onclick=function(a,b,c){return function(){a.S&&a.S.Md();return!Si(a,c)}}(this,c,Qi[c]),!0;if(void 0!==Pi[c])return this.ta[a]= +d,b=function(a,b,c){return function(){Ti(a,c)}}(this,c,Pi[c]),c=function(a,b,c){return function(){Ti(a,c)}}(this,c,Pi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.Da=a;this.ka=B(a,"ChipSet")};k.Sa=function(){this.rk=(this.Fm=ta("iOS"))||ta("Android");this.Fa("mobile keyboard support: "+(this.rk?"true":"false"));return w.prototype.Sa.call(this)}; +function Ai(a){a.Fa("keyboard reset",!0);a.yc=[170];a.ka&&Q(a.ka,1,4)}function yi(a,b){var c=0;a.yc.length&&(c=a.yc[0],a.Fa("scan code "+p(c)+" delivered"),b&&Bi(a));return c}function Bi(a,b){0<a.yc.length&&(b?a.yc=[]:(a.yc.shift(),0<a.yc.length&&a.ka&&Q(a.ka,1)))}k.bc=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};k.Yb=function(a){return a&&this.save?this.save():!0}; +k.reset=function(){this.ge();this.Ea=0;this.yc=[];if(this.rd)for(var a in this.rd)aa(a)||this.rd[a]&&clearTimeout(this.rd[a]);this.rd=[];this.Ql=this.Le=0};k.save=function(){var a=new H(this);a.set(0,this.Kj());return a.data()};k.restore=function(a){return this.ge(a[0])};k.ge=function(a){var b=0;void 0===a&&(a=[]);this.ni=a[b++];this.pi=a[b];return!0};k.Kj=function(){var a=0,b=[];b[a++]=this.ni;b[a]=this.pi;return b}; +function Ti(a,b){var c=b&127,d=c==b;if(a.yc)if(20>a.yc.length){if(!(!d&&!a.Rh[c]||d&&a.Rh[c])){a.Rh[c]=d;a.Fa("scan code "+p(b)+" buffered");a.yc.push(b);1==a.yc.length&&a.ka&&Q(a.ka,1);for(var e in Pi)if(Pi[e]==c){(c=a.ta["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.yc.length&&a.yc.push(255),a.Fa("scan code buffer overflow")}function Ui(a,b){var c=b?a.Nn:a.Mn;a.S&&a.S.md&&(c/=a.S.md);return c} +function Vi(a,b){!a.Le||void 0!==b&&b==a.Le||(clearTimeout(a.rd[a.Le]),Wi(a,a.Le,!1))} +function Ri(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Ql=f);240==f+224?(a.Ea&=-2,c&&(a.Ea|=1),f+=224,e=!1):241==f+224?(a.Ea&=-5,c&&(a.Ea|=4),f+=224,e=!1):242==f+224?(a.Ea&=-9,c&&(a.Ea|=8),f+=224,e=!1):244==f+224?(a.Ea&=-17,c&&(a.Ea|=16),f+=224,d=Si(a,f)):91==f?(a.Ea&=-33,c&&(a.Ea|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.Ea&12)&&(f=254),d=c?!Si(a,f):!1):void 0!==R[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.Ea&=-33,a.rk||f!=a.Ql||Vi(a));void 0===d&&(d=!Wi(a,f,c));return d} +function Si(a,b,c){var d=!1;Vi(a,b);Wi(a,b,!0)&&(c?Wi(a,b,!1):(c=!1,a.rd[b]&&(clearTimeout(a.rd[b]),c=!0),c=Ui(a,c),a.rd[a.Le=b]=setTimeout(function(a){return function(){Wi(a,b,!1)}}(a),c)),d=!0);return d} +function Wi(a,b,c){var d=!1;c||(a.rd[b]=null,a.Le==b&&(a.Le=0));var e=R[b];void 0===e&&1<=b&&26>=b&&(e=R[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.Ea&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.Ea&17||(d=42):224==f?a.Ea&18||(d=54):241==f?a.Ea&4||(d=29):242==f&&(a.Ea&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;c<b.length;c++)Ti(a,b[c]);d=!0}return d}k.Fa=function(a,b){this.Z&&L(this.Z,this.Z.Pj|(b?this.Z.Rj:0))&&this.Z.message(a)}; +za(function(){for(var a=A(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Oi(d);Ma(d,c)}}); +function S(a,b,c,d){w.call(this,"Video",a,S);this.Ga=a.model;this.Tc=0;"ega"==this.Ga&&(this.Yl=a.switches,this.Tc=a.memory||0);this.od=a.mode;if(void 0===this.od||void 0===T[this.od])this.od=Xi;this.uh=a.charCols;this.Ji=a.charRows;if(void 0===this.uh||void 0===this.Ji)this.uh=T[this.od][0],this.Ji=T[this.od][1];this.xd=a.screenWidth;this.de=a.screenHeight;this.wm=a.scale;this.um=12<=Math.round(this.xd/this.uh);this.ym=a.touchScreen;this.Mb=b;this.Vc=c;this.cm=d;this.eb=this.uc=0;this.Td=[];this.ud= +Array(16);this.qi=!1;var e=this;this.Mb&&(this.Mb.onfocus=function(){e.qi=!0},this.Mb.onblur=function(){e.qi=!1});if(a=a.fontROM)"json"!=ea(a)&&(a=qa()+"/api/v1/dump?file="+a+"&format=bytes"),pa(a,!0,null,this,this.Xn)}x(w,S); +var Yi={2:{Li:15700,Ki:208,Aj:85,Bj:96},3:{Li:18432,Ki:364,Aj:85,Bj:96},4:{Li:21850,Ki:364,Aj:85,Bj:96}},Zi={6:[1,3,!0],7:[2,3,!0],8:[5,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[5,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},Xi=7,T=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];T[Xi]=[80,25,1,0,1];T[13]=[320,200,16];T[14]=[640,200,16];T[15]=[640,350,16];T[16]=[640,350,16];T[0]=T[1];T[2]=T[3];T[5]=T[4];var $i=Array(5);$i[0]=[0,0,0,255];$i[1]=[127,192,127,255]; +$i[2]=[127,192,127,255];$i[3]=[127,255,127,255];$i[4]=[127,255,127,255];var aj=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],U=Array(16);U[0]=[0,0,0,255];U[1]=[0,0,170,255];U[2]=[0,170,0,255];U[3]=[0,170,170,255];U[4]=[170,0,0,255];U[5]=[170,0,170,255];U[6]=[170,85,0,255];U[7]=[170,170,170,255];U[8]=[85,85,85,255];U[9]=[85,85,255,255];U[10]=[85,255,85,255];U[11]=[85,255,255,255];U[12]=[255,85,85,255];U[13]=[255,85,255,255];U[14]=[255,255,85,255];U[15]=[255,255,255,255]; +var bj=[2,4,6],cj=[3,5,7],dj=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],ej=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],V=[0];V[128]=1;V[32768]=2;V[32896]=3;V[8388608]=4;V[8388736]=5;V[8421376]=6;V[8421504]=7;V[2147483648]=8;V[2147483776]=9;V[2147516416]=10;V[2147516544]=11;V[2155872256]=12;V[2155872384]=13;V[2155905024]=14;V[2155905152]=15; +function fj(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=gj[b],f=a.he||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(hj)];this.Z=a.Z;this.type=e[0];this.port=e[1];this.fe=b;this.eb=e[2];this.uc=e[3];this.Tc=d||e[4];65536<=this.Tc&&720896<=this.eb&&(this.uc=Math.min(this.Tc>>2,32768));this.mc=c[0];this.zc=c[1];this.Ye=c[2];this.tf=c[3];this.oc=c[4]&255;this.kh=c[4]>>8&255;this.dc=c[5];this.Di=hj;this.Lg=ij;if(5==b){this.Di=jj;this.Lg=kj;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5), +0,0,0,Array(9),0,this.Tc,Array(this.Tc>>2),771,0,4294967295,0,4294967295,0,4294967295,0]);this.jd=b[0];this.Bd=b[1];this.Rd=b[2];this.Th=lj;this.Lh=b[3];this.Yf=b[4];this.jh=b[5];this.Dd=b[6];this.Bf=b[7];this.Vh=mj;this.xi=b[8];this.yi=b[9];this.Cd=b[10];this.re=b[11];this.Uh=nj;this.vb=b[12];d=this.Tc>>2;if((this.fd=b[14])&&this.fd.length<d){for(var e=this.fd,g=0,h=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)h[g]=q,g+=2;g==d&&(g=1)}this.fd=h}this.Ih(b[15]);this.vj=b[16];this.hb=b[17]; +this.nd=b[18];this.lb=b[19];this.xh=b[20];this.je=b[21];this.Ie=b[22];this.Fi=b[23];this.Gi=b[24]}f=Yi[f]||Yi[3];this.Hi=a.S.Hd/f.Li|0;this.Qn=this.Hi*f.Aj/100|0;this.Kk=this.Hi*f.Ki;this.Tn=this.Kk*f.Bj/100|0;this.Mi=null==c[7]?0:c[7]}} +var hj=18,jj=25,ij="HORZ_TOTAL HORZ_DISP HORZ_SYNC_POS HORZ_SYNC_WIDTH VERT_TOTAL VERT_TOTAL_ADJ VERT_DISP VERT_SYNC_POS INTERLACE_POS MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),kj="HORZ_TOTAL HORZ_DISP_END HORZ_BLANK_START HORZ_BLANK_END HORZ_RETRACE_START HORZ_RETRACE_END VERT_TOTAL CRTC_OVERFLOW PRESET_ROW_SCAN MAX_SCAN_LINE CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO VERT_DISP_END OFFSET UNDERLINE VERT_BLANK_START VERT_BLANK_END MODE_CTRL LONE_COMPARE".split(" "), +lj="PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVRSCAN PLANES HORZPAN".split(" "),mj=["RESET","CLK","MAPMASK","CHARMAP","MODE"],nj="SRESET ESRESET COLRCMP DATAROT READMAP MODE MISC COLRDC BITMASK".split(" ");function oj(a){return this.tc(a)|this.tc(a+1)<<8}function pj(a,b){this.Cc(a,b&255);this.Cc(a+1,b>>8&255)} +var W=[,,function(a){a+=this.offset;return(this.ia.vb=this.qa[a])>>this.ia.vj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.qa[b]>>8:this.qa[b])&255}];W[16]=function(a){a+=this.offset;a=this.qa[a];for(var b=this.ia.Fi&this.ia.Gi,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};W[512]=function(a,b){var c=a+this.offset,d;d=this.qa[c]&~this.ia.hb|(b|b<<8|b<<16|b<<24)&this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +W[1024]=function(a,b){var c=a+this.offset;b=b>>this.ia.nd|b<<8-this.ia.nd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.je|this.ia.Ie;d=d&this.ia.hb|this.qa[c]&~this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +W[1536]=function(a,b){var c=a+this.offset;b=b>>this.ia.nd|b<<8-this.ia.nd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.je|this.ia.Ie;d&=this.ia.vb;d=d&this.ia.hb|this.qa[c]&~this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +W[2560]=function(a,b){var c=a+this.offset;b=b>>this.ia.nd|b<<8-this.ia.nd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.je|this.ia.Ie;d|=this.ia.vb;d=d&this.ia.hb|this.qa[c]&~this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +W[3584]=function(a,b){var c=a+this.offset;b=b>>this.ia.nd|b<<8-this.ia.nd&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.je|this.ia.Ie;d^=this.ia.vb;d=d&this.ia.hb|this.qa[c]&~this.ia.hb;d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)};W[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ia.hb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.qa[d]&~c;c=c&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[d]!=c&&(this.qa[d]=c,this.bb=!0)}; +W[4096]=function(a){a+=this.offset;var b=this.qa[a]&~this.ia.hb|this.ia.vb&this.ia.hb;this.qa[a]!=b&&(this.qa[a]=b,this.bb=!0)};W[8192]=function(a,b){var c=a+this.offset,d=ej[b&15],d=d&this.ia.hb|this.qa[c]&~this.ia.hb,d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)};W[24576]=function(a,b){var c=a+this.offset,d=ej[b&15],d=d&this.ia.vb,d=d&this.ia.hb|this.qa[c]&~this.ia.hb,d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +W[40960]=function(a,b){var c=a+this.offset,d=ej[b&15],d=d|this.ia.vb,d=d&this.ia.hb|this.qa[c]&~this.ia.hb,d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)};W[57344]=function(a,b){var c=a+this.offset,d=ej[b&15],d=d^this.ia.vb,d=d&this.ia.hb|this.qa[c]&~this.ia.hb,d=d&this.ia.lb|this.ia.vb&~this.ia.lb;this.qa[c]!=d&&(this.qa[c]=d,this.bb=!0)}; +function qj(a){var b=[];if(void 0!==a.fe){b[0]=a.mc;b[1]=a.zc;b[2]=a.Ye;b[3]=a.tf;b[4]=a.oc|a.kh<<8;b[5]=a.dc;if(5==a.fe){var c=[];c[0]=a.jd;c[1]=a.Bd;c[2]=a.Rd;c[3]=a.Lh;c[4]=a.Yf;c[5]=a.jh;c[6]=a.Dd;c[7]=a.Bf;c[8]=a.xi;c[9]=a.yi;c[10]=a.Cd;c[11]=a.re;c[12]=a.vb;c[13]=a.Tc;var d;a:if(d=a.fd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h<d.length;){for(var m=d[h],n=h+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-h>>1;f[e++]=m;h=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=a.rh;c[16]= +a.vj;c[17]=a.hb;c[18]=a.nd;c[19]=a.lb;c[20]=a.xh;c[21]=a.je;c[22]=a.Ie;c[23]=a.Fi;c[24]=a.Gi;b[6]=c}b[7]=a.Mi}return b}function rj(a,b,c,d,e){if(d){var f="",g,h=0;for(g=0;g<e.length;g++)h<e[g].length&&(h=e[g].length);h++;for(g=0;g<e.length;g++){f&&(f+="\n");var m=e[g],f=f+(b+"["+p(g)+"]: "+(m+" ".substr(0,h-m.length))+p(d[g])+(g===c?"*":""))}a.Z.message(f)}else a.Z.message(b+": "+p(c))} +fj.prototype.Ih=function(a){if(null!=a&&a!=this.rh){var b=a&255,c=W[b];c||b&1&&(c=W[1]);var b=a&65280,d=W[b];d||b&256&&(d=W[256]);this.Ff||(this.Ff=[null,oj,null,pj]);this.Ff[0]=c;this.Ff[2]=d;this.rh=a}};var gj=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];k=S.prototype; +k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;gb(b,this,sj);kb(b,this,tj);"ega"==this.Ga&&(gb(b,this,uj),kb(b,this,vj));if(d){var e=this;Ac(this.S,16,this,this.Fn);Kh(d,d.Dg,function(a){if(e.Ba)if(a){var b=e.Ba;if(b.fd){a=ba(a);a=void 0!==a?a-b.eb:b.Wo||0;0>a&&(a=0);for(var c="",d=0;8>d;d++){for(var n=l(b.eb+a)+":",q=0;8>q&&a<b.fd.length;q++)var t=b.fd[a++],n=n+(" "+l(t));c&&(c+="\n");c+=n}c&&b.Z.message(c);b.Wo=a}else b.Z.message("no buffer")}else{e.Z.message("BIOSMODE: "+p(e.Jd));b=e.Ba;rj(b, +"CRTC",b.oc,b.dc,b.Lg);if(1==b.fe||3==b.fe)rj(b," MODEREG",b.zc),rj(b," STATUS1",b.tf);3==b.fe&&rj(b," COLOR",b.Ye);5==b.fe&&(b.Z.message(" ATCDATA: "+b.jd),rj(b," ATC",b.Bd,b.Rd,b.Th),rj(b," GRC",b.Cd,b.re,b.Uh),rj(b," SEQ",b.Dd,b.Bf,b.Vh),rj(b," FEAT",b.jh),rj(b," MISC",b.Yf),rj(b," STATUS0",b.Lh),rj(b," LATCHES",b.vb),b.Z.message(" ACCESS: "+r(b.rh)),b.Z.message("Use 'dump video buffer' to dump video memory"))}else e.Z.message("no active video card")})}(this.pb=B(a,"Keyboard"))&&this.Mb&& +this.pb.wb("input",this.cm?"textarea":"canvas","kbd",this.cm||this.Mb);this.Ng=9;(this.ka=B(a,"ChipSet"))&&this.Yl&&(this.Ng=wh(this.Yl,this.Ng));this.pb&&this.ym&&wj(this)};k.Fn=function(a){this.Z&&L(this.Z,this.Z.Dg)&&(this.Z.message("Video.intBIOS(AX="+r(this.S.G)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,c){return function(d){var e=c,e=E(a.S)-e;a.Fa("Video.intBIOSReturn("+d+") (cycles="+e+")")}}(this,E(this.S))));return!0}; +k.wb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.ta[c]=d,d.onclick=function(){yb(e,!0)},!0}return!1};k.Md=function(){this.Mb&&this.Mb.focus()};function wj(a){var b=a.Mb;b&&!a.mi&&(b.addEventListener("touchstart",function(b){xj(a,b)},!1),b.addEventListener("touchmove",function(b){xj(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.mi=!0)} +function xj(a,b){a.qi&&b.preventDefault();var c=0,d=0,e=a.Mb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.xd/a.Mb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.xd/3)|0;d=a.de/a.Mb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.de/3)|0;1!=d?d?Si(a.pb,264,!0):Si(a.pb,262,!0):1!=c&&(c?Si(a.pb,263,!0):Si(a.pb,261,!0))}k.bc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0}; +k.Yb=function(a){return a&&this.save?this.save():!0}; +k.reset=function(){var a=!0,b=0;this.ka&&(b=Sh(this.ka));var c=!1;if(this.Ga)switch(this.Ga){case "ega":var c=!0,d=Zi[this.Ng];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.he!==b&&(this.he=b,a=!0);this.Ba=null;this.Sc=this.ai=new fj(this,1);this.yb=this.Xg=new fj(this,3);c?(this.la=new fj(this,5,null,this.Tc),yj(this)):this.la=new fj;zj(this);this.Jd=null;this.od=3==b?Xi:3;this.Ae=this.Lc=-1;this.ze=0;Aj(this,this.od);if(this.Ba.eb&&a){a=this.Ba.eb+this.bi;for(b=this.Ba.eb;b<a;b+= +2)d=Math.floor(65536*Math.random()),4==this.he?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),cb(this.na,b,c|d<<8);yb(this,!0)}};function yj(a){a.la.Yf&1?(a.Sc=a.ai,a.yb=a.la):(a.Sc=a.la,a.yb=a.Xg)}k.save=function(){var a=new H(this);a.set(0,qj(this.ai));a.set(1,qj(this.Xg));a.set(2,[this.he,this.od,this.Jd]);a.set(3,qj(this.la));return a.data()}; +k.restore=function(a){var b=a[2];this.he=b[0];this.od=b[1];this.Jd=b[2];this.Ba=null;this.Sc=this.ai=new fj(this,1,a[0]);this.yb=this.Xg=new fj(this,3,a[1]);this.la=new fj(this,5,a[3],this.Tc);this.la.mc&&yj(this);zj(this);if(!Bj(this))return!1;Cj(this);return!0}; +k.Xn=function(a,b,c){if(c)this.Ha("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){v("Empty font ROM image: "+a);return}if(1==d.length){v(d[0]);return}if(8192==d.length)Ii(this,d,[0,6144]);else{this.Ha("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ha("Font ROM data error: "+e.message);return}this.Sa()}}; +function Dj(a,b){if(1==b)return a.ud[0]=U[0],a.ud[1]=U[7],a.ud;if(2==b){var c=a.Ba.Ye;if(a.Ba===a.la){var d=a.la.Rd[0],c=d&7;d&16&&(c|=8);18!=a.la.Rd[1]&&(c|=32)}a.ud[0]=U[c&15];c=c&32?cj:bj;for(d=0;d<c.length;d++)a.ud[d+1]=U[c[d]];return a.ud}if(a.yb===a.Xg)return U;c=null!=a.la.Rd[15]?a.la.Rd:dj;for(d=0;d<a.ud.length;d++){var e=c[d]||0;a.ud[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.ud}function Ii(a,b,c,d){a.Jg=b;a.Qh=c;a.De=d} +function zj(a){var b=!1;if(window&&a.Jg){var c=a.De?0:2048,d=a.De?a.De:9;Ej(a,1,a.Qh[0],c,d,14,a.Jg,$i,aj)&&(b=!0);c=Dj(a);d=a.De?a.De:8;Ej(a,3,a.Qh[1],0,d,8,a.Jg,c)&&(b=!0);a.De&&Ej(a,5,a.Qh[0],0,a.De,14,a.Jg,c)&&(b=!0)}return b}function Ej(a,b,c,d,e,f,g,h,m){var n=!1;Fj(a,b,c,d,e,f,g,h,m)&&(n=!0);a.um&&Fj(a,b<<1,c,d,e,f,g,h,m)&&(n=!0);return n} +function Fj(a,b,c,d,e,f,g,h,m){var n=!1,q=b&1?0:1,t=a.Td[b];t||(t={kc:e<<q,lc:f<<q,Se:Array(h.length),Vj:h.slice(),Af:m,Oh:Array(h.length)});for(m=0;m<h.length;m++){var s=h[m],u=t.Se[m]?t.Vj[m]:[];if(s[0]!==u[0]||s[1]!==u[1]||s[2]!==u[2]){var n=t,u=m,z=q,C=c,ia=d,ja=e,rb=f,Jc=g,Pd=[0,0,0,0],Kc=window.document.createElement("canvas");Kc.width=n.kc<<4;Kc.height=n.lc<<4;for(var Ji=Kc.getContext("2d"),Fa=void 0,Hb=void 0,db=void 0,Lc=8>rb||!ia?rb:8,Qd=Ji.createImageData(n.kc,n.lc),Fa=0;256>Fa;Fa++){for(db= +0;db<rb;db++)for(var fl=n.Af&&u&1&&db>=rb-2,gl=Jc[db<Lc?C+Fa*Lc+db:ia+Fa*Lc+db-Lc],Rd=0;Rd<=z;Rd++)for(Hb=0;Hb<ja;Hb++){var Ki=Hb<<z,Li=(db<<z)+Rd,Mi=fl||gl&128>>(8<=Hb&&176<=Fa&&223>=Fa?7:Hb)?s:Pd;Gj(Qd,Ki,Li,Mi);z&&Gj(Qd,Ki+1,Li,Mi)}Ji.putImageData(Qd,(Fa&15)*n.kc,(Fa>>4)*n.lc)}n.Se[u]="#"+p(s[0])+p(s[1])+p(s[2]);n.Vj[u]=s;n.Oh[u]=Kc;n=!0}}a.Td[b]=t;return n}function Hj(a){0<a.ze||0<=a.Lc?0>a.Ae&&(a.Ae=0):a.Ae=-1} +function Cj(a){if(a.Ub){for(var b=10;15>=b;b++)if(null==a.Ba.dc[b])return;var c=a.Ba.dc[10],b=c&31,d=a.Ba.dc[11]&31,e=a.Ba.dc[9]&31,f=!1;a.Ba===a.la&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Ij(a);else{c=a.Ba.dc[15]+((a.Ba.dc[14]&63)<<8);a.Lc!=c&&(Ij(a),a.Lc=c);d=d-b+1;if(a.fm!=b||a.mk!=d)a.fm=b,a.mk=d;a.ce=e+1;Hj(a)}}} +function Ij(a){if(0<=a.Lc){if(void 0!==a.ec){var b=a.ec[a.Lc];if(b&131072){var b=b&-131073,c=a.Lc%a.Bb,d=Math.floor(a.Lc/a.Bb);a.Ub&&a.Td[a.Ub]&&(a.Ze&&Jj(a,c,d,b,a.Ze),Jj(a,c,d,b));a.ec[a.Lc]=b}}a.Lc=-1}} +function Kj(a){var b;a=a.Ba;var c=a.re[5];if(null!=c){b=2;var d=512,e=a.re[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.nd=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.ne=function(a){var b=this.Ba;null!=a&&b&&a!=b.rh&&(b.Ih(a),this.na.Ih(b.eb,b.uc,b.Ff))}; +function Bj(a,b){var c,d=a.Jd,e=a.Ba;if(e)if(1==e.fe)d=Xi;else if(5==e.fe){var d=null,f=e.Tc>>2,g=32768<f?32768:f,h=e.re[6];if(null!=h){switch(h&12){case 0:e.eb=655360;e.uc=f;d=255;break;case 4:e.eb=655360;e.uc=f;d=3==a.he?15:16;break;case 8:e.eb=720896;e.uc=g;d=Xi;break;case 12:e.eb=753664,e.uc=g,d=3==a.he?2:3}c=e.Bf[1]&8;f=e.dc[6]|(e.dc[7]&1)<<8;255!=d&&(h&1?753664==e.eb?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Kj(a)}}else e.zc&8&&(e.zc&2?(d=e.zc&16?6:5,e.zc&4||(d-=1)):(d=e.zc&1?3:1,e.zc&4&&(d-= +1)));else a.Jd=null,null==d&&(d=a.od);if(!Aj(a,d,b))return!1;a.ne(c);return!0} +function Aj(a,b,c){if(null!=b&&(b!=a.Jd||c)){a.pm=0;a.Jd=b;b=a.Ba||(b==Xi?a.Sc:a.yb);if(b!=a.Ba||b.eb!=a.eb||b.uc!=a.uc){Ij(a);if(a.eb){if(!Za(a.na,a.eb,a.uc))return!1;a.Ba&&(a.Ba.mc=!1)}a.Ba=b;b.mc=!0;a.eb=b.eb;a.uc=b.uc;if(!Xa(a.na,b.eb,b.uc,!1,b===a.la?b:null))return!1}a.Ub=0;a.Bb=a.uh;a.sc=a.Ji;a.Ei=T[Xi][2];b=0;var d=T[a.Jd];d&&(a.Bb=d[0],a.sc=d[1],a.Ei=d[2],b=d[3]||0,a.Ub=d[4],4==a.he&&a.Ba===a.la&&3==a.Ub&&(7==a.la.dc[9]?a.sc=43:a.Ub=5));a.Hk=a.Bb*a.sc;a.th=a.Hk/a.Ei;a.bi=(a.th<<1)+b;a.jk= +b?a.bi+b>>1:0;13<=a.Jd&&(a.th<<=1);a.Td.length&&(a.yd=Math.floor(a.xd/a.Bb),a.zd=Math.floor(a.de/a.sc),a.Ub?(b=a.Td[a.Ub],d=a.Td[a.Ub<<1],a.wm&&80==a.Bb?d&&a.yd>=3*d.kc>>2&&(a.Ub<<=1,b=d):(d&&a.yd>=d.kc&&(a.Ub<<=1,b=d),b&&(a.yd=b.kc,a.zd=b.lc)),a.Sf=a.Tf=0,b&&(a.Sf=a.Bb*b.kc,a.Tf=a.sc*b.lc)):(a.yd=a.zd=1,a.Sf=a.Bb,a.Tf=a.sc),a.nh=a.Vc.createImageData(a.Sf,a.Tf),a.Xe=window.document.createElement("canvas"),a.Xe.width=a.Sf,a.Xe.height=a.Tf,a.Ze=a.Xe.getContext("2d"),a.Nj=a.Oj=0,a.di=a.xd,a.ei=a.de, +b=a.xd-a.Bb*a.yd,d=a.de-a.sc*a.zd,0<b&&(a.Nj=b>>1,a.di-=b),0<d&&(a.Oj=d>>1,a.ei-=d),b||d)&&(a.Vc.fillStyle=a.Mb.style.backgroundColor,a.Vc.fillRect(0,0,a.xd,a.de));!1!==c?yb(a,!0):Lj(a,!0)}return!0}function Gj(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Lj(a,b){var c;if(b){if(c=a.th,void 0===a.ec||a.ec.length!=c)a.ec=Array(c)}else{if(void 0===a.ec)return;c=a.ec.length}for(var d=0;d<c;d++)a.ec[d]=-1;a.ze=-1} +function Jj(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Td[a.Ub];h.Af&&(d=h.Af[d]);var m=g>>4&15;h.Af&&(m=h.Af[m]);e?(b*=h.kc,c*=h.lc,e.fillStyle=h.Se[m],e.fillRect(b,c,h.kc,h.lc)):(b=b*a.yd+a.Nj,c=c*a.zd+a.Oj,a.Vc.fillStyle=h.Se[m],a.Vc.fillRect(b,c,a.yd,a.zd));g&256&&(m=(f&15)*h.kc,f=(f>>4)*h.lc,e?e.drawImage(h.Oh[d],m,f,h.kc,h.lc,b,c,h.kc,h.lc):a.Vc.drawImage(h.Oh[d],m,f,h.kc,h.lc,b,c,a.yd,a.zd));g&512&&(f=a.fm,g=a.mk,e?(a.ce&&a.ce!==h.lc&&(f=Math.floor(f*h.lc/a.ce),g=Math.floor(g*h.lc/a.ce)), +e.fillStyle=h.Se[d],e.fillRect(b,c+f,h.kc,g)):(a.ce&&a.ce!==a.zd&&(f=Math.floor(f*a.zd/a.ce),g=Math.floor(g*a.zd/a.ce)),a.Vc.fillStyle=h.Se[d],a.Vc.fillRect(b,c+f,a.yd,g)))} +function yb(a,b){if(a.Nb){var c=!1;a.Ba&&(a.Ba===a.la?a.la.Bd&32&&(c=!0):a.Ba.zc&8&&(c=!0));if(c||b){if(b)Lj(a,!0);else if(void 0===a.ec)return;var d=!1;!(b||++a.pm&15)&&0<=a.Ae&&(a.Ae++,d=!0);var e=0,f=a.Hk,c=a.Ba.eb,g=c+a.Ba.uc,h=(a.Ba.dc[12]<<8)+a.Ba.dc[13];a.Ub&&(h<<=1);var c=c+h,m=a.bi;c+m>g&&(m=g-c,0>m&&(m=0));g=c+m;if(h=!b){for(var h=a.na,n=!0,q=c>>h.ob;0<m&&q<h.Aa.length;)h.Aa[q].bb&&(h.Aa[q].bb=n=!1,h.Aa[q].pk=!0),m-=h.hc,q++;h=n}if(h){if(!d)return;if(!a.ze){if(0>a.Lc)return;e=a.Lc;f=e+1}}if(a.Ub){if(a.Td[a.Ub]){d= +0;h=a.ze=0;m=1048575;a.Ba.zc&32&&(h=32768,m&=~h,a.Ae&2||(m&=-65537));for(c+=e<<1;c<g&&e<f;)n=ab(a.na,c),n|=65536,n&h&&(a.ze++,n&=m),e==a.Lc&&(n|=a.Ae&1?131072:0),q=a.ec[e],q!=n&&(Jj(a,e%a.Bb,Math.floor(e/a.Bb),n,a.Ze),a.ec[e]=n,d++),c+=2,e++;d&&a.Ze&&a.Vc.drawImage(a.Xe,0,0,a.Sf,a.Tf,a.Nj,a.Oj,a.di,a.ei);Hj(a)}}else if(a.jk){for(var f=g,t,s,e=c,g=a.ze=0,d=a.Ei,h=16==d?65536:196608,m=16==d?1:2,n=Dj(a,m),u=q=0,z=a.Bb,C=0,ia=a.sc,ja=0;e<f;){t=ab(a.na,e);s=a.ec[g];if(s===t)q+=d;else{a.ec[g]=t;t=t>>8| +(t&255)<<8;s=h;var rb=16;q<z&&(z=q);for(var Jc=0;Jc<d;Jc++){var Pd=(t&(s>>=m))>>(rb-=m);Gj(a.nh,q++,u,n[Pd])}q>C&&(C=q);u<ia&&(ia=u);u>=ja&&(ja=u+1)}e+=2;g++;if(q>=a.Bb){q=0;u+=2;if(u>a.sc)break;u==a.sc&&(u=1,e=c+a.jk)}}z<a.Bb&&(a.Ze.putImageData(a.nh,0,0,z,ia,C-z,ja-ia),a.Vc.drawImage(a.Xe,0,0,a.Bb,a.sc,0,0,a.xd,a.de))}else{f=g;e=a.ze=0;g=Dj(a);d=a.Ba.fd;m=h=0;n=a.Bb;q=0;u=a.sc;for(z=0;c<f;){C=c++-a.eb;C=d[C];ia=a.ec[e];if(ia===C)h+=8;else{a.ec[e]=C;h<n&&(n=h);for(ia=0;8>ia;ia++)ja=C&2155905152, +0>ja&&(ja=-ja),ja=V[ja]||0,Gj(a.nh,h++,m,g[ja]),C<<=1;h>q&&(q=h);m<u&&(u=m);m>=z&&(z=m+1)}e++;if(h>=a.Bb&&(h=0,++m>a.sc))break}n<a.Bb&&(a.Ze.putImageData(a.nh,0,0,n,u,q-n,z-u),a.Vc.drawImage(a.Xe,0,0,a.Bb,a.sc,0,0,a.xd,a.de))}}}}k.ln=function(a,b){return Mj(this,this.Sc,b)};k.Eo=function(a,b,c){a=this.Sc;a.kh=a.oc;a.oc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.kn=function(a,b){return Nj(this,this.Sc,b)};k.Do=function(a,b,c){Oj(this,this.Sc,b,c)};k.mn=function(a,b){return Pj(this,this.Sc,b)}; +k.Fo=function(a,b,c){a=this.Sc;this.ba(a.port+4,b,c,"MODE");a.zc=b;Bj(this,!1)};k.nn=function(a,b){return Qj(this,this.Sc,b)};k.Ol=function(a,b,c){this.la.jh=this.la.jh&-4|b&3;this.ba(a,b,c,"FEAT")};k.Dk=function(a,b){var c=this.la.jd?this.la.Rd[this.la.Bd&31]:this.la.Bd;this.ba(960,null,b,"ATC."+(this.la.jd?this.la.Th[this.la.Bd&31]:"INDX"),c);this.la.jd=!this.la.jd;return c}; +k.Nl=function(a,b,c){var d=this.la.Bd&32;if(this.la.jd){var e=this.la.Bd&31;if(16<=e||!d)this.ba(a,b,c,"ATC."+this.la.Th[e]),this.la.Rd[e]=b;this.la.jd=!1}else this.la.Bd=b,this.ba(a,b,c,"ATC.INDX"),this.la.jd=!0,b&32&&!d&&zj(this)&&yb(this,!0)};k.xn=function(a,b){var c=3-((this.la.Yf&12)>>2),c=this.la.Lh&-17|(this.Ng&1<<c)<<4-c;this.la.Lh=c;this.ba(962,null,b,"STATUS0",c);return c};k.Ho=function(a,b,c){this.la.Yf=b;yj(this);this.ba(962,b,c,"MISC")}; +k.wn=function(a,b){var c=this.la.Dd;this.ba(964,null,b,"SEQ.INDX",c);return c};k.Oo=function(a,b,c){this.la.Dd=b;this.ba(964,b,c,"SEQ.INDX")};k.vn=function(a,b){var c=this.la.Bf[this.la.Dd];this.ba(965,null,b,"SEQ"+this.la.Vh[this.la.Dd],c);return c};k.No=function(a,b,c){this.ba(965,b,c,"SEQ."+this.la.Vh[this.la.Dd]);this.la.Bf[this.la.Dd]=b;2==this.la.Dd&&(this.la.hb=ej[b&15])};k.cn=function(a,b){var c=this.la.xi;this.ba(972,null,b,"GRC1",c);return c}; +k.yo=function(a,b,c){this.la.xi=b;this.ba(972,b,c,"GRC1")};k.dn=function(a,b){var c=this.la.yi;this.ba(970,null,b,"GRC2",c);return c};k.zo=function(a,b,c){this.la.yi=b;this.ba(970,b,c,"GRC2")};k.bn=function(a,b){var c=this.la.Cd;this.ba(974,null,b,"GRC.INDX",c);return c};k.xo=function(a,b,c){this.la.Cd=b;this.ba(974,b,c,"GRC.INDX")};k.an=function(a,b){var c=this.la.re[this.la.Cd];this.ba(975,null,b,"GRC."+this.la.Uh[this.la.Cd],c);return c}; +k.wo=function(a,b,c){this.ba(975,b,c,"GRC."+this.la.Uh[this.la.Cd]);this.la.re[this.la.Cd]=b;switch(this.la.Cd){case 0:this.la.xh=ej[b&15];this.la.Ie=this.la.xh&~this.la.je;break;case 1:this.la.je=~ej[b&15];this.la.Ie=this.la.xh&~this.la.je;break;case 2:this.la.Fi=ej[b&15]&2155905152;break;case 3:case 5:this.ne(Kj(this));break;case 4:this.la.vj=(b&3)<<3;break;case 6:Bj(this,!1);break;case 7:this.la.Gi=ej[b&15^15]&2155905152;break;case 8:this.la.lb=b|b<<8|b<<16|b<<24}}; +k.Tm=function(a,b){return Mj(this,this.yb,b)};k.po=function(a,b,c){a=this.yb;a.kh=a.oc;a.oc=b&31;this.ba(a.port,b,c,"CRTC.INDX")};k.Sm=function(a,b){return Nj(this,this.yb,b)};k.oo=function(a,b,c){Oj(this,this.yb,b,c)};k.Um=function(a,b){return Pj(this,this.yb,b)};k.qo=function(a,b,c){a=this.yb;this.ba(a.port+4,b,c,"MODE");a.zc=b;Bj(this,!1)};k.Rm=function(a,b){var c=this.yb.Ye;this.ba(this.yb.port+5,null,b,this.yb.type+".COLOR",c);return c}; +k.no=function(a,b,c){this.ba(this.yb.port+5,b,c,this.yb.type+".COLOR");this.yb.Ye!==b&&(this.yb.Ye=b,Lj(this,!1))};k.Vm=function(a,b){return Qj(this,this.yb,b)};function Mj(a,b,c){var d=b.oc;a.ba(b.port,null,c,"CRTC.INDX",d);return d}function Nj(a,b,c){var d;b.oc<b.Di&&(d=b.dc[b.oc]);a.ba(b.port+1,null,c,"CRTC."+b.Lg[b.oc],d);return d}function Oj(a,b,c,d){b.oc<b.Di&&(a.ba(b.port+1,c,d,"CRTC."+b.Lg[b.oc]),b.dc[b.oc]=c,9==b.oc&&8!=b.kh&&Bj(a,!0),Cj(a))} +function Pj(a,b,c){var d=b.zc;a.ba(b.port+4,null,c,"MODE",d);return d}function Qj(a,b,c){var d=0,e=E(a.S),f=e-b.Mi;0>f&&(f=0);f%b.Hi>b.Qn&&(d|=1);f%=b.Kk;f>b.Tn&&(d|=8);b.Mi=e-f;b===a.la?(d|=b.tf&48^48,b.jd=!1):d=(b.tf^=9)|240;b.tf=d;a.ba(b.port+6,null,c,b===a.la?"STATUS1":"STATUS",d);return d}k.Fa=function(a,b){this.Z&&(b||L(this.Z,this.Z.Dg))&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Dg,e)}; +var sj={948:S.prototype.ln,949:S.prototype.kn,952:S.prototype.mn,954:S.prototype.nn,980:S.prototype.Tm,981:S.prototype.Sm,984:S.prototype.Um,985:S.prototype.Rm,986:S.prototype.Vm},tj={948:S.prototype.Eo,949:S.prototype.Do,952:S.prototype.Fo,980:S.prototype.po,981:S.prototype.oo,984:S.prototype.qo,985:S.prototype.no},uj={960:S.prototype.Dk,961:S.prototype.Dk,962:S.prototype.xn,964:S.prototype.wn,965:S.prototype.vn,970:S.prototype.dn,972:S.prototype.cn,974:S.prototype.bn,975:S.prototype.an},vj={954:S.prototype.Ol, +960:S.prototype.Nl,961:S.prototype.Nl,962:S.prototype.Ho,964:S.prototype.Oo,965:S.prototype.No,970:S.prototype.zo,972:S.prototype.yo,974:S.prototype.xo,975:S.prototype.wo,986:S.prototype.Ol}; +za(function(){for(var a=A(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=y(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing <canvas> support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; +e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new S(d,e,f);Ma(d,c)}}); +function X(a){this.Ak=a.adapter;switch(this.Ak){case 1:this.Cj=1016;this.gg=4;break;case 2:this.Cj=760;this.gg=3;break;default:v("Unrecognized serial adapter #"+this.Ak);return}this.ae=null;w.call(this,"SerialPort",a,X);var b=a.binding,c;a=Rj;b&&(void 0===c&&(c="Panel"),(c=La(c,this.id))&&(b=c.ta[b])&&this.wb(null,null,a,b))}x(w,X);var Rj="buffer";k=X.prototype;k.Zj=function(a,b){return a==this.lh?(this.Ek=b,this):null}; +k.wb=function(a,b,c,d){var e=this;switch(c){case Rj:return this.ta[c]=this.ae=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Sj(e,[b]))},d.onkeypress=function(a){a=a||window.event;Sj(e,[a.which||a.keyCode])},!0}return!1};k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.ka=B(a,"ChipSet");d&&Jh(d,X);gb(b,this,Tj,this.Cj);kb(b,this,Uj,this.Cj);this.Sa()}; +k.bc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ge()};k.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.Zh;c[b++]=this.ck;c[b++]=this.Pe;c[b++]=this.Og;c[b++]=this.Xd;c[b++]=this.Rc;c[b++]=this.gd;c[b++]=this.Gc;c[b++]=this.ak;c[b]=this.Df;a.set(0,c);return a.data()};k.restore=function(a){return this.ge(a[0])}; +k.ge=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.Zh=a[b++];this.ck=a[b++];this.Pe=a[b++];this.Og=a[b++];this.Xd=a[b++];this.Rc=a[b++];this.gd=a[b++];this.Gc=a[b++];this.ak=a[b++];this.Df=a[b];return!0};function Sj(a,b){a.Df=a.Df.concat(b);Vj(a)}function Vj(a){0<a.Df.length&&!(a.Gc&1)&&(a.Zh=a.Df.shift(),a.Gc|=1);var b=-1;a.Gc&1&&a.Og&1&&(b=4);0<=b?(a.Xd&=-8,a.Xd|=b,a.ka&&a.gg&&Q(a.ka,a.gg)):(a.Xd|=1,a.ka&&a.gg&&ti(a.ka,a.gg))} +k.un=function(a,b){var c=this.Rc&128?this.Pe&255:this.Zh;this.ba(a,null,b,this.Rc&128?"DLL":"RBR",c);this.Gc&=-2;Vj(this);return c};k.en=function(a,b){var c=this.Rc&128?this.Pe>>8:this.Og;this.ba(a,null,b,this.Rc&128?"DLM":"IER",c);return c};k.fn=function(a,b){var c=this.Xd;this.ba(a,null,b,"IIR",c);return c};k.gn=function(a,b){var c=this.Rc;this.ba(a,null,b,"LCR",c);return c};k.jn=function(a,b){var c=this.gd;this.ba(a,null,b,"MCR",c);return c}; +k.hn=function(a,b){var c=this.Gc;this.ba(a,null,b,"LSR",c);return c};k.pn=function(a,b){var c=this.ak;this.ba(a,null,b,"MSR",c);return c};k.Po=function(a,b,c){this.ba(a,b,c,this.Rc&128?"DLL":"THR");this.Rc&128?this.Pe=this.Pe&-256|b:(this.ck=b,this.Gc&=-97,this.ae?(13!=b&&(8==b?this.ae.value=this.ae.value.slice(0,-1):(this.ae.value+=String.fromCharCode(b),this.ae.scrollTop=this.ae.scrollHeight)),a=!0):a=!1,a&&(this.Gc|=96))}; +k.Ao=function(a,b,c){this.ba(a,b,c,this.Rc&128?"DLM":"IER");this.Rc&128?this.Pe=this.Pe&255|b<<8:this.Og=b};k.Bo=function(a,b,c){this.ba(a,b,c,"LCR");this.Rc=b}; +k.Co=function(a,b,c){var d=this.gd;this.ba(a,b,c,"MCR");this.gd=b;this.Ek&&(d^b)&3&&(a=this.Ek,b=this.gd,(c=3==(b&3))?a.mc||(d=!1,a.gd&2||(a.reset(),a.Fa("serial mouse reset"),d=!0),a.gd&1||(a.Fa("serial mouse ID requested"),d=!0),d&&(Sj(a.Of,[77]),a.Fa("serial mouse ID sent")),Wj(a,a.Mb),a.mc=c):a.mc&&(a.Fa("serial mouse inactive"),Xj(a.Mb),a.mc=c),a.gd=b)};k.Fa=function(a){this.Z&&L(this.Z,this.Z.Sj)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Sj,e)}; +var Tj={0:X.prototype.un,1:X.prototype.en,2:X.prototype.fn,3:X.prototype.gn,4:X.prototype.jn,5:X.prototype.hn,6:X.prototype.pn},Uj={0:X.prototype.Po,1:X.prototype.Ao,3:X.prototype.Bo,4:X.prototype.Co};za(function(){for(var a=A(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new X(d);Ma(d,c)}});function Yj(a){w.call(this,"Mouse",a,Yj);if(this.zi=a.serial)this.Fj="SerialPort";this.mc=!1;this.Sa()}x(w,Yj);k=Yj.prototype; +k.pc=function(a,b,c,d){this.Da=a;this.na=b;this.S=c;(this.Z=d)&&Jh(d,Yj)};k.bc=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Fj&&!this.Of){for(var c=null;(c=B(this.Da,this.Fj,c))&&(!c.Zj||!(this.Of=c.Zj(this.zi,this))););if(this.Of){if(c=B(this.Da,"Video"))this.Mb=c.Mb}else v(this.id+": "+this.Fj+" "+this.zi+" unavailable")}this.mc?Wj(this,this.Mb):Xj(this.Mb)}return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.ge()}; +k.save=function(){var a=new H(this);a.set(0,this.Kj());return a.data()};k.restore=function(a){return this.ge(a[0])};k.ge=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.mc=a[b++];this.zg=a[b++];this.Ag=a[b++];this.wf=a[b++];this.xf=a[b++];this.dh=a[b++];this.eh=a[b++];this.gd=a[b];return!0};k.Kj=function(){var a=0,b=[];b[a++]=this.mc;b[a++]=this.zg;b[a++]=this.Ag;b[a++]=this.wf;b[a++]=this.xf;b[a++]=this.dh;b[a++]=this.eh;b[a]=this.gd;return b}; +function Wj(a,b){b&&(a.mi||(b.addEventListener("mousemove",function(b){if(a.mc&&a.S&&a.S.Ob){if(0>a.zg||0>a.Ag)a.zg=b.clientX,a.Ag=b.clientY;a.wf=b.clientX-a.zg;a.xf=b.clientY-a.Ag;(a.wf||a.xf)&&Zj(a,null,b.clientX,b.clientY);a.zg=b.clientX;a.Ag=b.clientY}},!1),b.addEventListener("mousedown",function(b){ak(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){ak(a,b.button,!1)},!1),a.mi=!0),b.style.cursor="none")}function Xj(a){a&&(a.style.cursor="auto")} +function ak(a,b,c){if(a.mc&&a.S&&a.S.Ob)switch(b){case 0:a.dh!=c&&(a.dh=c,Zj(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.eh!=c&&(a.eh=c,Zj(a,"mouse button2 "+(c?"dn":"up")))}}function Zj(a,b,c,d){var e=64|(a.dh?32:0)|(a.eh?16:0)|(a.xf&192)>>4|(a.wf&192)>>6,f=a.wf&63,g=a.xf&63;a.Fa((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+p(e)+","+p(f)+","+p(g)+"]");Sj(a.Of,[e,f,g]);a.wf=a.xf=0}k.Fa=function(a){this.Z&&L(this.Z,this.Z.lm)&&this.Z.message(a)}; +za(function(){for(var a=A(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Yj(d);Ma(d,c)}});function bk(a,b,c){w.call(this,"Disk",{id:a.mh+".disk"+ck++},bk);this.ia=a;this.Da=a.Da;this.Z=a.Z;this.Na=b;this.mode=c;this.Kd=b.name;this.Ac=b.Ac;this.qc=b.qc;this.$c=b.$c;this.Tb=b.Tb;this.cf=b.cf;this.si=this.Ad=!1;this.create();this.qe=[];this.Fg=[];this.Pd=null;this.Gk=0;this.ui=!1;this.Sa()}var ck=0;x(w,bk);k=bk.prototype;k.pc=function(a,b,c,d){this.Z=d}; +k.bc=function(a,b){b||this.si&&!this.Ad&&this.load(this.Kd,this.rf);return!0};k.Yb=function(a,b){if(this.Ad){var c,d=0;if(this.ui&&!ra("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=dk(this,!1);)if(d=c[0]){this.Ha('Unable to save "'+this.Kd+'" (error '+d+")");break}b&&this.Ad&&(c="action=close&volume="+this.rf,c+="&machine="+this.ia.ef(),c+="&user="+this.ia.ee(),pa(qa()+"/api/v1/disk?"+c,!0),this.Ad=!1);d||this.Ha(this.Kd+" saved")}return!0}; +k.create=function(){this.ib=[];if("preload"!=this.mode){for(var a=Array(this.Ac),b=0;b<a.length;b++){for(var c=Array(this.qc),d=0;d<c.length;d++){for(var e=Array(this.$c),f=1;f<=e.length;f++)e[f-1]=ek(null,b,d,f,this.Tb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.ib=a}this.ah=0}; +k.load=function(a,b,c){var d=b;this.Kd=a;this.rf=b;this.xk=c;0>b.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.Ac+":"+this.qc+":"+this.$c+":"+this.Tb,a+="&machine="+this.ia.ef(),a+="&user="+this.ia.ee(),d=qa()+"/api/v1/disk?"+a,this.si=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"): +-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=qa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.cf?"":d)+"&format=json"));pa(d,!0,null,this,this.Un,b)}; +k.Un=function(a,b,c,d){var e=null;this.df=!1;var f=0>c&&this.Da&&!this.Da.Nb;if(this.si)c?this.Ha('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Ad=!0,e=this);else if(c)this.Ha('Unable to load disk "'+this.Kd+'" (error '+c+")",f);else try{if(0<da(a,!0).toLowerCase().indexOf("-readonly"))this.df=!0;else{var g=b.indexOf("\n");0<g&&1024>g&&0<b.substring(0,g).indexOf("write-protected")&&(this.df=!0)}var h;h="<"==b.substr(0,1)?["Missing disk image: "+this.Kd]:0>b.indexOf("0x")&&'["'!= +b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)v(h[0]);else{for(b=a=0;b<h.length;b++)for(c=0;c<h[b].length;c++)for(d=0;d<h[b][c].length;d++){var m=h[b][c][d],n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var t=m.data;if(void 0===t){var s=m.bytes;if(void 0!==s&&s.length){for(var f=n<<2,u=s.length;u<f;u++)s[u]=q;this.fill(m,s,0)}else t=[],q=m.pattern=q|q<<8|q<<16|q<<24,m.data= +t;delete m.bytes}ek(m,b,c);for(f=0;f<t.length;f++)a=a+t[f]&4294967295}this.ib=h;this.ah=a;e=this}else v("Empty disk image: "+this.Kd)}catch(z){v("Disk image error: "+z.message)}this.xk&&this.xk.call(this.ia,this.Na,e,this.Kd,this.rf)};function ek(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Cm=b;a.Em=c;a.Xc=a.Hc=0;a.bb=!1;return a} +k.Vn=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],g=d[2],h=d[3];a=d[4];b=JSON.parse(b);for(var m=0;h--;){var n=this.seek(e,f,g,!0);if(!n)break;this.fill(n,b,m);m+=n.length;g++}}(d=d[5])&&d(c,a)};function fk(a,b,c,d,e,f){if(a.Ad){var g;g="action=read&volume="+a.rf;g+="&chs="+a.Ac+":"+a.qc+":"+a.$c+":"+a.Tb;g=g+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ia.ef());g+="&user="+a.ia.ee();pa(qa()+"/api/v1/disk?"+g,!0,null,a,a.Vn,[b,c,d,e,!0,f])}else f&&f(-1,!1)} +function gk(a,b,c){b.bb=!0;var d=a.qe.indexOf(b);0<=d&&(a.qe.splice(d,1),a.Fg.splice(d,1));a.qe.push(b);a.Fg.push(ma());c&&hk(a)}function hk(a){if(a.qe.length){var b=a.Fg[0]+2E3;a.Pd&&a.Gk<b&&(clearTimeout(a.Pd),a.Pd=null);if(!a.Pd){var c=ma(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.Pd=setTimeout(function(){dk(a,!0)},b);a.Gk=c+b}}else a.Pd&&(clearTimeout(a.Pd),a.Pd=null)} +function dk(a,b){b&&(a.Pd=null);var c=a.qe[0];if(c){for(var d=c.Cm,e=c.Em,c=c.sector,f=0,g=[],h=c-1;h<a.ib[d][e].length;h++){var m=a.ib[d][e][h];if(!m.bb)break;var n=a.qe.indexOf(m);a.qe.splice(n,1);a.Fg.splice(n,1);g=g.concat(ik(m));m.bb=!1;f++}a.Ad?(h={},a.ui=!0,h.action="write",h.volume=a.rf,h.chs=a.Ac+":"+a.qc+":"+a.$c+":"+a.Tb,h.addr=d+":"+e+":"+c+":"+f,h.machine=a.ia.ef(),h.user=a.ia.ee(),h.data=JSON.stringify(g),d=pa(qa()+"/api/v1/disk",b,h,a,a.$n,[d,e,c,f,b])):d=!1;return b||d}return!1} +k.$n=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.ui=!1;if(0<=a&&a<this.ib.length&&0<=b&&b<this.ib[a].length)for(e-=1;0<f--&&0<=e&&e<this.ib[a][b].length;e++){var g=this.ib[a][b][e];c?gk(this,g,!1):g.bb||(g.Xc=g.Hc=0)}d&&hk(this)};k.info=function(){return this.ib.length?[this.ib.length,this.ib[0].length,this.ib[0][0].length,this.ib[0][0][0].length]:[0,0,0,0]}; +function jk(a){a=JSON.stringify(a.ib);a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");return a=a.replace(/(sector|length|data|pattern):/gm,'"$1":')} +k.seek=function(a,b,c,d,e){var f=null,g=this.Na,h=this.ib[a];if(h){var m=h[b];if(!m&&g.Hf&&b<g.qc)for(m=h[b]=Array(g.Yd),h=0;h<m.length;h++)m[h]=ek(null,a,b,h+1,g.Wa,0);if(m){for(h=0;h<m.length;h++)if(m[h].sector==c){f=m[h];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++h<m.length;)null===m[h].pattern&&d++;fk(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&g.Hf&&9==g.Qa&&(f=m[h]=ek(null,a,b,g.Qa,g.Wa,0))}}e&&e(f,!1);return f}; +k.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function ik(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var g=f<e.length?e[f]:a;c[d++]=g&255;c[d++]=g>>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function kk(a,b){var c=-1;if(b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c} +k.write=function(a,b,c){if(this.df)return!1;if(b<a.length){if(c!=kk(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Hc?f<a.Xc?(a.Hc+=a.Xc-f,a.Xc=f):f>=a.Xc+a.Hc&&(a.Hc+=f-(a.Xc+a.Hc)+1):(a.Xc=f,a.Hc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Ad&&gk(this,a,!0)}return!0}return null}; +k.save=function(){var a=0,b=[];b[a++]=[this.rf,this.ah];if(!this.Ad&&!this.df)for(var c=this.ib,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var g=c[d][e][f];if(g.Hc){for(var h=[],m=0,n=g.Xc,q=g.Xc+g.Hc;n<q;)h[m++]=g.data[n++];b[a++]=[d,e,f,g.Xc,h]}}return b}; +k.restore=function(a){var b=0,c="unsupported restore format";if(this.ib.length&&a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&e[1]!=this.ah&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.ah+")",b=-1);for(;d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],m=g[f++],n=g[f++];if(h>=this.ib.length||m>=this.ib[h].length||n>=this.ib[h][m].length){c="sector "+h+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.df){c="unable to modify write-protected disk";b=-1;break}e= +g[f++];f=g[f++];g=e+f.length;h=this.ib[h][m][n];for(m=h.data.length;m<e;)h.data[m++]=h.pattern;m=0;h.Xc=e;for(h.Hc=f.length;e<g;)h.data[e++]=f[m++];b++}}0>b&&this.Ha("unable to restore disk '"+this.Kd+": "+c);return b};k.Fa=function(a){this.Z&&L(this.Z,this.Z.im)&&this.Z.message(a)}; +function lk(a){w.call(this,"FDC",a,lk);this.dmaRead=this.gi;this.dmaWrite=this.hi;this.dmaFormat=this.qm;this.Ke=null;if(a.autoMount&&(this.Ke=a.autoMount,"string"==typeof this.Ke))try{this.Ke=eval("("+a.autoMount+")")}catch(b){v("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Ke=null}this.vc=[];this.Ed();this.Gf()||this.Sa()}x(w,lk); +var mk={3:{$d:3,Ce:0,name:"SPECIFY"},4:{$d:2,Ce:1,name:"DRIVE_STATUS"},5:{$d:9,Ce:7,name:"WRITE_DATA"},6:{$d:9,Ce:7,name:"READ_DATA"},7:{$d:2,Ce:0,name:"RECALIBRATE"},8:{$d:1,Ce:2,name:"INT_STATUS"},13:{$d:6,Ce:7,name:"FORMAT"},15:{$d:3,Ce:0,name:"SEEK"}};k=lk.prototype; +k.wb=function(a,b,c,d){switch(c){case "listDisks":return this.ta[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.ta.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){v("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d='<a href="'+m+'" target="_blank">'+d+"</a>");c.innerHTML= +d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.ta[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||nk(a,c)}}(this,d),!0;case "loadDrive":return this.ta[c]=d,d.onclick=function(a){return function(){var b,c=a.ta.listDisks,d=a.ta.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.ya.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=da(d);a.ca("Attempting to load "+ +d+' as "'+c+'"')}for(;ok(a,b,c,d,!1)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var m=a,n=d,q=void 0,q=0;q<m.vc.length;q++)if(m.vc[q][1]==n){m.vc.splice(q,1);break}pk(a,b,!1,!0)}}else pk(a,b);else a.Ha("Nothing to load")}}(this),!0}return!1};k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.Da=a;this.ka=B(a,"ChipSet");gb(b,this,qk);kb(b,this,rk);Ac(c,19,this,this.Ci)}; +k.bc=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Da.ti){this.vc=[];for(var c=0;c<this.ya.length;c++)pk(this,c,!0);this.Gf(!0)}}else if(!this.restore(a))return!1;if(this.ka){this.vh=Yh(this.ka);for(c=0;c<this.vh;c++){var d=this.ya[c];d.dk=Uh(this.ka,c);2==d.dk&&(d.Ac=80)}if(d=this.ta.listDrives){for(;d.firstChild;)d.removeChild(d.firstChild);d.innerHTML="";for(c=0;c<this.vh;c++){var e=window.document.createElement("option");e.value=c;e.innerHTML=String.fromCharCode(65+c)+":";d.appendChild(e)}0< +this.vh&&(d.value="0",nk(this,0))}}}return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Ed()};k.save=function(){var a=new H(this);a.set(0,this.Hj());return a.data()};k.restore=function(a){return this.Ed(a[0])}; +k.Ed=function(a){var b=0,c=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.Ab=a[b++];b++;this.za=a[b++];this.cc=a[b++];this.mb=a[b++];this.Ya=a[b++];this.qf=a[b++];var d=a[b++],e=a[b++];null!=e&&(this.vc=e);void 0===this.ya&&(this.vh=0,this.ya=Array(4));for(e=0;e<this.ya.length;e++)void 0===this.ya[e]&&(this.ya[e]={}),this.Ai(this.ya[e],e,d[e])||(c=!1);this.me=a[b++]||0;this.Sl=a[b]||0;return c}; +k.Hj=function(){var a=0,b=[];b[a++]=this.Ab;b[a++]=0;b[a++]=this.za;b[a++]=this.cc;b[a++]=this.mb;b[a++]=this.Ya;b[a++]=this.qf;b[a++]=this.Jj();for(var c=a++,d=0;d<this.ya.length;d++){var e=this.ya[d];e.va&&sk(this,e.Ne,e.va)}b[c]=this.vc;b[a++]=this.me;b[a]=this.Sl;return b}; +k.Ai=function(a,b,c){var d=0,e=!0;a.Ab=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.Ac||40,c[3],9,512,c[1]]);a.Za=c[d++];a.name=c[d][0];a.Ac=c[d][1];a.qc=c[d][2];a.$c=c[d][3];a.Tb=c[d][4];a.cf=c[d][5];d++;a.dk=1;a.Ma=c[d++];a.Wd=c[d++];a.tb=c[d++];a.Wd=100<=a.Wd?a.Wd-100:a.Wd-a.tb;a.Qa=c[d++];a.Yd=c[d++];a.Wa=c[d++];a.Va=c[d++];a.Ra=null;a.va||(a.Ne="");var f=c[d++];f===tk?(f=c[d++],c=c[d],ok(this,b,f,c,!0)?a.va&&uk(this,f,c,a.va):this.Sa(!1)):void 0!==f&&a.va&& +0>a.va.restore(f)&&(e=!1);e&&a.va&&void 0!==a.Va&&(a.Ra=a.va.seek(a.tb,a.Ma,a.Qa));return e};k.Jj=function(){for(var a=0,b=[],c=0;c<this.ya.length;c++)b[a++]=this.Ij(this.ya[c]);return b};k.Ij=function(a){var b=0,c=[];c[b++]=a.Za;c[b++]=[a.name,a.Ac,a.qc,a.$c,a.Tb,a.cf];c[b++]=a.Ma;c[b++]=a.Wd+100;c[b++]=a.tb;c[b++]=a.Qa;c[b++]=a.Yd;c[b++]=a.Wa;c[b++]=a.Va;c[b++]=tk;c[b++]=a.Xl;c[b]=a.Ne;return c};k.lk=function(a){var b;a=this.ya[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b}; +k.$l=function(a,b,c){if(a.va){var d=a.va.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.tb=Math.floor(b/f),b%=f,a.Ma=Math.floor(b/e),a.Qa=b%e+1,a.Wa=c*d[3],a.Za=0,!0}return!1};k.Gf=function(a){a||(this.ye=0);if(this.Ke)for(var b in this.Ke){var c=this.Ke[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.ya.length){!ok(this,d,c.name,c.path,!0)&&a&&this.Sa(!1);continue}}this.Ha("Unrecognized auto-mount specification for drive "+b)}return!!this.ye}; +function ok(a,b,c,d,e){var f=a.ya[b];if(d&&f.Ne!=d){pk(a,b,e,!0);if(f.Kc)return a.Ha("Drive "+b+" busy"),!0;f.Kc=!0;e&&(f.Fe=!0,a.ye++,a.Fa("loading diskette '"+c+"'"));(new bk(a,f,"preload")).load(c,d,a.Ln);return!1}return!0} +k.Ln=function(a,b,c,d){a.Kc=!1;b&&b.ib.length>a.Ac&&(this.Ha('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Ab)),b=null);b&&(a.va=b,a.Xl=c,a.Ne=d,uk(this,c,d,b),this.me|=128,this.Ha('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Ab),a.Fe));a.Fe&&(a.Fe=!1,--this.ye||this.Sa());nk(this,a.Ab)}; +function nk(a,b){if(0<=b&&b<a.ya.length){var c=a.ya[b],d=a.ta.listDisks,e=a.ta.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.Ne){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function pk(a,b,c,d){var e=a.ya[b];e.va&&(sk(a,e.Ne,e.va),e.Xl="",e.Ne="",e.va=null,a.me|=128,d||a.Ha("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||nk(a,b))} +function uk(a,b,c,d){var e;for(e=0;e<a.vc.length;e++)if(a.vc[e][1]==c){d.restore(a.vc[e][2]);return}a.vc[e]=[b,c,[]]}function sk(a,b,c){var d;for(d=0;d<a.vc.length;d++)if(a.vc[d][1]==b){a.vc[d][2]=c.save();break}}k.vo=function(a,b,c){this.ba(a,b,c,"OUTPUT");b&4?this.qf&4||this.qf&8&&this.ka&&Q(this.ka,6):this.Ed();this.qf=b};k.$m=function(a,b){this.ba(a,null,b,"STATUS",this.za);return this.za}; +k.Ym=function(a,b){var c=0;this.mb<this.Ya&&(c=this.cc[this.mb]);this.qf&8&&this.ka&&ti(this.ka,6);this.ba(a,null,b,"DATA["+this.mb+"]",c);++this.mb>=this.Ya&&(this.za&=-81,this.mb=this.Ya=0);return c}; +k.uo=function(a,b,c){this.ba(a,b,c,"DATA["+this.Ya+"]");this.Ya<this.cc.length&&(this.cc[this.Ya++]=b);a=this.cc[0]&31;if(void 0!==mk[a]&&this.Ya>=mk[a].$d){b=!1;this.mb=0;var d;a=this.Oa()&31;switch(a){case 3:this.Oa("SRT");this.Oa("HLT");this.Lb();break;case 4:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];this.Lb();this.rb((d.Za&4278190080)>>>24,"ST3");break;case 5:case 6:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];d.Ma=c>>2&1;d.tb=this.Oa("C");this.Oa("H");d.Qa=this.Oa("R");b=this.Oa("N"); +d.Wa=128<<b;d.Yd=this.Oa("EOT");this.Oa("GPL");this.Oa("DTL");6==a?this.ii(d):this.ji(d);this.Lb();vk(this,d);this.rb((d.Za&65280)>>>8,"ST1");this.rb((d.Za&16711680)>>>16,"ST2");this.rb(d.tb,"C");this.rb(d.Ma,"H");this.rb(d.Qa,"R");this.rb(b,"N");b=!0;break;case 7:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];d.tb=d.Wd=0;d.Za=268435488;this.Lb();b=!0;break;case 8:d=this.ya[this.Ab];d.Ma=0;this.Lb();vk(this,d);this.rb(d.tb,"PCN");break;case 13:c=this.Oa("DS");this.Ab=c&3;d=this.ya[this.Ab];d.Ma=c>> +2&1;b=this.Oa("N");d.Wa=128<<b;d.Yd=this.Oa("SC");this.Oa("GPL");d.$j=this.Oa("D");this.nk(d);this.Lb();vk(this,d);this.rb((d.Za&65280)>>>8,"ST1");this.rb((d.Za&16711680)>>>16,"ST2");this.rb(d.tb,"C");this.rb(d.Ma,"H");this.rb(d.Qa,"R");this.rb(b,"N");b=!0;break;case 15:c=this.Oa("DS"),this.Ab=c&3,d=this.ya[this.Ab],d.Ma=c>>2&1,a=this.Oa("NCN"),d.tb+=a-d.Wd,0>d.tb&&(d.tb=0),d.tb>=d.Ac&&(d.tb=d.Ac-1),d.Wd=a,d.Za=32,0==d.tb&&(d.Za|=268435456),this.Lb(),b=!0}0<this.Ya&&(this.za|=80);this.qf&8&&(!d|| +d.Za&8||!b||this.ka&&Q(this.ka,6))}};k.Zm=function(a,b){var c=this.me;this.me&=-129;this.ba(a,null,b,"INPUT",c);return c};k.to=function(a,b,c){this.ba(a,b,c,"CONTROL");this.Sl=b};k.Oa=function(){var a=this.cc[this.mb];this.mb++;return a};k.Lb=function(){this.mb=this.Ya=0};k.rb=function(a){this.cc[this.Ya++]=a};function vk(a,b){a.rb(b.Ab|b.Ma<<2|b.Za&255,"ST0")}k.gi=function(a,b,c){void 0===b||0>b?this.tc(a,c):c(-1,!1)};k.hi=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1}; +k.qm=function(a,b){return void 0!==b&&0<=b?this.Lj(a,b):-1};k.ii=function(a){a.Za=72;a.va&&(a.Ra=null,a.Za=0,this.ka&&(mi(this.ka,2,this,"dmaRead",a),gi(this.ka,2)))};k.ji=function(a){a.Za=72;a.va&&(a.va.df?a.Za=576:(a.Ra=null,a.Za=0,this.ka&&(mi(this.ka,2,this,"dmaWrite",a),gi(this.ka,2))))};k.nk=function(a){a.Za=72;a.va&&(a.Ra=null,a.Za=0,this.ka&&(a.Be=0,a.xc=Array(4),a.Hf=!0,a.Nf=0,mi(this.ka,2,this,"dmaFormat",a),gi(this.ka,2),a.Hf=!1))}; +k.tc=function(a,b){var c=-1;if(!a.Za&&a.va){do{if(a.Ra&&0<=(c=kk(a.Ra,a.Va++)))break;a.Ra=a.va.seek(a.tb,a.Ma,a.Qa);if(!a.Ra){a.Za=1088;break}a.Va=0;this.Ef(a)}while(1)}b(c,!1)};k.Cc=function(a,b){if(a.Za||!a.va)return-1;do{if(a.Ra&&a.va.write(a.Ra,a.Va++,b))break;a.Ra=a.va.seek(a.tb,a.Ma,a.Qa);if(!a.Ra){a.Za=8256;b=-1;break}a.Va=0;this.Ef(a)}while(1);return b};k.Ef=function(a){a.Qa++;a.Qa>=a.$c+1&&(a.Qa=1,a.Ma++,a.Ma>=a.qc&&(a.Ma=0,a.tb++))}; +k.Lj=function(a,b){if(a.Za)return-1;a.xc[a.Be++]=b;if(a.Be==a.xc.length){a.tb=a.xc[0];a.Ma=a.xc[1];a.Qa=a.xc[2];a.Wa=128<<a.xc[3];for(var c=a.Be=0;c<a.Wa;c++)if(0>this.Cc(a,a.$j))return-1;a.Nf++}a.Nf>=a.Yd&&(b=-1);return b}; +k.Ci=function(a){var b=this.S.G&255,c=this.S.G>>8,d=this.S.I&255,e=this.S.I>>8,f=this.S.J&255,g=this.S.J>>8;this.Z&&L(this.Z,this.Z.Bg)&&128>f&&(this.Z.message("\nFDC.intBIOS(AH="+p(c)+",D="+p(f)+",C="+p(e)+",H="+p(g)+",S="+p(d)+",N="+p(b)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,b){return function(c){b=E(a.S)-b;a.Fa("FDC.intBIOS("+c+"): C="+(Pc(a.S)?1:0)+" (cycles="+b+")")}}(this,E(this.S))));return!0};k.Fa=function(a){this.Z&&L(this.Z,this.Z.Bg)&&this.Z.message(a)}; +k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Bg,e)};var qk={1012:lk.prototype.$m,1013:lk.prototype.Ym,1015:lk.prototype.Zm},rk={1010:lk.prototype.vo,1013:lk.prototype.uo,1015:lk.prototype.to};za(function(){for(var a=A(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new lk(d);Ma(d,c)}}); +function Y(a){w.call(this,"HDC",a,Y);this.dmaRead=this.gi;this.dmaWrite=this.hi;this.dmaWriteBuffer=this.rm;this.dmaWriteFormat=this.sm;this.Ph=[];if(a.drives)try{this.Ph=eval("("+a.drives+")")}catch(b){v("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.Xf=(this.Ee="at"==a.type)?1:0;this.Dm=this.Ee?2:3}x(w,Y); +var wk=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];k=Y.prototype;k.wb=function(){return!1};k.pc=function(a,b,c,d){this.na=b;this.S=c;this.Z=d;this.Da=a;this.ka=B(a,"ChipSet");gb(b,this,this.Ee?xk:yk);kb(b,this,this.Ee?zk:Ak);Ac(c,19,this,this.Dn);Ac(c,64,this,this.Ci);this.reset();this.Gf()||this.Sa()}; +k.bc=function(a,b){if(!b)if(!a||!this.restore)this.Ed(),this.Da.ti&&this.Gf(!0);else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};k.ef=function(){return this.Da?this.Da.ef():""};k.ee=function(){return this.Da?this.Da.ee():""};k.reset=function(){this.Ed(null,!0)};k.save=function(){var a=new H(this);a.set(0,this.Hj());return a.data()};k.restore=function(a){return this.Ed(a[0])}; +k.Ed=function(a,b){var c=0,d=!0;if(this.Ee)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.le=a[c++],this.Wl=a[c++],this.Fh=a[c++],this.Gh=a[c++],this.Eh=a[c++],this.Dh=a[c++],this.qg=a[c++],this.za=a[c++],this.Ej=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.pf=a[c++];this.za=a[c++];this.cc=a[c++];this.mb=a[c++];this.Ya=a[c++];this.Vl=a[c++];this.Ul=a[c++];this.Tl=a[c++];var e=a[c++];void 0!==e?this.ff=e:void 0===this.ff&&(this.ff=-1)}void 0===this.ya&&(this.ya=Array(this.Ph.length));c=a[c];void 0=== +c&&(c=[]);for(e=0;e<this.ya.length;e++){void 0===this.ya[e]&&(this.ya[e]={});var f=this.ya[e];this.Ai(e,f,this.Ph[e],c[e],b)||(d=!1);null!=this.pf&&1>=e&&(this.pf|=(f.type&3)<<(1-e<<1))}return d}; +k.Hj=function(){var a=0,b=[];this.Ee?(b[a++]=this.le,b[a++]=this.Wl,b[a++]=this.Fh,b[a++]=this.Gh,b[a++]=this.Eh,b[a++]=this.Dh,b[a++]=this.qg,b[a++]=this.za,b[a++]=this.Ej):(b[a++]=this.pf,b[a++]=this.za,b[a++]=this.cc,b[a++]=this.mb,b[a++]=this.Ya,b[a++]=this.Vl,b[a++]=this.Ul,b[a++]=this.Tl,b[a++]=this.ff);b[a]=this.Jj();return b}; +k.Ai=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Ab=a;b.errorCode=d[f++];b.bm=d[f++];b.cf=d[f++];b.Te=d[f++];b.Ue=d[f++];b.Ma=d[f++];b.qc=d[f++];b.Qd=d[f++];b.Qa=d[f++];b.Yd=d[f++];b.Wa=d[f++];b.Tg=this.Ee?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.ee()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===wk[this.Xf][b.type])b.type=this.Dm;c=wk[this.Xf][b.type]; +b.$c=c[2]||17;b.Tb=c[3]||512;if(e&&this.ka&&(e=this.ka,c=b.type,e.pa)){var h=e.pa[18],h=a?h&240|c:h&15|c<<4;e.pa&&(e.pa[18]=h,Vh(e))}void 0===b.va&&(b.va=null,this.Ha("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Bk(this,b);b.Va=d[f++];b.Ra=null;b.va&&(a=d[f],void 0!==a&&0>b.va.restore(a)&&(g=!1),g&&void 0!==b.Va&&(b.Ra=b.va.seek(b.Qd,b.Ma,b.Qa+b.Tg)));return g};k.Jj=function(){for(var a=0,b=[],c=0;c<this.ya.length;c++)b[a++]=this.Ij(this.ya[c]);return b}; +k.Ij=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.bm;c[b++]=a.cf;c[b++]=a.Te;c[b++]=a.Ue;c[b++]=a.Ma;c[b++]=a.qc;c[b++]=a.Qd;c[b++]=a.Qa;c[b++]=a.Yd;c[b++]=a.Wa;c[b++]=a.Va;c[b]=a.va?a.va.save():null;return c};k.lk=function(a){var b;a=this.ya[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b}; +function Bk(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.Te[2])?e=b.Te[0]<<8|b.Te[1]:c=b.type);null==c||d||(d=wk[a.Xf][c][1],e=wk[a.Xf][c][0]);d&&((c=wk[a.Xf][b.type])&&e!=c[0]&&d!=c[1]&&a.Ha("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Ac=e,b.qc=d,null==b.va&&(b.va=new bk(a,b,b.mode)))}} +k.$l=function(a,b,c){if(a.va){var d=a.va.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.Qd=Math.floor(b/g),b%=g,a.Ma=Math.floor(b/f),a.Qa=b%f,a.Wa=c*d[3],a.errorCode=0,!0}}return!1}; +k.Gf=function(a){a||(this.ye=0);for(var b=0;b<this.ya.length;b++){var c=this.ya[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.ya[b];e.Kc?(this.Ha("Drive "+b+" busy"),d=!0):(e.Kc=!0,e.Fe=!0,this.ye++,this.Fa("loading "+d),(e.va||new bk(this,e,e.mode)).load(d,c,this.Kn),d=!1);!d&&a&&this.Sa(!1)}else a&&void 0!==c.type&&(c.va=null,Bk(this,c,c.type))}return!!this.ye}; +k.Kn=function(a,b,c){a.Kc=!1;(a.va=b)&&this.Ha('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Ab),a.Fe);a.Fe&&(a.Fe=!1,--this.ye||this.Sa())};k.An=function(a,b){var c=0;this.mb<this.Ya&&(c=this.cc[this.mb]);this.ka&&ti(this.ka,5);this.za&=-33;this.ba(a,null,b,"DATA["+this.mb+"]",c);++this.mb>=this.Ya&&(this.mb=this.Ya=0,this.za&=-15);return c}; +k.Ro=function(a,b,c){this.ba(a,b,c,"DATA["+this.Ya+"]");this.Ya<this.cc.length&&(this.cc[this.Ya++]=b);a=12!=this.cc[0]?6:this.cc.length;6==this.Ya&&(this.za&=-2);this.Ya>=a&&(this.za|=2,this.za&=-2,Ck(this))};k.Bn=function(a,b){var c=this.za;this.ba(a,null,b,"STATUS",c);this.mb<this.Ya&&(this.za|=1);return c};k.Uo=function(a,b,c){this.ba(a,b,c,"RESET");this.Vl=b;this.ka&&ti(this.ka,5);this.Ed()};k.zn=function(a,b){this.ba(a,null,b,"CONFIG",this.pf);return this.pf}; +k.To=function(a,b,c){this.ba(a,b,c,"PULSE");this.Ul=b;this.za=13};k.So=function(a,b,c){this.ba(a,b,c,"PATTERN");this.Tl=b};k.zj=function(a,b,c){this.ba(a,b,c,"NOISE")};k.Lm=function(a,b){var c=-1,d=!1;if(this.Na&&(d=0<this.Na.Va,c=this.tc(this.Na),this.Na.Va==this.Na.Tb))if(this.Na.Wa-=this.Na.Tb,this.Na.Wa>=this.Na.Tb){var e=this;this.tc(this.Na,function(a){0<=a?e.ka&&Q(e.ka,14):(e.za=1,e.le=16)},!1)}else this.za=80;d||this.ba(a,null,b,"DATA",c);return c}; +k.io=function(a,b,c){this.Na&&0!=this.Na.Va||this.ba(a,b,c,"DATA");this.Na&&this.Na.Wa>=this.Na.Tb&&(0>this.Cc(this.Na,b)?(this.za=1,this.le=16):this.Na.Va==this.Na.Tb&&(this.Na.Wa-=this.Na.Tb,this.ka&&Q(this.ka,14),this.Na.Wa>=this.Na.Tb||(this.za=80)))};k.Nm=function(a,b){var c=this.le;this.ba(a,null,b,"ERROR",c);return c};k.mo=function(a,b,c){this.ba(a,b,c,"WPREC");this.Wl=b};k.Om=function(a,b){var c=this.Fh;this.ba(a,null,b,"SECCNT",c);return c}; +k.ko=function(a,b,c){this.ba(a,b,c,"SECCNT");this.Fh=b};k.Pm=function(a,b){var c=this.Gh;this.ba(a,null,b,"SECNUM",c);return c};k.lo=function(a,b,c){this.ba(a,b,c,"SECNUM");this.Gh=b};k.Km=function(a,b){var c=this.Eh;this.ba(a,null,b,"CYLLO",c);return c};k.ho=function(a,b,c){this.ba(a,b,c,"CYLLO");this.Eh=b};k.Jm=function(a,b){var c=this.Dh;this.ba(a,null,b,"CYLHI",c);return c};k.fo=function(a,b,c){this.ba(a,b,c,"CYLHI");this.Dh=b};k.Mm=function(a,b){var c=this.qg;this.ba(a,null,b,"DRVHD",c);return c}; +k.jo=function(a,b,c){this.ba(a,b,c,"DRVHD");this.qg=b};k.Qm=function(a,b){var c=this.za;this.ba(a,null,b,"STATUS",c);return c};k.eo=function(a,b,c){this.ba(a,b,c,"COMMAND");this.Ej=b;this.ka&&ti(this.ka,14);Dk(this)}; +function Dk(a){var b=!1,c=a.Ej,d=a.qg&16?1:0,e=a.qg&15,f=a.Eh|(a.Dh&3)<<8,g=a.Gh,h=a.Fh;a.Na=null;a.le=0;a.za=80;(d=a.ya[d])?(d.Qd=f,d.Ma=e,d.Qa=g,d.Wa=h*d.Tb,c=144<=c?c:c&240,d.Ra=null,d.errorCode=0,a.Na=d):c=-1;switch(c&240){case 32:a.tc(d,function(b){0<=b&&a.ka?(Q(a.ka,14),a.za=136):(a.za=1,a.le=16)},!1);break;case 48:a.ka?(Q(a.ka,14),a.za=136):(a.za=1,a.le=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.le=1;b=!0;break;case 145:d.qc=e+1,d.$c=h,b=!0}b&&a.ka&&Q(a.ka,14)} +function Ck(a){a.mb=0;var b=a.Oa(),c=a.Oa(),d=c&32,e=d>>5,f=c&31,g=a.Oa(),h=a.Oa(),m=g<<2&768|h,n=g&63,q=a.Oa(),t=a.Oa(),s=a.ya[e];s&&(s.Qd=m,s.Ma=f,s.Qa=n,s.Wa=q*s.Tb);switch(b){case 3:a.Lb(s?s.errorCode:4);a.rb(c);a.rb(g);a.rb(h);a.rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Oa());)s&&c<s.Te.length&&(s.Te[c++]=b);s&&Bk(a,s);b=0;s||a.ff!=e||(a.ff=-1,b=2);a.Lb(b|d);b=-1;break;case 224:case 228:a.Lb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.bm=0),b){case 0:a.Lb(0|d);break;case 1:s.xp= +t;a.Lb(0|d);break;case 5:a.Lb(0|d);break;case 8:a.ii(s,function(b){a.Lb(b|d)});break;case 10:a.ji(s,function(b){a.Lb(b|d)});break;case 15:Ek(a,s,function(b){a.Lb(b|d)});break;default:a.Lb(2|d)}}k.Oa=function(){var a=-1;this.mb<this.Ya&&(a=this.cc[this.mb++]);return a};k.Lb=function(a){this.mb=this.Ya=0;void 0!==a&&this.rb(a);this.ka&&Q(this.ka,5);this.za|=32};k.rb=function(a){this.cc[this.Ya++]=a};k.gi=function(a,b,c){void 0===b||0>b?this.tc(a,c):c(-1,!1)}; +k.hi=function(a,b){return void 0!==b&&0<=b?this.Cc(a,b):-1};k.rm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Va<a.Ue.length?a.Ue[a.Va++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.sm=function(a,b){return void 0!==b&&0<=b?this.Lj(a,b):-1};k.ii=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.errorCode=0;mi(this.ka,3,this,"dmaRead",a);gi(this.ka,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)}; +k.ji=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.errorCode=0;mi(this.ka,3,this,"dmaWrite",a);gi(this.ka,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Ek(a,b,c){b.errorCode=4;b.Ue&&b.Ue.length==b.Wa||(b.Ue=Array(b.Wa));b.Va=0;a.ka?(b.errorCode=0,mi(a.ka,3,a,"dmaWriteBuffer",b),gi(a.ka,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)} +k.nk=function(a,b){a.errorCode=4;if(a.va&&(a.Ra=null,this.ka)){a.Be=0;a.xc=Array(4);a.Hf=!0;a.Nf=0;a.errorCode=0;mi(this.ka,3,this,"dmaWriteFormat",a);gi(this.ka,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Hf=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)}; +k.tc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ra&&(d=kk(a.Ra,a.Va),a.Va+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;a.va.seek(a.Qd,a.Ma,a.Qa+a.Tg,!1,function(c,d){var m=-1;(a.Ra=c)?(a.Va=0,f.Ef(a),m=kk(a.Ra,a.Va),a.Va+=e):a.errorCode=20;b(m,d)})}return d}; +k.Cc=function(a,b){if(a.errorCode)return-1;do{if(a.Ra&&a.va.write(a.Ra,a.Va++,b))break;a.va.seek(a.Qd,a.Ma,a.Qa+a.Tg,!0,function(b){a.Ra=b});if(!a.Ra){a.errorCode=20;b=-1;break}a.Va=0;this.Ef(a)}while(1);return b};k.Ef=function(a){a.Qa++;var b=1-a.Tg;a.Qa>=a.$c+b&&(a.Qa=b,a.Ma++,a.Ma>=a.qc&&(a.Ma=0,a.Qd++))}; +k.Lj=function(a,b){if(a.errorCode)return-1;a.xc[a.Be++]=b;if(a.Be==a.xc.length){a.Qd=a.xc[0];a.Ma=a.xc[1];a.Qa=a.xc[2];a.Wa=128<<a.xc[3];for(var c=a.Be=0;c<a.Wa;c++)if(0>this.Cc(a,a.$j))return-1;a.Nf++}a.Nf>=a.Yd&&(b=-1);return b}; +k.Dn=function(a){var b=this.S.J&255;!(this.S.G>>8)&&128<b&&(this.ff=b-128);this.Z&&L(this.Z,this.Z.Nh)&&128<=b&&(this.Z.message("HDC.intBIOSDisk(AX="+r(this.S.G)+",DL="+p(b)+") at "+ca(a-this.S.ra.La,this.S.ra.oa)),Bc(this.S,a,function(a,b){return function(e){b=E(a.S)-b;a.Fa("HDC.intBIOSDisk("+e+"): C="+(Pc(a.S)?1:0)+" (cycles="+b+")")}}(this,E(this.S))));return!0};k.Ci=function(){var a;(a=this.S.G>>8)||(a=!this.ka)||(a=!(this.ka.sb[0].wd&64));return a?!0:!1}; +k.Fa=function(a){this.Z&&L(this.Z,this.Z.Nh)&&this.Z.message(a)};k.ba=function(a,b,c,d,e){this.Z&&this.Z.ba(this,a,b,c,d,this.Z.Nh,e)}; +var yk={800:Y.prototype.An,801:Y.prototype.Bn,802:Y.prototype.zn},xk={496:Y.prototype.Lm,497:Y.prototype.Nm,498:Y.prototype.Om,499:Y.prototype.Pm,500:Y.prototype.Km,501:Y.prototype.Jm,502:Y.prototype.Mm,503:Y.prototype.Qm},Ak={800:Y.prototype.Ro,801:Y.prototype.Uo,802:Y.prototype.To,803:Y.prototype.So,807:Y.prototype.zj,811:Y.prototype.zj,815:Y.prototype.zj},zk={496:Y.prototype.io,497:Y.prototype.mo,498:Y.prototype.ko,499:Y.prototype.lo,500:Y.prototype.ho,501:Y.prototype.fo,502:Y.prototype.jo,503:Y.prototype.eo}; +za(function(){for(var a=A(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Y(d);Ma(d,c)}}); +function Fk(a){w.call(this,"Debugger",a,Fk);this.Vg=this.Zc=-1;this.Dc=[0,0];this.Uj=[0,0];this.Bh=null;this.$e=!1;this.pe=[0,0];this.wc=[];Gk(this);Hk(this);this.gb={Qj:{Ua:1,Xa:"mem"},Rj:{Ua:2,Xa:"port"},Fb:{Ua:4,Xa:"dma"},Qe:{Ua:8,Xa:"pic"},Re:{Ua:16,Xa:"timer"},Pj:{Ua:32,Xa:"keyboard"},Dg:{Ua:64,Xa:"video"},Bg:{Ua:128,Xa:"fdc"},Nh:{Ua:256,Xa:"hdc"},im:{Ua:512,Xa:"disk"},Sj:{Ua:1024,Xa:"serial"},Cg:{Ua:2048,Xa:"speaker"},Ta:{Ua:4096,Xa:"chipset"},mm:{Ua:8192,Xa:"state"},lm:{Ua:16384,Xa:"mouse"}, +hm:{Ua:32768,Xa:"computer"},jm:{Ua:65536,Xa:"dos"},sp:{Ua:131072,Xa:"log"},km:{Ua:262144,Xa:"halt"}};Jh(this,this,a.messages);this.Gj=a.commands}x(w,Fk); +var Ik={"?":"help","a [#]":"assemble","b [#]":"breakpoint",c:"clear window","d [#]":"dump memory","e [#]":"edit memory",f:"frequencies","g [#]":"go [to #]","h [#]":"halt/history","i [#]":"input port #",l:"load sector(s)",m:"messages","o [#]":"output port #",p:"step over",r:"dump/edit registers","t [#]":"step instruction(s)","u [#]":"unassemble",x:"execution options"},Jk="DB AAA AAD AAM AAS ADC ADD AND ARPL AS: BOUND BSF BSR BT BTC BTR BTS CALL CBW CLC CLD CLI CLTS CMC CMP CMPSB CMPSW CS: CWD DAA DAS DEC DIV DS: ENTER ES: ESC FADD FBLD FBSTP FCOM FCOMP FDIV FDIVR FIADD FICOM FICOMP FIDIV FIDIVR FILD FIMUL FIST FISTP FISUB FISUBR FLD FLDCW FLDENV FMUL FNSAVE FNSTCW FNSTENV FNSTSW FRSTOR FS: FST FSTP FSUB FSUBR GBP GS: HLT IDIV IMUL IN INC INS INT INT3 INTO IRET JBE JC JCXZ JG JGE JL JLE JMP JNBE JNC JNO JNP JNS JNZ JO JP JS JZ LAHF LAR LDS LEA LEAVE LES LFS LGDT LGS LIDT LLDT LMSW LOCK LODSB LODSW LOOP LOOPNZ LOOPZ LSL LSS LTR MOV MOVSB MOVSW MOVSX MOVZX MUL NEG NOP NOT OR OS: OUT OUTS POP POPA POPF PUSH PUSHA PUSHF RCL RCR REPNZ REPZ RET RETF ROL ROR SAHF SAR SBB SCASB SCASW SETBE SETC SETG SETGE SETL SETLE SETNBE SETNC SETNO SETNP SETNS SETNZ SETO SETP SETS SETZ SGDT SHL SHLD SHR SHRD SIDT SLDT SMSW SS: STC STD STI STOSB STOSW STR SUB TEST VERR VERW WAIT XCHG XLAT XOR".split(" "), +Kk="AL CL DL BL AH CH DH BH AX CX DX BX SP BP SI DI ES CS SS DS IP".split(" "),Lk="BX+SI BX+DI BP+SI BP+DI SI DI BP BX".split(" "),Z=[0,0],Mk=[204,12291],Nk=[[6,12417,4257],[6,12420,4260],[6,12449,4225],[6,12452,4228],[6,12385,4097],[6,14435,4100],[136,4211],[133,8307],[129,12417,4257],[129,12420,4260],[129,12449,4225],[129,12452,4228],[129,12385,4097],[129,14435,4100],[136,4467],[133,8563],[5,12417,4257],[5,12420,4260],[5,12449,4225],[5,12452,4228],[5,12385,4097],[5,14435,4100],[136,4723],[133,8819], [149,12417,4257],[149,12420,4260],[149,12449,4225],[149,12452,4228],[149,12385,4097],[149,14435,4100],[136,4979],[133,9075],[7,12417,4257],[7,12420,4260],[7,12449,4225],[7,12452,4228],[7,12385,4097],[7,14435,4100],[35,15],[29],[183,12417,4257],[183,12420,4260],[183,12449,4225],[183,12452,4228],[183,12385,4097],[183,14435,4100],[27,15],[30],[190,12417,4257],[190,12420,4260],[190,12449,4225],[190,12452,4228],[190,12385,4097],[190,14435,4100],[176,15],[1],[24,4225,4257],[24,4228,4260],[24,4257,4225], [24,4260,4228],[24,4193,4097],[24,6243,4100],[33,15],[4],[75,14435],[75,14691],[75,14947],[75,15203],[75,15459],[75,15715],[75,15971],[75,16227],[31,14435],[31,14691],[31,14947],[31,15203],[31,15459],[31,15715],[31,15971],[31,16227],[136,6243],[136,6499],[136,6755],[136,7011],[136,7267],[136,7523],[136,7779],[136,8035],[133,10339],[133,10595],[133,10851],[133,11107],[133,11363],[133,11619],[133,11875],[133,12131],[137,32768],[134,32768],[10,37028,4247],[8,8323,4259],[64,49152],[70,49152],[130,49152], [9,49152],[136,36868],[73,45219,4234],[136,36866],[73,45219,4233],[76,41041,6755],[76,41044,6755],[132,39523,4161],[132,39523,4164],[95,4145],[91,4145],[82,4145],[90,4145],[98,4145],[94,4145],[81,4145],[89,4145],[97,4145],[93,4145],[96,4145],[92,4145],[86,4145],[85,4145],[87,4145],[84,4145],[191,12417,4097],[192,12420,4100],[191,12417,4097],[193,12420,4097],[184,4225,4257],[184,4228,4260],[188,12449,12417],[188,12452,12420],[120,8321,4257],[120,8324,4260],[120,8353,4225],[120,8356,4228],[120,8323, 4275],[102,8356,148],[120,8371,4227],[133,8324],[127],[188,14435,14691],[188,14435,14947],[188,14435,15203],[188,14435,15459],[188,14435,15715],[188,14435,15971],[188,14435,16227],[18],[28],[17,4102],[187],[138],[135],[147],[99],[120,8289,4129],[120,10339,4132],[120,8225,4193],[120,8228,6243],[121,8273,4161],[122,8276,4164],[25,4177,4161],[26,4180,4164],[184,4193,4097],[184,6243,4100],[180,8273,4193],[181,8276,6243],[112,8289,4161],[113,10339,4164],[150,4193,4177],[151,6243,4180],[120,8289,4097], [120,8545,4097],[120,8801,4097],[120,9057,4097],[120,9313,4097],[120,9569,4097],[120,9825,4097],[120,10081,4097],[120,10339,4100],[120,10595,4100],[120,10851,4100],[120,11107,4100],[120,11363,4100],[120,11619,4100],[120,11875,4100],[120,12131,4100],[194,28801,4097],[195,28804,4097],[143,4099],[143],[104,8356,4246],[101,8356,4246],[120,8321,4097],[120,8324,4100],[34,36867,4097],[103,32768],[144,4099],[144],[78],[77,4097],[79],[80],[196,12417,4113],[197,12420,4113],[198,12417,4449],[199,12420,4449], -[3,1],[2,1],[69],[189],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[115,4145],[116,4145],[114,4145],[83,4145],[74,8289,4097],[74,10339,4097],[131,4097,4193],[131,4097,6243],[17,4148],[88,4148],[88,4102],[88,4145],[74,8289,6755],[74,10339,6755],[131,6755,4193],[131,6755,6243],[111,15],[0],[141,15],[142,15],[71],[23],[200,12417],[201,12420],[19],[177],[21],[179],[20],[178],[202,12417],[203,12420]],Sk={0:[205,12419],1:[206,12419],2:[100,37027,4243],3:[117,37027,4243]}, -Tk=[[[6,12417,4097],[129,12417,4097],[5,12417,4097],[149,12417,4097],[7,12417,4097],[183,12417,4097],[190,12417,4097],[24,4225,4097]],[[6,12420,4100],[129,12420,4100],[5,12420,4100],[149,12420,4100],[7,12420,4100],[183,12420,4100],[190,12420,4100],[24,4228,4100]],[[6,12420,4098],[129,12420,4098],[5,12420,4098],[149,12420,4098],[7,12420,4098],[183,12420,4098],[190,12420,4098],[24,4228,4098]],[[145,45185,4097],[146,45185,4097],[139,45185,4097],[140,45185,4097],[169,45185,4097],[171,45185,4097],Z,[148, +[3,1],[2,1],[69],[189],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[115,4145],[116,4145],[114,4145],[83,4145],[74,8289,4097],[74,10339,4097],[131,4097,4193],[131,4097,6243],[17,4148],[88,4148],[88,4102],[88,4145],[74,8289,6755],[74,10339,6755],[131,6755,4193],[131,6755,6243],[111,15],[0],[141,15],[142,15],[71],[23],[200,12417],[201,12420],[19],[177],[21],[179],[20],[178],[202,12417],[203,12420]],Ok={0:[205,12419],1:[206,12419],2:[100,37027,4243],3:[117,37027,4243]}, +Pk=[[[6,12417,4097],[129,12417,4097],[5,12417,4097],[149,12417,4097],[7,12417,4097],[183,12417,4097],[190,12417,4097],[24,4225,4097]],[[6,12420,4100],[129,12420,4100],[5,12420,4100],[149,12420,4100],[7,12420,4100],[183,12420,4100],[190,12420,4100],[24,4228,4100]],[[6,12420,4098],[129,12420,4098],[5,12420,4098],[149,12420,4098],[7,12420,4098],[183,12420,4098],[190,12420,4098],[24,4228,4098]],[[145,45185,4097],[146,45185,4097],[139,45185,4097],[140,45185,4097],[169,45185,4097],[171,45185,4097],Z,[148, 45185,4097]],[[145,45188,4097],[146,45188,4097],[139,45188,4097],[140,45188,4097],[169,45188,4097],[171,45188,4097],Z,[148,45188,4097]],[[145,12417,4113],[146,12417,4113],[139,12417,4113],[140,12417,4113],[169,12417,4113],[171,12417,4113],Z,[148,12417,4113]],[[145,12420,4113],[146,12420,4113],[139,12420,4113],[140,12420,4113],[169,12420,4113],[171,12420,4113],Z,[148,12420,4113]],[[145,12417,4449],[146,12417,4449],[139,12417,4449],[140,12417,4449],[169,12417,4449],[171,12417,4449],Z,[148,12417,4449]], [[145,12420,4449],[146,12420,4449],[139,12420,4449],[140,12420,4449],[169,12420,4449],[171,12420,4449],Z,[148,12420,4449]],[[184,4225,4097],Z,[128,12417],[126,12417],[125,4225],[73,12417],[32,4225],[72,12417]],[[184,4228,4100],Z,[128,12420],[126,12420],[125,4228],[73,12420],[32,4228],[72,12420]],[[75,12417],[31,12417],Z,Z,Z,Z,Z,Z],[[75,12420],[31,12420],[17,4228],[17,4230],[88,4228],[88,4230],[136,4228],Z],[],[[174,8323],[182,8323],[109,4227],[119,4227],[185,4227],[186,4227],Z,Z],[[168,8323],[173, -8323],[106,4227],[108,4227],[175,8323],Z,[110,4227],Z]],Uk={0:"terminate program",1:"read character (AL>) from STDIN with echo",2:"write character (<DL) to STDOUT",3:"read character (AL>) from STDAUX",4:"write character (<DL) to STDAUX",5:"write character (<DL) to STDPRN",6:"direct console output (or input if DL=FF)",7:"direct console input without echo",8:"read character (AL>) from STDIN without echo",9:"write $-terminated string (<DS:DX) to STDOUT",10:"buffered input (DS:DX>)",11:"get STDIN status", +8323],[106,4227],[108,4227],[175,8323],Z,[110,4227],Z]],Qk={0:"terminate program",1:"read character (AL>) from STDIN with echo",2:"write character (<DL) to STDOUT",3:"read character (AL>) from STDAUX",4:"write character (<DL) to STDAUX",5:"write character (<DL) to STDPRN",6:"direct console output (or input if DL=FF)",7:"direct console input without echo",8:"read character (AL>) from STDIN without echo",9:"write $-terminated string (<DS:DX) to STDOUT",10:"buffered input (DS:DX>)",11:"get STDIN status", 12:"flush buffer and read STDIN",13:"disk reset",14:"select default drive (<DL)",15:"open file using FCB (<DS:DX)",16:"close file using FCB (<DS:DX)",17:"find first matching file using FCB (<DS:DX)",18:"find next matching file using FCB (<DS:DX)",19:"delete file using FCB (<DS:DX)",20:"sequential read from file using FCB (<DS:DX)",21:"sequential write to file using FCB (<DS:DX)",22:"create or truncate file using FCB (<DS:DX)",23:"rename file using FCB (<DS:DX)",25:"get current default drive (AL>)", 26:"set disk transfer area address (DTA<DS:DX)",27:"get allocation information for default drive",28:"get allocation information for specific drive (<DL)",31:"get drive parameter block for default drive",33:"read random record from file using FCB (<DS:DX)",34:"write random record to file using FCB (<DS:DX)",35:"get file size using FCB (<DS:DX)",36:"set random record number for FCB (<DS:DX)",37:"set address (<DS:DX) of interrupt vector (<AL)",38:"create new program segment prefix (PSP) at segment (<DX)", 39:"random block read from file using FCB (<DS:DX)",40:"random block write to file using FCB (<DS:DX)",41:"parse filename (<DS:SI) into FCB (<ES:DI) using (<AL)",42:"get system date (year>CX, mon>DH, day>DL)",43:"set system date (year<CX, mon<DH, day<DL)",44:"get system time (hour>CH, min>CL, sec>DH, hundredths>DL)",45:"set system time (hour<CH, min<CL, sec<DH, hundredths<DL)",46:"set verify flag (<AL)",47:"get disk transfer area address (DTA>ES:BX)",48:"get DOS version (major>AL, minor>AH)",49:"terminate and stay resident", 50:"get drive parameter block (DPB>DS:BX) for drive (<DL)",51:"extended break check",52:"get address (ES:BX>) of InDOS flag",53:"get address (ES:BX>) of interrupt vector (<AL)",54:"get free disk space of drive (<DL)",55:"get/set (AL=0/1) switch character (DL)",56:"get country-specific information",57:"create subdirectory (<DS:DX)",58:"remove subdirectory (<DS:DX)",59:"set current directory (<DS:DX)",60:"create or truncate file (<DS:DX) with attributes (<CX)",61:"open existing file (<DS:DX) with mode (<AL)", 62:"close file (<BX)",63:"read (<CX) bytes from file (<BX) into buffer (<DS:DX)",64:"write (<CX) bytes to file (<BX) from buffer (<DS:DX)",65:"delete file (<DS:DX)",66:"set position (<CX:DX) of file (<BX) relative to (<AL)",67:"get/set (AL=0/1) attributes (CX) of file (<DS:DX)",68:"get device information (IOCTL)",69:"duplicate file handle (<BX)",70:"force file handle (<CX) to duplicate file handle (<BX)",71:"get current directory (DS:SI>) for drive (<DL)",72:"allocate memory segment with (<BX) paragraphs", 73:"free memory segment (<ES)",74:"resize memory segment (<ES) to (<BX) paragraphs",75:"load program (<DS:DX) using parameter block (<ES:BX)",76:"terminate with return code (<AL)",77:"get return code (AL>)",78:"find first matching file (<DS:DX) with attributes (<CX)",79:"find next matching file",80:"set current PSP (<BX)",81:"get current PSP (BX>)",82:"get system variables (ES:BX>)",83:"translate BPB (<DS:SI) to DPB (ES:BP>)",84:"get verify flag (AL>)",85:"create child PSP at segment (<DX)",86:"rename file (<DS:DX) to name (<ES:DI)", -87:"get/set (AL=0/1) file date (DX>) and time (CX>)",88:"get/set (AL=0/1) memory allocation strategy",89:"get extended error information",90:"create temporary file (<DS:DX) with attributes (<CX)",91:"create file (<DS:DX) with attributes (<CX)",92:"lock/unlock (AL=0/1) file (<BX) region (<CX:DX) length (<SI:DI)"};k=Jk.prototype; -k.nc=function(a,b,c){this.ma=b;this.S=c;this.Ca=a;this.vm=C(a,"FDC");this.vk=C(a,"HDC");this.Bf=Rk;80186<=this.S.Fa&&(this.Bf=Rk.slice(),this.Bf[15]=Z,80286<=this.S.Fa&&(this.Bf[15]=Qk));Dc(this.S,33,this,this.Cn);this.Oa();if(this.Bj){a=Vk(this,this.Bj);delete this.Bj;for(var d in a)Wk(this,a[d])}}; -k.tb=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Nf=this.sa[c]=d,d.onkeypress=function(a){if(13==a.keyCode){var b=d.value;d.value="";var c=Vk(e,b,!0);for(b in c)Wk(e,c[b]);a.preventDefault&&a.preventDefault()}},!0;case "debugEnter":return this.sa[c]=d,wa(d,function(){if(e.Nf){var a=e.Nf.value;e.Nf.value="";var b=Vk(e,a,!0);for(a in b)Wk(e,b[a]);return!0}return!1}),!0;case "step":return this.sa[c]=d,wa(d,function(a){var b=!1;Sa(e,!0)||(Ra(e,!0),b=e.sf(a?1:0),Ra(e,!1));return b}), -!0}return!1};k.Kd=function(){this.Nf&&this.Nf.focus()};function Mh(a,b,c){var d=0;c=Vk(a,c);for(var e in a.cb)b[e]=a.cb[e].Ra,0<=c.indexOf(a.cb[e].Ua)&&(d|=a.cb[e].Ra,z(a,a.cb[e].Ua+" messages enabled"));void 0===a.ec&&(a.ec=0);a.ec|=d}function Nh(a,b,c){for(var d in a.cb)if(b==a.cb[d].Ra){a.cb[d].sk=c;break}}function L(a,b){return(a.ec&b)===b} -k.ba=function(a,b,c,d,e,f,g){f||(f=0);f|=this.cb.Mj.Ra;if(null==d||(this.ec&f)==f)f=null,null!=d&&(f=this.S.qa.na,d-=this.S.qa.Ja),this.message(a.gh+"."+(null!=c?"outPort":"inPort")+"(0x"+q(b)+","+(e?e:"unknown")+(null!=c?",0x"+p(c):"")+")"+(null!=g?": 0x"+p(g):"")+(null!=d?" at "+ca(d,f):""))};k.message=function(a){z(this,a);this.S&&(this.ec&this.cb.gm.Ra&&this.S.xb(),a=this.S,a.lf=0,a.Wc-=a.A,a.A=0,a.Ug())}; -k.Cn=function(a){var b=this.S.G>>8;if(L(this,this.fm)){var c=Uk[b],c=c?": "+c.replace(/\((<|>)/g,"("):"";this.message("INT 0x21: AH="+p(b)+" at "+ca(a-this.S.qa.Ja,this.S.qa.na)+c)}return!0};k.yn=function(){z(this,"Type ? for list of debugger commands")};function Lk(a){var b;if(1<a.Eb.length){if(!a.Sd||!a.Sd.length){a.Sd=Array(1E4);for(b=0;b<a.Sd.length;b++)a.Sd[b]=[0,null,0];a.ef=0}if(!a.ad||!a.ad.length)for(a.ad=Array(256),b=0;b<a.ad.length;b++)a.ad[b]=[b,0]}else a.ef=0,a.Sd=[],a.ad=[]} -k.Ke=function(a){if(!Xk(this))return!1;this.S.Ke(a);return!0};k.sf=function(a,b,c){if(!Xk(this))return!1;this.Xc=0;do{a||1<this.Eb.length&&kd(this,this.S.Ba,!0);try{var d=this.S.sf(a);0<d&&(this.Xc+=d,Kb(this.S,d,!0),Gb(this.S,d),this.Qg++)}catch(e){this.Xc=0,Ua(this.S,e.message||e)}}while(this.S.$&240);!1!==c&&Fb(this.S);Eb(this,b,!1);return 0<this.Xc};k.xb=function(){this.S.xb()}; -function Eb(a,b,c){void 0===b&&(b=!0);void 0===c&&(c=!0);a.Bc=[a.S.ra,a.S.qa.na,void 0];b&&1!=a.lc?Yk(a,null,c):Zk(a)}function Xk(a){a.S&&Ta(a.S)&&a.S.Lb&&!Sa(a.S)?(a=a.S,a.gd?(z(a,a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}k.$b=function(a,b){return!b&&(this.reset(!0),z(this,a?"resuming":"powering up"),a&&this.restore&&!this.restore(a))?!1:!0};k.Wb=function(a,b){b&&z(this,a?"suspending":"shutting down");return a&&this.save?this.save():!0}; -k.reset=function(a){Lk(this);this.Xc=this.Qg=0;this.Bc=[this.S.ra,this.S.qa.na,void 0];void 0===this.Mb||a||z(this,"reset");this.Mb=!1;$k(this);a||Eb(this)};k.save=function(){var a=new H(this);a.set(0,this.Bc);a.set(1,this.ne);a.set(2,[this.wh,this.Ye,this.ec]);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.Bc=a[b++],this.ne=a[b++],this.wh=a[b][0],this.Ye=a[b][1],this.ec||(this.ec=a[b][2]));return!0}; -k.start=function(a,b){this.lc||z(this,"running");this.Mb=!0;this.Kn=a;this.On=b};k.stop=function(a,b){if(this.Mb){this.Mb=!1;this.Xc=b-this.On;if(!this.lc){var c="stopped";if(this.Xc){var d=a-this.Kn,e=0<d?Math.round(1E3*this.Xc/d):0,c=c+" (";1<this.Eb.length&&(c+=this.Qg+" ops, ");c+=this.Xc+" cycles, "+d+" ms, "+e+" hz)"}z(this,c)}Eb(this,!0,2!=this.lc);this.Kd();$k(this,this.S.Ba)}}; -function kd(a,b,c){if(!c&&al(a,b,a.Eb))return!0;a.Qg++;c=db(a.ma,b);a.ad[c][1]++;c=a.Sd[a.ef];c[0]=a.S.ra;c[1]=a.S.qa.na;c[2]=b;++a.ef==a.Sd.length&&(a.ef=0);return!1}function rb(a,b){return al(a,b,a.Qd)?(a.S.xb(!0),!0):!1}function sb(a,b){return al(a,b,a.Nc)?(a.S.xb(!0),!0):!1}function lb(a,b,c){z(a,"break on input from port "+q(b)+": "+p(c));a.S.xb(!0)}function ob(a,b,c){z(a,"break on output to port "+q(b)+": "+p(c));a.S.xb(!0)} -function bl(a,b){if(b==a.S.qa.na)return a.S.qa;if(b==a.S.Ob.na)return a.S.Ob;if(b==a.S.$a.na)return a.S.$a;if(b==a.S.Cb.na)return a.S.Cb;var c=new Pb(a.S);c.load(b,!0);return c}function cl(a,b,c,d){var e=b[2];null==e&&(a=bl(a,b[1]),e=c?a.Yb(b[0],d||0,!0):a.Sc(b[0],d||0,!0));16711680==(e&16711680)&&(e&=1048575);return e}k.rb=function(a,b){var c=255,d=cl(this,a,!1,0);0<=d&&(c=db(this.ma,d),void 0!==b&&dl(a,b));return c}; -k.Ga=function(a,b){var c=65535,d=cl(this,a,!1,1);0<=d&&(c=eb(this.ma,d),void 0!==b&&dl(a,b));return c};k.Zc=function(a,b,c){var d=cl(this,a,!0,0);0<=d&&(gb(this.ma,d,b),void 0!==c&&dl(a,c),Fb(this.S))};k.Ld=function(a,b,c){var d=cl(this,a,!0,1);0<=d&&(hb(this.ma,d,b),void 0!==c&&dl(a,c),Fb(this.S))};function $(a){return null==a[1]?"%"+l(a[2]):ca(a[0],a[1])}function dl(a,b){b=void 0===b?1:b;null!=a[2]&&(a[2]+=b);null!=a[1]&&(a[0]+=b,a[0]!=(a[0]&65535)&&(a[0]&=65535,a[2]=null))} -function Kk(a){var b;a.Eb=["exec"];if(void 0!==a.Qd)for(b=1;b<a.Qd.length;b++){var c=a.ma,d=cl(a,a.Qd[b]);xb(c.za[d>>c.mb],!1)}a.Qd=["read"];if(void 0!==a.Nc)for(b=1;b<a.Nc.length;b++)c=a.ma,d=cl(a,a.Nc[b]),xb(c.za[d>>c.mb],!0);a.Nc=["write"]}k.Td=function(a,b,c){if(!el(this,a,b)){b[2]=cl(this,b);b[3]=c;a.push(b);if(a!=this.Eb){var d=this.ma,e=cl(this,b);d.za[e>>d.mb].Td(e&d.bb,a==this.Nc)}c||z(this,"breakpoint enabled: "+$(b)+" ("+a[0]+")");Lk(this);return!0}return!1}; -function el(a,b,c,d){var e=!1;c=cl(a,c);for(var f=1;f<b.length;f++){var g=b[f];if(c==cl(a,g)){e=!0;if(d){b.splice(f,1);b!=a.Eb&&(d=a.ma,xb(d.za[c>>d.mb],b==a.Nc));g[3]||z(a,"breakpoint cleared: "+$(g)+" ("+b[0]+")");Lk(a);break}z(a,"breakpoint exists: "+$(g)+" ("+b[0]+")");break}}return e}function fl(a,b){for(var c=1;c<b.length;c++)z(a,"breakpoint enabled: "+$(b[c])+" ("+b[0]+")");return b.length-1} -function yb(a,b,c,d){if(void 0===d)yb(a,b,c,a.Qd),yb(a,b,c,a.Nc);else for(var e=1;e<d.length;e++){var f=cl(a,d[e]);if(f>=b&&f<b+c){var g=a.ma;g.za[f>>g.mb].Td(f&g.bb,d==a.Nc)}}}function $k(a,b){if(void 0!==b)al(a,b,a.Eb,!0),a.lc=0;else for(var c=1;c<a.Eb.length;c++){var d=a.Eb[c];if(d[3]){if(!el(a,a.Eb,d,!0))break;c=0}}} -function al(a,b,c,d){var e=!1;16711680==(b&16711680)&&(b&=1048575);for(var f=1;f<c.length;f++){var g=c[f];if(b==cl(a,g)){g[3]?el(a,c,g,!0):d||z(a,"breakpoint hit: "+$(g)+" ("+c[0]+")");e=!0;break}}return e} -function gl(a,b,c,d){var e=[b[0],b[1],b[2]],f=a.rb(b,1),g=a.Bf[f],h=g[0],m=-1;204==h&&(h=a.rb(b,1),g=Sk[h]||Z,f|=h<<8,h=g[0]);h>=Nk.length&&(m=a.rb(b,1),g=Tk[h-Nk.length][m>>3&7]);var n=2,h="";if(164<=f&&167>=f||170<=f&&175>=f)n=0;for(f=1;f<=n;f++){var r="",u=g[f];if(void 0!==u){var t=u&15;if(0!=t&&15!=t){var v=u&240;if(128<=v)if(0>m&&(m=a.rb(b,1)),160<=v)r=m>>3&7,176==(u&240)?r+=16:3<=(u&15)&&(r+=8),r=Ok[r];else{if(128<=v){var r=a,A=u,t=b,D="",v=m>>6,D=m&7;3>v?(A=void 0,v||6!=D?(D=Pk[D],1==v?(A= -r.rb(t,1),A&128?(A=A<<24>>24,D+="-"+p(-A)):D+="+"+p(A)):2==v&&(A=r.Ga(t,2),D+="+"+q(A))):(A=r.Ga(t,2),D=q(A)),D="["+D+"]"):D=Ok[D+(1==(A&15)?0:8)];r=D}}else if(16==v)r="1";else if(0==v){r=a;v=u;t=b;A=" ";switch(v&15){case 1:v&12288&&(A=p(r.rb(t,1)));break;case 2:A=q(r.rb(t,1)<<24>>24);break;case 3:case 4:A=q(r.Ga(t,2));break;case 6:v=r.Ga(t,2);r=r.Ga(t,2);A=$([v,r,void 0]);break;default:A="imm("+q(v)+")"}r=A}else 32==v?r="["+q(a.Ga(b,2))+"]":48==v?(1==t?(r=a.rb(b,1),r=r<<24>>24):r=a.Ga(b,2),r=b[0]+ -r&65535,r=hl(a,[r,b[1],void 0])[0]||q(r)):96==v?r=Ok[(u&3840)>>8]:112==v?r=Ok[((u&3840)>>8)+16]:64==v?r="DS:[SI]":80==v&&(r="ES:[DI]");r.length||(r="type("+q(u)+")");0<h.length&&(h+=",");h+=r}}}m=$(e)+" ";n="";do n+=p(a.rb(e,1));while(e[0]!=b[0]);m+=(n+" ").substr(0,14);m+=(Nk[g[0]]+" ").substr(0,8);h&&(m+=" "+h);c&&(m=(m+" ").substr(0,50),m+=";",m=a.S.Ze?m+("cycles="+F(a.S).toString()+" cs="+l(a.S.Xf)):m+(c+(null!=d?"="+d.toString():"")));return m} -function il(a,b){var c;switch(b){case "V":c=Xc(a.S);break;case "D":c=a.S.wa&1024;break;case "I":c=a.S.wa&512;break;case "T":c=a.S.wa&256;break;case "S":c=Wc(a.S);break;case "Z":c=Vc(a.S);break;case "A":c=Uc(a.S);break;case "P":c=Tc(a.S);break;case "C":c=Sc(a.S);break;default:c=0}return" "+b+(c?"1":"0")}function ll(a,b){return a.qg+"="+q(a.na)+(b?"["+l(a.Ja,6)+","+q(a.Lc)+"]":"")}function ml(a,b,c,d){return a+"="+(null!=b?q(b):"")+"["+l(c,6)+","+q(d-c)+"]"} -function nl(a,b,c){var d=2==c?a.Pj:a.Bc;c=d[0];var e=d[1],d=d[2];if(void 0!==b){"%"==b.charAt(0)&&(b=b.substr(1),e=null,d=0);var f,g=b;f=null;if(g.match(/^[a-z_][a-z0-9_]*$/i)){f=[];for(var h=g.toUpperCase(),m=0;m<a.tc.length;m++){var g=a.tc[m][0],n=a.tc[m][2][h];if(void 0!==n){h=n.o;void 0!==h&&(m=n.s,void 0===m&&(m=g>>>4),f[0]=h,f[1]=m,void 0!==n.p&&(f[2]=n.p));break}}}if(f&&f.length)return f;f=b.indexOf(":");0>f?null!=e?c=ol(a,b):d=ol(a,b):(e=ol(a,b.substring(0,f)),c=ol(a,b.substring(f+1)),d=null)}return[c, +87:"get/set (AL=0/1) file date (DX>) and time (CX>)",88:"get/set (AL=0/1) memory allocation strategy",89:"get extended error information",90:"create temporary file (<DS:DX) with attributes (<CX)",91:"create file (<DS:DX) with attributes (<CX)",92:"lock/unlock (AL=0/1) file (<BX) region (<CX:DX) length (<SI:DI)"};k=Fk.prototype; +k.pc=function(a,b,c){this.na=b;this.S=c;this.Da=a;this.zm=B(a,"FDC");this.zk=B(a,"HDC");this.Cf=Nk;80186<=this.S.Ga&&(this.Cf=Nk.slice(),this.Cf[15]=Z,80286<=this.S.Ga&&(this.Cf[15]=Mk));Ac(this.S,33,this,this.Gn);this.Sa();if(this.Gj){a=Rk(this,this.Gj);delete this.Gj;for(var d in a)Sk(this,a[d])}}; +k.wb=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Pf=this.ta[c]=d,d.onkeypress=function(a){if(13==a.keyCode){var b=d.value;d.value="";var c=Rk(e,b,!0);for(b in c)Sk(e,c[b]);a.preventDefault&&a.preventDefault()}},!0;case "debugEnter":return this.ta[c]=d,va(d,function(){if(e.Pf){var a=e.Pf.value;e.Pf.value="";var b=Rk(e,a,!0);for(a in b)Sk(e,b[a]);return!0}return!1}),!0;case "step":return this.ta[c]=d,va(d,function(a){var b=!1;Oa(e,!0)||(Na(e,!0),b=e.uf(a?1:0),Na(e,!1));return b}), +!0}return!1};k.Md=function(){this.Pf&&this.Pf.focus()};function Jh(a,b,c){var d=0;c=Rk(a,c);for(var e in a.gb)b[e]=a.gb[e].Ua,0<=c.indexOf(a.gb[e].Xa)&&(d|=a.gb[e].Ua,a.ca(a.gb[e].Xa+" messages enabled"));void 0===a.gc&&(a.gc=0);a.gc|=d}function Kh(a,b,c){for(var d in a.gb)if(b==a.gb[d].Ua){a.gb[d].wk=c;break}}function L(a,b){return(a.gc&b)===b} +k.ba=function(a,b,c,d,e,f,g){f||(f=0);f|=this.gb.Rj.Ua;if(null==d||(this.gc&f)==f)f=null,null!=d&&(f=this.S.ra.oa,d-=this.S.ra.La),this.message(a.lh+"."+(null!=c?"outPort":"inPort")+"(0x"+r(b)+","+(e?e:"unknown")+(null!=c?",0x"+p(c):"")+")"+(null!=g?": 0x"+p(g):"")+(null!=d?" at "+ca(d,f):""))};k.message=function(a){this.ca(a);this.S&&(this.gc&this.gb.km.Ua&&this.S.zb(),a=this.S,a.nf=0,a.Yc-=a.A,a.A=0,a.Zg())}; +k.Gn=function(a){var b=this.S.G>>8;if(L(this,this.jm)){var c=Qk[b],c=c?": "+c.replace(/\((<|>)/g,"("):"";this.message("INT 0x21: AH="+p(b)+" at "+ca(a-this.S.ra.La,this.S.ra.oa)+c)}return!0};k.Cn=function(){this.ca("Type ? for list of debugger commands")};function Hk(a){var b;if(1<a.Gb.length){if(!a.Ud||!a.Ud.length){a.Ud=Array(1E4);for(b=0;b<a.Ud.length;b++)a.Ud[b]=[0,null,0];a.gf=0}if(!a.dd||!a.dd.length)for(a.dd=Array(256),b=0;b<a.dd.length;b++)a.dd[b]=[b,0]}else a.gf=0,a.Ud=[],a.dd=[]} +k.Me=function(a){if(!Tk(this))return!1;this.S.Me(a);return!0};k.uf=function(a,b,c){if(!Tk(this))return!1;this.Zc=0;do{a||1<this.Gb.length&&hd(this,this.S.Ca,!0);try{var d=this.S.uf(a);0<d&&(this.Zc+=d,Ib(this.S,d,!0),Eb(this.S,d),this.Vg++)}catch(e){this.Zc=0,Qa(this.S,e.message||e)}}while(this.S.$&240);!1!==c&&Db(this.S);Cb(this,b||!1,!1);return 0<this.Zc};k.zb=function(){this.S.zb()}; +function Cb(a,b,c){void 0===b&&(b=!0);void 0===c&&(c=!0);a.Dc=[a.S.sa,a.S.ra.oa,void 0];b&&1!=a.nc?Uk(a,null,c):Vk(a)}function Tk(a){a.S&&Pa(a.S)&&a.S.Nb&&!Oa(a.S)?(a=a.S,a.kd?(a.ca(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}k.bc=function(a,b){return!b&&(this.reset(!0),this.ca(a?"resuming":"powering up"),a&&this.restore&&!this.restore(a))?!1:!0};k.Yb=function(a,b){b&&this.ca(a?"suspending":"shutting down");return a&&this.save?this.save():!0}; +k.reset=function(a){Hk(this);this.Zc=this.Vg=0;this.Dc=[this.S.sa,this.S.ra.oa,void 0];void 0===this.Ob||a||this.ca("reset");this.Ob=!1;Wk(this);a||Cb(this)};k.save=function(){var a=new H(this);a.set(0,this.Dc);a.set(1,this.pe);a.set(2,[this.Bh,this.$e,this.gc]);return a.data()};k.restore=function(a){var b=0;void 0!==a[2]&&(this.Dc=a[b++],this.pe=a[b++],this.Bh=a[b][0],this.$e=a[b][1],this.gc||(this.gc=a[b][2]));return!0}; +k.start=function(a,b){this.nc||this.ca("running");this.Ob=!0;this.On=a;this.Sn=b};k.stop=function(a,b){if(this.Ob){this.Ob=!1;this.Zc=b-this.Sn;if(!this.nc){var c="stopped";if(this.Zc){var d=a-this.On,e=0<d?Math.round(1E3*this.Zc/d):0,c=c+" (";1<this.Gb.length&&(c+=this.Vg+" ops, ");c+=this.Zc+" cycles, "+d+" ms, "+e+" hz)"}this.ca(c)}Cb(this,!0,2!=this.nc);this.Md();Wk(this,this.S.Ca)}}; +function hd(a,b,c){if(!c&&Xk(a,b,a.Gb))return!0;a.Vg++;c=$a(a.na,b);a.dd[c][1]++;c=a.Ud[a.gf];c[0]=a.S.sa;c[1]=a.S.ra.oa;c[2]=b;++a.gf==a.Ud.length&&(a.gf=0);return!1}function pb(a,b){return Xk(a,b,a.Sd)?(a.S.zb(!0),!0):!1}function qb(a,b){return Xk(a,b,a.Pc)?(a.S.zb(!0),!0):!1}function ib(a,b,c){a.ca("break on input from port "+r(b)+": "+p(c));a.S.zb(!0)}function mb(a,b,c){a.ca("break on output to port "+r(b)+": "+p(c));a.S.zb(!0)} +function Yk(a,b){if(b==a.S.ra.oa)return a.S.ra;if(b==a.S.Qb.oa)return a.S.Qb;if(b==a.S.cb.oa)return a.S.cb;if(b==a.S.Eb.oa)return a.S.Eb;var c=new Nb(a.S);c.load(b,!0);return c}function Zk(a,b,c,d){var e=b[2];null==e&&(a=Yk(a,b[1]),e=c?a.$b(b[0],d||0,!0):a.Uc(b[0],d||0,!0));16711680==(e&16711680)&&(e&=1048575);return e}k.ub=function(a,b){var c=255,d=Zk(this,a,!1,0);0<=d&&(c=$a(this.na,d),void 0!==b&&$k(a,b));return c}; +k.Ia=function(a,b){var c=65535,d=Zk(this,a,!1,1);0<=d&&(c=ab(this.na,d),void 0!==b&&$k(a,b));return c};k.bd=function(a,b,c){var d=Zk(this,a,!0,0);0<=d&&(bb(this.na,d,b),void 0!==c&&$k(a,c),Db(this.S))};k.Nd=function(a,b,c){var d=Zk(this,a,!0,1);0<=d&&(cb(this.na,d,b),void 0!==c&&$k(a,c),Db(this.S))};function $(a){return null==a[1]?"%"+l(a[2]):ca(a[0],a[1])}function $k(a,b){b=void 0===b?1:b;null!=a[2]&&(a[2]+=b);null!=a[1]&&(a[0]+=b,a[0]!=(a[0]&65535)&&(a[0]&=65535,a[2]=null))} +function Gk(a){var b;a.Gb=["exec"];if(void 0!==a.Sd)for(b=1;b<a.Sd.length;b++){var c=a.na,d=Zk(a,a.Sd[b]);vb(c.Aa[d>>c.ob],!1)}a.Sd=["read"];if(void 0!==a.Pc)for(b=1;b<a.Pc.length;b++)c=a.na,d=Zk(a,a.Pc[b]),vb(c.Aa[d>>c.ob],!0);a.Pc=["write"]}k.Vd=function(a,b,c){if(!al(this,a,b)){b[2]=Zk(this,b);b[3]=c;a.push(b);if(a!=this.Gb){var d=this.na,e=Zk(this,b);d.Aa[e>>d.ob].Vd(e&d.fb,a==this.Pc)}c||this.ca("breakpoint enabled: "+$(b)+" ("+a[0]+")");Hk(this);return!0}return!1}; +function al(a,b,c,d){var e=!1;c=Zk(a,c);for(var f=1;f<b.length;f++){var g=b[f];if(c==Zk(a,g)){e=!0;if(d){b.splice(f,1);b!=a.Gb&&(d=a.na,vb(d.Aa[c>>d.ob],b==a.Pc));g[3]||a.ca("breakpoint cleared: "+$(g)+" ("+b[0]+")");Hk(a);break}a.ca("breakpoint exists: "+$(g)+" ("+b[0]+")");break}}return e}function bl(a,b){for(var c=1;c<b.length;c++)a.ca("breakpoint enabled: "+$(b[c])+" ("+b[0]+")");return b.length-1} +function wb(a,b,c,d){if(void 0===d)wb(a,b,c,a.Sd),wb(a,b,c,a.Pc);else for(var e=1;e<d.length;e++){var f=Zk(a,d[e]);if(f>=b&&f<b+c){var g=a.na;g.Aa[f>>g.ob].Vd(f&g.fb,d==a.Pc)}}}function Wk(a,b){if(void 0!==b)Xk(a,b,a.Gb,!0),a.nc=0;else for(var c=1;c<a.Gb.length;c++){var d=a.Gb[c];if(d[3]){if(!al(a,a.Gb,d,!0))break;c=0}}} +function Xk(a,b,c,d){var e=!1;16711680==(b&16711680)&&(b&=1048575);for(var f=1;f<c.length;f++){var g=c[f];if(b==Zk(a,g)){g[3]?al(a,c,g,!0):d||a.ca("breakpoint hit: "+$(g)+" ("+c[0]+")");e=!0;break}}return e} +function cl(a,b,c,d){var e=[b[0],b[1],b[2]],f=a.ub(b,1),g=a.Cf[f],h=g[0],m=-1;204==h&&(h=a.ub(b,1),g=Ok[h]||Z,f|=h<<8,h=g[0]);h>=Jk.length&&(m=a.ub(b,1),g=Pk[h-Jk.length][m>>3&7]);var n=2,h="";if(164<=f&&167>=f||170<=f&&175>=f)n=0;for(f=1;f<=n;f++){var q="",t=g[f];if(void 0!==t){var s=t&15;if(0!=s&&15!=s){var u=t&240;if(128<=u)if(0>m&&(m=a.ub(b,1)),160<=u)q=m>>3&7,176==(t&240)?q+=16:3<=(t&15)&&(q+=8),q=Kk[q];else{if(128<=u){var q=a,z=t,s=b,C="",u=m>>6,C=m&7;3>u?(z=void 0,u||6!=C?(C=Lk[C],1==u?(z= +q.ub(s,1),z&128?(z=z<<24>>24,C+="-"+p(-z)):C+="+"+p(z)):2==u&&(z=q.Ia(s,2),C+="+"+r(z))):(z=q.Ia(s,2),C=r(z)),C="["+C+"]"):C=Kk[C+(1==(z&15)?0:8)];q=C}}else if(16==u)q="1";else if(0==u){q=a;u=t;s=b;z=" ";switch(u&15){case 1:u&12288&&(z=p(q.ub(s,1)));break;case 2:z=r(q.ub(s,1)<<24>>24);break;case 3:case 4:z=r(q.Ia(s,2));break;case 6:u=q.Ia(s,2);q=q.Ia(s,2);z=$([u,q,void 0]);break;default:z="imm("+r(u)+")"}q=z}else 32==u?q="["+r(a.Ia(b,2))+"]":48==u?(1==s?(q=a.ub(b,1),q=q<<24>>24):q=a.Ia(b,2),q=b[0]+ +q&65535,q=dl(a,[q,b[1],void 0])[0]||r(q)):96==u?q=Kk[(t&3840)>>8]:112==u?q=Kk[((t&3840)>>8)+16]:64==u?q="DS:[SI]":80==u&&(q="ES:[DI]");q.length||(q="type("+r(t)+")");0<h.length&&(h+=",");h+=q}}}m=$(e)+" ";n="";do n+=p(a.ub(e,1));while(e[0]!=b[0]);m+=(n+" ").substr(0,14);m+=(Jk[g[0]]+" ").substr(0,8);h&&(m+=" "+h);c&&(m=(m+" ").substr(0,50),m+=";",m=a.S.af?m+("cycles="+E(a.S).toString()+" cs="+l(a.S.$f)):m+(c+(null!=d?"="+d.toString():"")));return m} +function el(a,b){var c;switch(b){case "V":c=Uc(a.S);break;case "D":c=a.S.xa&1024;break;case "I":c=a.S.xa&512;break;case "T":c=a.S.xa&256;break;case "S":c=Tc(a.S);break;case "Z":c=Sc(a.S);break;case "A":c=Rc(a.S);break;case "P":c=Qc(a.S);break;case "C":c=Pc(a.S);break;default:c=0}return" "+b+(c?"1":"0")}function hl(a,b){return a.ug+"="+r(a.oa)+(b?"["+l(a.La,6)+","+r(a.Nc)+"]":"")}function il(a,b,c,d){return a+"="+(null!=b?r(b):"")+"["+l(c,6)+","+r(d-c)+"]"} +function jl(a,b,c){var d=2==c?a.Uj:a.Dc;c=d[0];var e=d[1],d=d[2];if(void 0!==b){"%"==b.charAt(0)&&(b=b.substr(1),e=null,d=0);var f,g=b;f=null;if(g.match(/^[a-z_][a-z0-9_]*$/i)){f=[];for(var h=g.toUpperCase(),m=0;m<a.wc.length;m++){var g=a.wc[m][0],n=a.wc[m][2][h];if(void 0!==n){h=n.o;void 0!==h&&(m=n.s,void 0===m&&(m=g>>>4),f[0]=h,f[1]=m,void 0!==n.p&&(f[2]=n.p));break}}}if(f&&f.length)return f;f=b.indexOf(":");0>f?null!=e?c=kl(a,b):d=kl(a,b):(e=kl(a,b.substring(0,f)),c=kl(a,b.substring(f+1)),d=null)}return[c, e,d]} -function ol(a,b,c){var d;if(void 0!==b)switch(b=b.toUpperCase(),b){case "AX":d=a.S.G;break;case "BX":d=a.S.B;break;case "CX":d=a.S.I;break;case "DX":d=a.S.J;break;case "SI":d=a.S.F;break;case "DI":d=a.S.D;break;case "BP":d=a.S.H;break;case "SP":d=a.S.X;break;case "CS":d=a.S.qa.na;break;case "DS":d=a.S.Ob.na;break;case "ES":d=a.S.$a.na;break;case "SS":d=a.S.Cb.na;break;case "IP":d=a.S.ra;break;default:d=ba(b),void 0===d&&z(a,"invalid "+(c?c:"value")+": "+b)}else z(a,"missing "+(c?c:"value"));return d} -function Ji(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0}var f=[],g=[],h;for(h in d){var m=d[h];"number"==typeof m&&(d[h]=m={o:m});var n=m.o,r=m.s,u=m.a;void 0!==n&&(void 0!==r&&(f[0]=n,f[1]=r,m.p=cl(a,f)),ja(g,[n,h],e));u&&(m.a=u.replace(/''/g,'"'))}a.tc.push([b,c,d,g])} -function hl(a,b,c){for(var d=[],e=cl(a,b),f=0;f<a.tc.length;f++){var g=a.tc[f][0],h=a.tc[f][1];if(e>=g&&e<g+h){b=ia(a.tc[f][3],[b[0]],function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0});0<=b?pl(a,f,b,d):c&&(b=~b,pl(a,f,b-1,d),pl(a,f,b,d));break}}return d}function pl(a,b,c,d){var e={},f=a.tc[b][3],g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.tc[b][2][h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)} -function ql(a,b){if("?"==b)z(a,"\nfrequency commands:"),z(a,"\tclear\tclear all frequency counts");else{var c,d=0;if(a.ad)if("clear"==b){for(c=0;c<a.ad.length;c++)a.ad[c]=[c,0];z(a,"frequency data cleared");d++}else if(void 0!==b)z(a,"unknown frequency command: "+b),d++;else{var e=a.ad.slice();e.sort(function(a,b){return b[1]-a[1]});for(c=0;c<e.length;c++){var f=e[c][0],g=e[c][1];g&&(z(a,(Nk[a.Bf[f][0]]+" ").substr(0,5)+" ("+p(f)+"): "+g+" times"),d++)}}d||z(a,"no frequency data available")}} -function rl(a,b){if("l"==b[0]&&void 0===b[1]||"?"==b[1])z(a,"\nlist/load commands:"),z(a,"\tl [address] [drive #] [sector #] [# sectors]"),z(a,"\tln [address] lists symbol(s) nearest to address");else{var c=[],d,e=0,f=0,g=!1;if("json"==b[1])g=!0;else if(d="ln"==b[0],c=nl(a,b[1],d?1:2),d){c=hl(a,c,!0);c.length?(c[0]&&z(a,q(c[1])+": "+c[0]),4<c.length&&c[4]&&z(a,q(c[5])+": "+c[4])):z(a,"no symbols");return}d=ol(a,b[2],"drive #");if(void 0!==d){if(!g){e=ol(a,b[3],"sector #");if(void 0===e)return;f=ol(a, -b[4],"# of sectors");void 0===f&&(f=1)}var h=a.vm;2<=d&&a.vk&&(d-=2,h=a.vk);if(h){var m=h.hk(d);if(m)if(m.ua)if(g)z(a,mk(m.ua));else if(h.Wl(m,e,f)){for(var n=0,r=!1,e=$(c);!r&&0<m.Ta--;)(function(a,b){h.qc(m,function(c){0>c?(z(a,"out of data at address "+$(b)),r=!0):(a.Zc(b,c,1),n++)})})(a,c);z(a,n+" bytes read at "+e)}else z(a,"sector "+e+" request out of range");else z(a,"drive "+d+" not loaded");else z(a,"invalid drive: "+d)}else z(a,"disk controller not present")}}} -function Yk(a,b,c){if(b&&"?"==b[1])z(a,"\nregister commands:"),z(a,"\tr\t\tdisplay all registers"),z(a,"\tr [target=#]\tmodify target register"),z(a,"supported targets:"),z(a,"\tall registers and flags V,D,I,S,Z,A,P,C");else{var d=!0,e;if(null!=b&&1<b.length){var f=b[1];if("p"==f)e=void 0!==a.S.Oc;else{var d=!1,g=null,h=f.indexOf("=");if(0<h)g=f.substr(h+1),f=f.substr(0,h);else if(2<b.length)g=b[2];else{z(a,"missing value for "+b[1]);return}b=parseInt(g,16);if(isNaN(b)){z(a,"invalid value: "+g);return}switch(f.toUpperCase()){case "AL":a.S.G= -a.S.G&65280|b&255;break;case "AH":a.S.G=a.S.G&255|b<<8&255;break;case "AX":a.S.G=b&65535;break;case "BL":a.S.B=a.S.B&65280|b&255;break;case "BH":a.S.B=a.S.B&255|b<<8&255;break;case "BX":a.S.B=b&65535;break;case "CL":a.S.I=a.S.I&65280|b&255;break;case "CH":a.S.I=a.S.I&255|b<<8&255;break;case "CX":a.S.I=b&65535;break;case "DL":a.S.J=a.S.J&65280|b&255;break;case "DH":a.S.J=a.S.J&255|b<<8&255;break;case "DX":a.S.J=b&65535;break;case "SP":a.S.X=b&65535;break;case "BP":a.S.H=b&65535;break;case "SI":a.S.F= -b&65535;break;case "DI":a.S.D=b&65535;break;case "DS":Pc(a.S,b);break;case "ES":Rc(a.S,b);break;case "SS":Qc(a.S,b);break;case "CS":d=!0;Lc(a.S,b);a.Bc=[a.S.ra,a.S.qa.na,void 0];break;case "IP":d=!0;I(a.S,b);a.Bc=[a.S.ra,a.S.qa.na,void 0];break;case "C":b?cd(a.S):Yc(a.S);break;case "P":b?(f=a.S,Tc(f)||(f.ia^=1)):(f=a.S,Tc(f)&&(f.ia^=1));break;case "A":b?dd(a.S):Zc(a.S);break;case "Z":b?ed(a.S):$c(a.S);break;case "S":b?fd(a.S):ad(a.S);break;case "I":b?(f=a.S,f.wa|=512):(f=a.S,f.wa&=-513);break;case "D":b? -(f=a.S,f.wa|=1024):(f=a.S,f.wa&=-1025);break;case "V":b?gd(a.S):bd(a.S);break;default:z(a,"unknown register: "+f);return}Fb(a.S);z(a,"updated registers:")}}f=e;void 0===f&&(f=!!(a.S.Yc&1));e="AX="+q(a.S.G)+" BX="+q(a.S.B)+" CX="+q(a.S.I)+" DX="+q(a.S.J)+" SP="+q(a.S.X)+" BP="+q(a.S.H)+" SI="+q(a.S.F)+" DI="+q(a.S.D)+"\n";e+=ll(a.S.Ob,f)+" "+ll(a.S.$a,f)+" "+ll(a.S.Cb,f);e=e+(f?"\n":" ")+(ll(a.S.qa,f)+" IP="+q(a.S.ra)+il(a,"V")+il(a,"D")+il(a,"I")+il(a,"T")+il(a,"S")+il(a,"Z")+il(a,"A")+il(a,"P")+ -il(a,"C"));f&&(f=a.ma,e+=" MS="+q(a.S.Yc)+"\n"+ml("LD",a.S.Jd.na,a.S.Jd.Ja,a.S.Jd.Lc)+" "+ml("GD",null,a.S.Oc,a.S.Ue)+" "+ml("ID",null,a.S.bd,a.S.qe)+" TR="+q(a.S.tg.na)+" A20="+(f.re==f.Hb?"ON":"OFF"));z(a,(c?"":"\n")+e);d&&(a.Bc=[a.S.ra,a.S.qa.na,void 0],Zk(a,$(a.Bc)))}}function sl(a,b,c){var d="tr"==b;b=null!=c?parseInt(c,10):1;var e=1==b?0:1;va(b,function(){return Ra(a,!0)&&a.sf(e,d,!1)},function(){Fb(a.S);Ra(a,!1)})} -function Zk(a,b,c,d){b=nl(a,b,1);if(null!=b[0]){void 0===d&&(d=1);var e=[65535,b[1],a.ma.re];if(void 0!==c){e=nl(a,c,1);if(null==e[0]||e[0]<b[0])return;if(256<e[0]-b[0]){z(a,"range too large");return}e[0]++;d=-1}for(c=b[0]!=a.Bc[0];d--&&(null!=b[1]?b[0]<e[0]:b[2]<e[2]);){var f=a.rb(b),g=Sa(a,!1)||a.lc?a.Xc:null;if(38==f||46==f||54==f||62==f||240==f||242==f||243==f)g=null,d||d++;var f=null!=g?"cycles":null,h=hl(a,b);if(h[0]){var m=h[0]+":";c=!1;h[2]&&(m+=" "+h[2]);z(a,m)}c&&z(a);h[3]&&(f=h[3],g=null); -c=gl(a,b,f,g);z(a,c);a.Bc=b;c=!1}}}function Vk(a,b,c){c&&(b?a.wh=b:b=a.wh);a=b?b.split(0<=b.indexOf("|")?"|":";"):[""];for(var d in a)a[d]=ha(a[d]);return a} -function Wk(a,b){!b.length&&a.Ye&&(z(a,"ended assemble @"+$(a.ne)),a.Bc=a.ne,a.Ye=!1);b=b.toLowerCase();if(Ta(a)&&!Sa(a,!0)&&0<b.length){if(a.Ye)b="a "+$(a.ne)+" "+b;else{var c,d,e;switch(b){case "reset":a.Ca&&a.Ca.reset();return;default:for(d=b.charAt(0),e=1;e<b.length;e++){c=b.charAt(e);if(" "==c)break;if("r"==d||"a">c||"z"<c){b=b.substring(0,e)+" "+b.substring(e);break}}}}c=b.split(" ");switch(c[0].charAt(0)){case "a":var f=nl(a,c[1],1);if(null!=f[0])if(a.ne=f,void 0===c[2])z(a,"begin assemble @"+ -$(f)),a.Ye=!0,Fb(a.S);else if(z(a,"not supported yet"),c=[],c.length){for(var g=0;g<c.length;g++)a.Zc(f,c[g],1);z(a,gl(a,a.ne))}break;case "b":a:if(f=c[1],(g=c[0].charAt(1))&&"?"!=g)if("l"==g)f=0+fl(a,a.Eb),f+=fl(a,a.Qd),(f+=fl(a,a.Nc))||z(a,"no breakpoints");else if(void 0===f)z(a,"missing breakpoint address");else{c=[];if("*"!=f&&(c=nl(a,f,1),null==c[0]))break a;f=null==c[0]?f:q(c[0]);"c"==g?null==c[0]?(Kk(a),z(a,"all breakpoints cleared")):el(a,a.Eb,c,!0)||el(a,a.Qd,c,!0)||el(a,a.Nc,c,!0)||z(a, -"breakpoint missing: "+$(c)):"i"==g?(g=a.ma,c=c[0],void 0===c?(g.Sf=!g.Sf,c=g.Sf):(void 0===g.qd[c]&&(g.qd[c]=[null,null,!1]),g.qd[c][2]=!g.qd[c][2],c=g.qd[c][2]),z(a,"breakpoint "+(c?"enabled":"cleared")+": port "+f+" (input)")):"o"==g?(g=a.ma,c=c[0],void 0===c?(g.Tf=!g.Tf,c=g.Tf):(void 0===g.rd[c]&&(g.rd[c]=[null,null,!1]),g.rd[c][2]=!g.rd[c][2],c=g.rd[c][2]),z(a,"breakpoint "+(c?"enabled":"cleared")+": port "+f+" (output)")):null!=c[0]&&("p"==g?a.Td(a.Eb,c):"r"==g?a.Td(a.Qd,c):"w"==g?a.Td(a.Nc, -c):z(a,"unknown breakpoint command: "+g))}else z(a,"\nbreakpoint commands:"),z(a,"\tbi [p]\ttoggle break on input port [p]"),z(a,"\tbo [p]\ttoggle break on output port [p]"),z(a,"\tbp [a]\tset exec breakpoint at addr [a]"),z(a,"\tbr [a]\tset read breakpoint at addr [a]"),z(a,"\tbw [a]\tset write breakpoint at addr [a]"),z(a,"\tbc [a]\tclear breakpoint at addr [a]"),z(a,"\tbl\tlist all breakpoints");break;case "c":Da&&(Da.value="");break;case "d":a:{var g=c[0],h=c[1],m=c[2],n;if("?"==h){f="symbols"; -for(n in a.cb)void 0!==a.cb[n].sk&&(f.length&&(f+=","),f+=a.cb[n].Ua);f+=",state";z(a,"\ndump commands:");z(a,"\tdb [a] [#] dump bytes at address a");z(a,"\tdw [a] [#] dump words at address a");z(a,"\tds [s] dump descriptor for selector s");f.length&&z(a,"dumps are also available for: "+f)}else if("state"==h)z(a,tl(a.Ca,!0));else if("symbols"==h)for(c=0;c<a.tc.length;c++)for(f in g=a.tc[c][0],h=a.tc[c][2],h)"."!=f.charAt(0)&&(m=h[f],n=m.o,void 0!==n&&(m=m.s,void 0===m&&(m=g>>>4),(d=h[f].l)&& -(f=d),z(a,ca(n,m)+" "+f)));else{for(n in a.cb)if(h==a.cb[n].Ua){a.cb[n].sk(m);break a}f=nl(a,h,2);if(null!=f[0])if("ds"==g)if(c=bl(a,f[0]),null!=c.na){f="selector="+q(f[0])+" limit="+q(c.Lc)+" base="+l(c.Ja);if(c.Ya){f+=" access="+q(c.Ya);if(c.Ya&4096)c.Ya&2048?(f=f+"code:"+(c.Ya&512?"readable,":"execonly,"),f+=c.Ya&1024?"conforming,":"nonconforming,"):(f+="data:",f+=c.Ya&512?"writeable,":"readonly,",f+=c.Ya&1024?"expand down,":"expand up,"),f+=c.Ya&256?"accessed":"not accessed";else switch(f+="type:", -c.Ya&7936){case 256:f+="tss";break;case 512:f+="ldt";break;case 768:f+="tss(busy)";break;case 1024:f+="call";break;case 1280:f+="task";break;case 1536:f+="int";break;case 1792:f+="trap";break;default:f+="unknown"}f+=",dpl"+(c.Ya>>13&24576);f+=c.Ya&32768?",present":",not present"}z(a,f)}else z(a,"invalid selector: "+q(f[0]));else{c=0;void 0!==m&&("l"==m.charAt(0)&&(m=m.substr(1)),c=parseInt(m,10));n="";c||(c=8);for(m=0;m<c;m++){e=d="";for(var h=$(f),r=0,u=0;16>u;u++){var t=a.rb(f,1);"dw"==g?u&1&&(d+= -q(r|t<<8)+(7==u?" - ":" ")):d+=p(t)+(7==u?"-":" ");e+=32<=t&&128>t?String.fromCharCode(t):".";r=t}n&&(n+="\n");n+=h+" "+d+" "+e}n&&z(a,n);a.Pj=f}}}break;case "e":f=c[1];if(void 0===f)z(a,"missing address");else if(f=nl(a,f,2),null!=f[0])for(g=2;g<c.length;g++)h=parseInt(c[g],16),z(a,"setting "+$(f)+" to "+p(h)),a.Zc(f,h,1);break;case "f":ql(a,c[1]);break;case "g":a:{f=c[1];if(void 0!==f){f=nl(a,f,1);if(null==f[0])break a;a.Td(a.Eb,f,!0)}a.Ke(!0)||z(a,'cpu not available, "g" command ignored')}break; -case "h":m=c[1];if(a.Mb&&void 0===m)a.xb();else{f="";c=10;g=a.ef;h=a.Sd;if(h.length)for(n=void 0===m?a.Il:parseInt(m,10),isNaN(n)?n=c:f="more ",n>h.length&&(z(a,"note: only "+h.length+" available"),n=h.length),g-=n,0>g&&(null!=h[h.length-1][1]?g+=h.length:(n=g+n,g=0)),void 0!==m&&z(a,n+" instructions earlier:");c&&g!=a.ef;){m=h[g];if(null==m[1])break;m=[m[0],m[1],m[2]];z(a,gl(a,m,"history",-n));++g==h.length&&(g=0);a.Il=--n;c--}10==c&&(z(a,"no "+f+"history available"),a.Il=void 0)}break;case "i":(f= -c[1])&&"?"!=f?(f=ol(a,f),void 0!==f&&(c=kb(a.ma,f),z(a,q(f)+": "+p(c)))):(z(a,"\ninput commands:"),z(a,"\ti [p]\tread port [p]"),z(a,"warning: port accesses can affect hardware state"));break;case "l":rl(a,c);break;case "m":a:{f=null;h=c[1];"?"==h&&(h=void 0);if(void 0!==h){n=0;if("all"==h)n=4294967295,h=null;else if("on"==h)f=!0,h=null;else if("off"==h)f=!1,h=null;else{for(g in a.cb)if(h==a.cb[g].Ua){n=a.cb[g].Ra;f=!!(a.ec&n);break}if(!n){z(a,"unknown message category: "+h);break a}}n&&("on"==c[2]? -(a.ec|=n,f=!0):"off"==c[2]&&(a.ec&=~n,f=!1))}c=0;n="";for(g in a.cb)if(!h||h==a.cb[g].Ua)if(m=!!(a.ec&a.cb[g].Ra),null===f||f==m)n&&(n+=","),++c%10||(n+="\n\t"),n+=a.cb[g].Ua;void 0===h&&z(a,"\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off");z(a,(null!==f?f?"messages on: ":"messages off: ":"message categories:\n\t")+(n||"none"))}break;case "o":f=c[1];c=c[2];f&&"?"!=f?(f=ol(a,f,"port #"),c=ol(a,c),void 0!==f&&void 0!==c&&nb(a.ma,f,c)):(z(a,"\noutput commands:"),z(a,"\to [p] [d]\twrite data [d] to port [p]"), -z(a,"warning: port accesses can affect hardware state"));break;case "p":case "pr":f="pr"==c[0]?1:0;c=1+f;if(a.lc)z(a,"step in progress");else{h=!1;n=[a.S.ra,a.S.qa.na,void 0];do switch(g=!1,a.rb(n)){case 38:case 46:case 54:case 62:case 240:dl(n,1);g=!0;break;case 204:case 206:a.lc=c;dl(n,1);break;case 205:case 224:case 225:case 226:a.lc=c;dl(n,2);break;case 232:a.lc=c;dl(n,3);break;case 154:a.lc=c;dl(n,5);break;case 255:a.lc=0<=gl(a,n).indexOf("CALL")?c:0;break;case 243:case 242:dl(n,1);h=g=!0;break; -case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:h&&(a.lc=c,dl(n,1))}while(g);a.lc?(a.Td(a.Eb,n,!0),a.Ke()||(a.S.Kd(),a.lc=0)):sl(a,f?"tr":"t")}break;case "r":Yk(a,c);break;case "t":case "tr":sl(a,c[0],c[1]);break;case "u":Zk(a,c[1],c[2],8);break;case "x":a:if(void 0===c[1]||"?"==c[1])z(a,"\nexecution options:"),z(a,"\tcs int #\tset checksum cycle interval to #"),z(a,"\tcs start #\tset checksum cycle start count to #"),z(a,"\tcs stop #\tset checksum cycle stop count to #"), -z(a,"\tsp #\t\tset speed multiplier to #");else switch(c[1]){case "cs":void 0!==c[3]&&(m=parseInt(c[3],10));switch(c[2]){case "int":a.S.hf=m;break;case "start":a.S.Zf=m;break;case "stop":a.S.kf=m;break;default:z(a,"unknown cs option");break a}void 0!==m&&Cb(a.S);z(a,"checksums "+(a.S.Ze?"enabled":"disabled"));break;case "sp":void 0!==c[2]&&Jb(a.S,parseInt(c[2],10));z(a,"target speed: "+(a.S.ff.toFixed(2)+"Mhz")+" ("+a.S.Ed+"x)");break;default:z(a,"unknown option: "+c[1])}break;case "?":f="commands:"; -for(h in Mk)f+="\n"+h+" ".substr(0,7-h.length)+Mk[h];1<a.Eb.length||(f+="\nnote: frequency/history disabled if no exec breakpoints");z(a,f);break;default:z(a,"unknown command: "+b)}}}Aa(function(){for(var a=y(window.document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=x(c),d=new Jk(d);Qa(d,c)}});function H(a,b,c){this.id=a.id;this.key=ul(a,b,c);this.Z=a.Z;vl(this,a.Ro)}function ul(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a} -H.prototype={set:function(a,b){this[this.id][a]=b},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.mi=!0):this.mi?!0:window.localStorage&&(a=window.localStorage.getItem(this.key))?(this[this.id]=a,this.mi=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){ra(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"== -typeof a?a:JSON.stringify(a)},clear:function(a){vl(this);if(window.localStorage)for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}},Ea:function(a){this.Z&&L(this.Z,this.Z.im)&&this.Z.message(a)}};function vl(a,b){a[a.id]={};b&&a.set("parms",b);a.mi=!1} -function wl(a){var b=!0;if(window.localStorage){var c=JSON.stringify(a[a.id]);try{window.localStorage.setItem(a.key,c)}catch(d){ra("Unable to store "+c.length+" bytes in browser local storage"),b=!1}}return b} -function xl(a,b,c){s.call(this,"Computer",a,xl);this.Lb=!1;this.Wf=a.buswidth;this.zc=yl;this.rg=null;this.dh=!1;this.url=b?b.url:null;this.ap=(Math.random()+0.1).toString(36).substr(2,12);this.Mc=zl(this);if(this.S=Pa("CPU",this.id)){this.Z=Pa("Debugger",this.id);this.ma=new Ya({id:this.hh+".bus",buswidth:this.Wf},this.S,this.Z);b=Na(this.id);for(var d=0;d<b.length;d++){var e=b[d];e.nc&&e.nc(this,this.ma,this.S,this.Z)}b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Ch=d:this.zc=parseInt(d,10)); -var f;if(a=Fa&&Fa.state||(f=!0,a.state))b=this.Vl=a,f||(this.dh=!0,this.zc=yl),this.zc&&(this.Fh=new H(this,"1.15.4"),this.Fh.load()?b=null:delete this.Fh);!b&&this.zc&&(f=null,this.Mc&&(f=qa()+"/api/v1/user?req=load&user="+this.Mc+"&state="+ul(this,"1.15.4")),b=f)&&(this.dh=!0);b?pa(b,!0,null,this,this.Un):this.Oa();c||Al(this,this.vh)}else ra("Unable to find CPU component")}w(s,xl);var wk=102,yl=0;k=xl.prototype;k.cf=function(){return this.ap};k.ce=function(){return this.Mc?this.Mc:""}; -k.Un=function(a,b,c){c?(this.Ch=null,this.dh=!1,B(this,"Unable to load machine state from server (error "+c+(b?": "+ha(b):"")+")")):this.rg=b;this.Oa()};function Al(a,b,c){for(var d=Na(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ta(f)){Ta(f,function(){Al(a,b,c)});return}}b.call(a,c)} -function Bl(a,b){var c=new H(a,"1.15.4","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(B(a,"Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}} -k.vh=function(a){void 0===a&&(a=this.rg?1:this.zc);var b=!1,c=!1;this.pk=!1;var d=this.Fh||new H(this,"1.15.4");if(-1==a)b=!0;else if(a>yl){if(d.load(this.rg)){this.qf=new H(this,"1.15.4","failsafe");this.qf.load()&&(Cl(this,d),a=2);this.qf.set("timestamp",na());wl(this.qf);var e=this.zc&&!this.dh;if(1==a||sa("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(B(this,"Error: "+g),"unable to verify user"== -g&&(ta(""),this.Mc=null)):z(this,f+": "+g),vl(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Bl(this,c?d:null)}else 2==a&&d.clear()}else Bl(this);delete this.rg;delete this.Fh}e=Na(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.S&&(c=Dl(this,g,d,b,c));b=[d,a,c];-1!=a?Al(this,this.Ll,b):this.Ll(b)}; -function Dl(a,b,c,d,e){if(!b.Lb){b.Lb=!0;if(b.$b){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.$b(f,d)&&f&&(a.error("Unable to restore state for "+b.type),a.Vl&&!a.rg?(c.clear(),a.zc=yl,window&&window.location.reload()):a.pk=!0,b.$b(null),e=!1)}if(!d&&b.gk)for(a=b.gk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e} -k.Ll=function(a){var b=a[0],c=0>a[1];a=a[2];this.Lb=!0;this.mk||(z(this,"PCjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.mk=!0);this.S&&Dl(this,this.S,b,c,a);this.pk&&(Cl(this,b),b.clear());!c&&this.qf&&(this.qf.clear(),delete this.qf)}; -function Cl(a,b){if(sa("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.ce(),d=b.toString(),e={app:"PCjs",ver:"1.15.4"};e.url=a.url;e.user=c;e.type="bug";e.data=d;pa("http://www.pcjs.org/api/v1/report",!0,e)}} -function tl(a,b,c){var d,e="none",f=new H(a,"1.15.4"),g=new H(a,"1.15.4","validate"),h=na();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.15.4");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.S&&a.S.Wb&&(c&&a.S.xb(),d=a.S.Wb(b,c),"object"===typeof d&&f.set(a.S.id,d),c&&(a.S.Lb=!1,!1===d&&(e=null)));for(var h=Na(a.id),m=0;m<h.length;m++){var n=h[m];n.Lb&&(n.Wb&&(d=n.Wb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.Lb=!1,!1===d&& -(e=null)))}e&&(c?(h=d=!1,b?(a.Mc&&El(a,a.Mc,f.toString()),wl(g)&&wl(f)||(e=null,d=h=!0)):a.zc&&(d=!0,h=3==a.zc),d&&f.clear(h)):e=f.toString());c&&(a.Lb=!1);return e}k.reset=function(){this.ma&&this.ma.reset&&(this.Ea("Resetting "+this.ma.type,!0),this.ma.reset());for(var a=Na(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ma&&c.reset&&(this.Ea("Resetting "+c.type,!0),c.reset())}}; -k.start=function(a,b){for(var c=Na(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};k.stop=function(a,b){for(var c=Na(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}}; -k.tb=function(a,b,c,d){var e=this;switch(c){case "save":return this.sa[c]=d,d.onclick=function(){var a=zl(e,!0);if(a){var b=!(!e.zc||e.Ch),c=tl(e,b);b?El(e,a,c):B(e,"Resume disabled, machine state not saved")}},!0;case "reset":return this.sa[c]=d,d.onclick=function(){Hb(e)},!0}return!1}; -function zl(a,b){var c=a.Mc;if(!c){var d;window&&(d=window.localStorage.getItem("user"));c=d;void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email Jeff@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Fl(a,c))||B(a,"Your user ID has not been approved."))):b&&B(a,"Browser local storage is not available")}return c} -function Fl(a,b){a.Mc=null;var c=pa(qa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(ta(c.data),a.Mc=c.data)}catch(e){ra(e.message+" ("+d+")")}return a.Mc} -function El(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=ul(a,"1.15.4");d.data=c;b=pa(qa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?B(a,"Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,B(a,c),ta(""),a.Mc=null)}} -function Hb(a){if(a.zc&&!a.Ch){var b=1==a.zc||!sa("Click OK to reset the PCjs machine state.\n(WARNING: All disk changes will be discarded)");tl(a,b,!0);!b&&a.Vl?window&&window.location.reload():(b||(a.oi=!0),a.vh(yl),a.oi=!1)}else a.reset(),a.S&&Db(a.S)}function C(a,b,c){a=Na(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}k.Ea=function(a,b){this.Z&&(b||L(this.Z,this.Z.dm))&&this.Z.message(a)}; -Aa(function(){for(var a=y(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=x(c),c=y(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=x(f),g=new xl(g,d,!0);Qa(g,f);Al(g,g.vh)}});xa.show.push(function(){for(var a=y(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=x(a[b]);(c=Pa("Computer",c.id))&&c.mk&&!c.Lb&&c.vh(-1)}}); -xa.exit.push(function(){for(var a=y(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=x(a[b]);(c=Pa("Computer",c.id))&&c.Lb&&tl(c,!(!c.zc||c.Ch),!0)}});function Gl(a,b,c,d){var e=pa(a);if(e[0])throw Error(e[1]);return Hl(e[1],a,b,c,d)} -function Hl(a,b,c,d,e){var f=null;if(a){if(e)for(var g=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;f=g.exec(a);){var h=f[2],m=pa(h),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var r=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(r){for(var h=r[0],u,t=/( [a-z]+=)(['"])(.*?)\2/g;u=t.exec(m);)h=0>h.indexOf(u[1])?h.replace(">",u[0]+">"):h.replace(new RegExp(u[1]+"(['\"])(.*?)\\1"),u[0]);r[0]!=h&&(n=n.replace(r[0],h))}else throw c="missing <"+f[1]+"> in "+h, +function kl(a,b,c){var d;if(void 0!==b)switch(b=b.toUpperCase(),b){case "AX":d=a.S.G;break;case "BX":d=a.S.B;break;case "CX":d=a.S.I;break;case "DX":d=a.S.J;break;case "SI":d=a.S.F;break;case "DI":d=a.S.D;break;case "BP":d=a.S.H;break;case "SP":d=a.S.X;break;case "CS":d=a.S.ra.oa;break;case "DS":d=a.S.Qb.oa;break;case "ES":d=a.S.cb.oa;break;case "SS":d=a.S.Eb.oa;break;case "IP":d=a.S.sa;break;default:d=ba(b),void 0===d&&a.ca("invalid "+(c?c:"value")+": "+b)}else a.ca("missing "+(c?c:"value"));return d} +function Gi(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0}var f=[],g=[],h;for(h in d){var m=d[h];"number"==typeof m&&(d[h]=m={o:m});var n=m.o,q=m.s,t=m.a;void 0!==n&&(void 0!==q&&(f[0]=n,f[1]=q,m.p=Zk(a,f)),la(g,[n,h],e));t&&(m.a=t.replace(/''/g,'"'))}a.wc.push([b,c,d,g])} +function dl(a,b,c){for(var d=[],e=Zk(a,b),f=0;f<a.wc.length;f++){var g=a.wc[f][0],h=a.wc[f][1];if(e>=g&&e<g+h){b=ka(a.wc[f][3],[b[0]],function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0});0<=b?ll(a,f,b,d):c&&(b=~b,ll(a,f,b-1,d),ll(a,f,b,d));break}}return d}function ll(a,b,c,d){var e={},f=a.wc[b][3],g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.wc[b][2][h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)} +function ml(a,b){if("?"==b)a.ca("\nfrequency commands:"),a.ca("\tclear\tclear all frequency counts");else{var c,d=0;if(a.dd)if("clear"==b){for(c=0;c<a.dd.length;c++)a.dd[c]=[c,0];a.ca("frequency data cleared");d++}else if(void 0!==b)a.ca("unknown frequency command: "+b),d++;else{var e=a.dd.slice();e.sort(function(a,b){return b[1]-a[1]});for(c=0;c<e.length;c++){var f=e[c][0],g=e[c][1];g&&(a.ca((Jk[a.Cf[f][0]]+" ").substr(0,5)+" ("+p(f)+"): "+g+" times"),d++)}}d||a.ca("no frequency data available")}} +function nl(a,b){if("l"==b[0]&&void 0===b[1]||"?"==b[1])a.ca("\nlist/load commands:"),a.ca("\tl [address] [drive #] [sector #] [# sectors]"),a.ca("\tln [address] lists symbol(s) nearest to address");else{var c=[],d,e=0,f=0,g=!1;if("json"==b[1])g=!0;else if(d="ln"==b[0],c=jl(a,b[1],d?1:2),d){c=dl(a,c,!0);c.length?(c[0]&&a.ca(r(c[1])+": "+c[0]),4<c.length&&c[4]&&a.ca(r(c[5])+": "+c[4])):a.ca("no symbols");return}d=kl(a,b[2],"drive #");if(void 0!==d){if(!g){e=kl(a,b[3],"sector #");if(void 0===e)return; +f=kl(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.zm;2<=d&&a.zk&&(d-=2,h=a.zk);if(h){var m=h.lk(d);if(m)if(m.va)if(g)a.ca(jk(m.va));else if(h.$l(m,e,f)){for(var n=0,q=!1,e=$(c);!q&&0<m.Wa--;)(function(a,b){h.tc(m,function(c){0>c?(a.ca("out of data at address "+$(b)),q=!0):(a.bd(b,c,1),n++)})})(a,c);a.ca(n+" bytes read at "+e)}else a.ca("sector "+e+" request out of range");else a.ca("drive "+d+" not loaded");else a.ca("invalid drive: "+d)}else a.ca("disk controller not present")}}} +function Uk(a,b,c){if(b&&"?"==b[1])a.ca("\nregister commands:"),a.ca("\tr\t\tdisplay all registers"),a.ca("\tr [target=#]\tmodify target register"),a.ca("supported targets:"),a.ca("\tall registers and flags V,D,I,S,Z,A,P,C");else{var d=!0,e;if(null!=b&&1<b.length){var f=b[1];if("p"==f)e=void 0!==a.S.Qc;else{var d=!1,g=null,h=f.indexOf("=");if(0<h)g=f.substr(h+1),f=f.substr(0,h);else if(2<b.length)g=b[2];else{a.ca("missing value for "+b[1]);return}b=parseInt(g,16);if(isNaN(b)){a.ca("invalid value: "+ +g);return}switch(f.toUpperCase()){case "AL":a.S.G=a.S.G&65280|b&255;break;case "AH":a.S.G=a.S.G&255|b<<8&255;break;case "AX":a.S.G=b&65535;break;case "BL":a.S.B=a.S.B&65280|b&255;break;case "BH":a.S.B=a.S.B&255|b<<8&255;break;case "BX":a.S.B=b&65535;break;case "CL":a.S.I=a.S.I&65280|b&255;break;case "CH":a.S.I=a.S.I&255|b<<8&255;break;case "CX":a.S.I=b&65535;break;case "DL":a.S.J=a.S.J&65280|b&255;break;case "DH":a.S.J=a.S.J&255|b<<8&255;break;case "DX":a.S.J=b&65535;break;case "SP":a.S.X=b&65535; +break;case "BP":a.S.H=b&65535;break;case "SI":a.S.F=b&65535;break;case "DI":a.S.D=b&65535;break;case "DS":Mc(a.S,b);break;case "ES":Oc(a.S,b);break;case "SS":Nc(a.S,b);break;case "CS":d=!0;Ic(a.S,b);a.Dc=[a.S.sa,a.S.ra.oa,void 0];break;case "IP":d=!0;I(a.S,b);a.Dc=[a.S.sa,a.S.ra.oa,void 0];break;case "C":b?$c(a.S):Vc(a.S);break;case "P":b?(f=a.S,Qc(f)||(f.ja^=1)):(f=a.S,Qc(f)&&(f.ja^=1));break;case "A":b?ad(a.S):Wc(a.S);break;case "Z":b?bd(a.S):Xc(a.S);break;case "S":b?cd(a.S):Yc(a.S);break;case "I":b? +(f=a.S,f.xa|=512):(f=a.S,f.xa&=-513);break;case "D":b?(f=a.S,f.xa|=1024):(f=a.S,f.xa&=-1025);break;case "V":b?dd(a.S):Zc(a.S);break;default:a.ca("unknown register: "+f);return}Db(a.S);a.ca("updated registers:")}}f=e;void 0===f&&(f=!!(a.S.ad&1));e="AX="+r(a.S.G)+" BX="+r(a.S.B)+" CX="+r(a.S.I)+" DX="+r(a.S.J)+" SP="+r(a.S.X)+" BP="+r(a.S.H)+" SI="+r(a.S.F)+" DI="+r(a.S.D)+"\n";e+=hl(a.S.Qb,f)+" "+hl(a.S.cb,f)+" "+hl(a.S.Eb,f);e=e+(f?"\n":" ")+(hl(a.S.ra,f)+" IP="+r(a.S.sa)+el(a,"V")+el(a,"D")+el(a, +"I")+el(a,"T")+el(a,"S")+el(a,"Z")+el(a,"A")+el(a,"P")+el(a,"C"));f&&(f=a.na,e+=" MS="+r(a.S.ad)+"\n"+il("LD",a.S.Ld.oa,a.S.Ld.La,a.S.Ld.Nc)+" "+il("GD",null,a.S.Qc,a.S.We)+" "+il("ID",null,a.S.ed,a.S.se)+" TR="+r(a.S.xg.oa)+" A20="+(f.te==f.Jb?"ON":"OFF"));a.ca((c?"":"\n")+e);d&&(a.Dc=[a.S.sa,a.S.ra.oa,void 0],Vk(a,$(a.Dc)))}}function ol(a,b,c){var d="tr"==b;b=null!=c?parseInt(c,10):1;var e=1==b?0:1;ua(b,function(){return Na(a,!0)&&a.uf(e,d,!1)},function(){Db(a.S);Na(a,!1)})} +function Vk(a,b,c,d){b=jl(a,b,1);if(null!=b[0]){void 0===d&&(d=1);var e=[65535,b[1],a.na.te];if(void 0!==c){e=jl(a,c,1);if(null==e[0]||e[0]<b[0])return;if(256<e[0]-b[0]){a.ca("range too large");return}e[0]++;d=-1}for(c=b[0]!=a.Dc[0];d--&&(null!=b[1]?b[0]<e[0]:b[2]<e[2]);){var f=a.ub(b),g=Oa(a,!1)||a.nc?a.Zc:null;if(38==f||46==f||54==f||62==f||240==f||242==f||243==f)g=null,d||d++;var f=null!=g?"cycles":null,h=dl(a,b);if(h[0]){var m=h[0]+":";c=!1;h[2]&&(m+=" "+h[2]);a.ca(m)}c&&a.ca();h[3]&&(f=h[3], +g=null);c=cl(a,b,f,g);a.ca(c);a.Dc=b;c=!1}}}function Rk(a,b,c){c&&(b?a.Bh=b:b=a.Bh);a=b?b.split(0<=b.indexOf("|")?"|":";"):[""];for(var d in a)a[d]=ha(a[d]);return a} +function Sk(a,b){!b.length&&a.$e&&(a.ca("ended assemble @"+$(a.pe)),a.Dc=a.pe,a.$e=!1);b=b.toLowerCase();if(Pa(a)&&!Oa(a,!0)&&0<b.length){if(a.$e)b="a "+$(a.pe)+" "+b;else{var c,d,e;switch(b){case "reset":a.Da&&a.Da.reset();return;default:for(d=b.charAt(0),e=1;e<b.length;e++){c=b.charAt(e);if(" "==c)break;if("r"==d||"a">c||"z"<c){b=b.substring(0,e)+" "+b.substring(e);break}}}}c=b.split(" ");switch(c[0].charAt(0)){case "a":var f=jl(a,c[1],1);if(null!=f[0])if(a.pe=f,void 0===c[2])a.ca("begin assemble @"+ +$(f)),a.$e=!0,Db(a.S);else if(a.ca("not supported yet"),c=[],c.length){for(var g=0;g<c.length;g++)a.bd(f,c[g],1);a.ca(cl(a,a.pe))}break;case "b":a:if(f=c[1],(c=c[0].charAt(1))&&"?"!=c)if("l"==c)f=0+bl(a,a.Gb),f+=bl(a,a.Sd),(f+=bl(a,a.Pc))||a.ca("no breakpoints");else if(void 0===f)a.ca("missing breakpoint address");else{g=[];if("*"!=f&&(g=jl(a,f,1),null==g[0]))break a;f=null==g[0]?f:r(g[0]);"c"==c?null==g[0]?(Gk(a),a.ca("all breakpoints cleared")):al(a,a.Gb,g,!0)||al(a,a.Sd,g,!0)||al(a,a.Pc,g,!0)|| +a.ca("breakpoint missing: "+$(g)):"i"==c?a.ca("breakpoint "+(fb(a.na,g[0])?"enabled":"cleared")+": port "+f+" (input)"):"o"==c?a.ca("breakpoint "+(jb(a.na,g[0])?"enabled":"cleared")+": port "+f+" (output)"):null!=g[0]&&("p"==c?a.Vd(a.Gb,g):"r"==c?a.Vd(a.Sd,g):"w"==c?a.Vd(a.Pc,g):a.ca("unknown breakpoint command: "+c))}else a.ca("\nbreakpoint commands:"),a.ca("\tbi [p]\ttoggle break on input port [p]"),a.ca("\tbo [p]\ttoggle break on output port [p]"),a.ca("\tbp [a]\tset exec breakpoint at addr [a]"), +a.ca("\tbr [a]\tset read breakpoint at addr [a]"),a.ca("\tbw [a]\tset write breakpoint at addr [a]"),a.ca("\tbc [a]\tclear breakpoint at addr [a]"),a.ca("\tbl\tlist all breakpoints");break;case "c":a.Qf&&(a.Qf.value="");break;case "d":a:{var g=c[0],h=c[1],m=c[2],n;if("?"==h){f="symbols";for(n in a.gb)void 0!==a.gb[n].wk&&(f.length&&(f+=","),f+=a.gb[n].Xa);f+=",state";a.ca("\ndump commands:");a.ca("\tdb [a] [#] dump bytes at address a");a.ca("\tdw [a] [#] dump words at address a");a.ca("\tds [s] dump descriptor for selector s"); +f.length&&a.ca("dumps are also available for: "+f)}else if("state"==h)a.ca(pl(a.Da,!0));else if("symbols"==h)for(c=0;c<a.wc.length;c++)for(f in g=a.wc[c][0],h=a.wc[c][2],h)"."!=f.charAt(0)&&(m=h[f],n=m.o,void 0!==n&&(m=m.s,void 0===m&&(m=g>>>4),(d=h[f].l)&&(f=d),a.ca(ca(n,m)+" "+f)));else{for(n in a.gb)if(h==a.gb[n].Xa){a.gb[n].wk(m);break a}f=jl(a,h,2);if(null!=f[0])if("ds"==g)if(c=Yk(a,f[0]),null!=c.oa){f="selector="+r(f[0])+" limit="+r(c.Nc)+" base="+l(c.La);if(c.ab){f+=" access="+r(c.ab);if(c.ab& +4096)c.ab&2048?(f=f+"code:"+(c.ab&512?"readable,":"execonly,"),f+=c.ab&1024?"conforming,":"nonconforming,"):(f+="data:",f+=c.ab&512?"writeable,":"readonly,",f+=c.ab&1024?"expand down,":"expand up,"),f+=c.ab&256?"accessed":"not accessed";else switch(f+="type:",c.ab&7936){case 256:f+="tss";break;case 512:f+="ldt";break;case 768:f+="tss(busy)";break;case 1024:f+="call";break;case 1280:f+="task";break;case 1536:f+="int";break;case 1792:f+="trap";break;default:f+="unknown"}f+=",dpl"+(c.ab>>13&24576);f+= +c.ab&32768?",present":",not present"}a.ca(f)}else a.ca("invalid selector: "+r(f[0]));else{c=0;void 0!==m&&("l"==m.charAt(0)&&(m=m.substr(1)),c=parseInt(m,10));n="";c||(c=8);for(m=0;m<c;m++){e=d="";for(var h=$(f),q=0,t=0;16>t;t++){var s=a.ub(f,1);"dw"==g?t&1&&(d+=r(q|s<<8)+(7==t?" - ":" ")):d+=p(s)+(7==t?"-":" ");e+=32<=s&&128>s?String.fromCharCode(s):".";q=s}n&&(n+="\n");n+=h+" "+d+" "+e}n&&a.ca(n);a.Uj=f}}}break;case "e":f=c[1];if(void 0===f)a.ca("missing address");else if(f=jl(a,f,2),null!=f[0])for(g= +2;g<c.length;g++)h=parseInt(c[g],16),a.ca("setting "+$(f)+" to "+p(h)),a.bd(f,h,1);break;case "f":ml(a,c[1]);break;case "g":a:{f=c[1];if(void 0!==f){f=jl(a,f,1);if(null==f[0])break a;a.Vd(a.Gb,f,!0)}a.Me(!0)||a.ca('cpu not available, "g" command ignored')}break;case "h":m=c[1];if(a.Ob&&void 0===m)a.zb();else{f="";c=10;g=a.gf;h=a.Ud;if(h.length)for(n=void 0===m?a.Ml:parseInt(m,10),isNaN(n)?n=c:f="more ",n>h.length&&(a.ca("note: only "+h.length+" available"),n=h.length),g-=n,0>g&&(null!=h[h.length- +1][1]?g+=h.length:(n=g+n,g=0)),void 0!==m&&a.ca(n+" instructions earlier:");c&&g!=a.gf;){m=h[g];if(null==m[1])break;m=[m[0],m[1],m[2]];a.ca(cl(a,m,"history",-n));++g==h.length&&(g=0);a.Ml=--n;c--}10==c&&(a.ca("no "+f+"history available"),a.Ml=void 0)}break;case "i":(f=c[1])&&"?"!=f?(f=kl(a,f),void 0!==f&&(c=hb(a.na,f),a.ca(r(f)+": "+p(c)))):(a.ca("\ninput commands:"),a.ca("\ti [p]\tread port [p]"),a.ca("warning: port accesses can affect hardware state"));break;case "l":nl(a,c);break;case "m":a:{f= +null;h=c[1];"?"==h&&(h=void 0);if(void 0!==h){n=0;if("all"==h)n=4294967295,h=null;else if("on"==h)f=!0,h=null;else if("off"==h)f=!1,h=null;else{for(g in a.gb)if(h==a.gb[g].Xa){n=a.gb[g].Ua;f=!!(a.gc&n);break}if(!n){a.ca("unknown message category: "+h);break a}}n&&("on"==c[2]?(a.gc|=n,f=!0):"off"==c[2]&&(a.gc&=~n,f=!1))}c=0;n="";for(g in a.gb)if(!h||h==a.gb[g].Xa)if(m=!!(a.gc&a.gb[g].Ua),null===f||f==m)n&&(n+=","),++c%10||(n+="\n\t"),n+=a.gb[g].Xa;void 0===h&&a.ca("\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off"); +a.ca((null!==f?f?"messages on: ":"messages off: ":"message categories:\n\t")+(n||"none"))}break;case "o":f=c[1];c=c[2];f&&"?"!=f?(f=kl(a,f,"port #"),c=kl(a,c),void 0!==f&&void 0!==c&&lb(a.na,f,c)):(a.ca("\noutput commands:"),a.ca("\to [p] [d]\twrite data [d] to port [p]"),a.ca("warning: port accesses can affect hardware state"));break;case "p":case "pr":f="pr"==c[0]?1:0;c=1+f;if(a.nc)a.ca("step in progress");else{h=!1;n=[a.S.sa,a.S.ra.oa,void 0];do switch(g=!1,a.ub(n)){case 38:case 46:case 54:case 62:case 240:$k(n, +1);g=!0;break;case 204:case 206:a.nc=c;$k(n,1);break;case 205:case 224:case 225:case 226:a.nc=c;$k(n,2);break;case 232:a.nc=c;$k(n,3);break;case 154:a.nc=c;$k(n,5);break;case 255:a.nc=0<=cl(a,n).indexOf("CALL")?c:0;break;case 243:case 242:$k(n,1);h=g=!0;break;case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:h&&(a.nc=c,$k(n,1))}while(g);a.nc?(a.Vd(a.Gb,n,!0),a.Me()||(a.S.Md(),a.nc=0)):ol(a,f?"tr":"t")}break;case "r":Uk(a,c);break;case "t":case "tr":ol(a,c[0], +c[1]);break;case "u":Vk(a,c[1],c[2],8);break;case "x":a:if(void 0===c[1]||"?"==c[1])a.ca("\nexecution options:"),a.ca("\tcs int #\tset checksum cycle interval to #"),a.ca("\tcs start #\tset checksum cycle start count to #"),a.ca("\tcs stop #\tset checksum cycle stop count to #"),a.ca("\tsp #\t\tset speed multiplier to #");else switch(c[1]){case "cs":void 0!==c[3]&&(m=parseInt(c[3],10));switch(c[2]){case "int":a.S.kf=m;break;case "start":a.S.bg=m;break;case "stop":a.S.mf=m;break;default:a.ca("unknown cs option"); +break a}void 0!==m&&Ab(a.S);a.ca("checksums "+(a.S.af?"enabled":"disabled"));break;case "sp":void 0!==c[2]&&Gb(a.S,parseInt(c[2],10));a.ca("target speed: "+(a.S.hf.toFixed(2)+"Mhz")+" ("+a.S.Gd+"x)");break;default:a.ca("unknown option: "+c[1])}break;case "?":f="commands:";for(h in Ik)f+="\n"+h+" ".substr(0,7-h.length)+Ik[h];1<a.Gb.length||(f+="\nnote: frequency/history disabled if no exec breakpoints");a.ca(f);break;default:a.ca("unknown command: "+b)}}} +za(function(){for(var a=A(window.document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Fk(d);Ma(d,c)}});function H(a,b,c){this.id=a.id;this.key=ql(a,b,c);this.Z=a.Z;rl(this,a.Vo)}function ql(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a} +H.prototype={set:function(a,b){this[this.id][a]=b},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.ri=!0):this.ri?!0:window.localStorage&&(a=window.localStorage.getItem(this.key))?(this[this.id]=a,this.ri=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){v(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"== +typeof a?a:JSON.stringify(a)},clear:function(a){rl(this);if(window.localStorage)for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}},Fa:function(a){this.Z&&L(this.Z,this.Z.mm)&&this.Z.message(a)}};function rl(a,b){a[a.id]={};b&&a.set("parms",b);a.ri=!1} +function sl(a){var b=!0;if(window.localStorage){var c=JSON.stringify(a[a.id]);try{window.localStorage.setItem(a.key,c)}catch(d){v("Unable to store "+c.length+" bytes in browser local storage"),b=!1}}return b} +function tl(a,b,c){w.call(this,"Computer",a,tl);this.Nb=!1;this.Zf=a.buswidth;this.Bc=ul;this.vg=null;this.ih=!1;this.url=b?b.url:null;this.ep=(Math.random()+0.1).toString(36).substr(2,12);this.Oc=vl(this);if(this.S=La("CPU",this.id)){this.Z=La("Debugger",this.id);this.og=La("Panel",this.id);this.na=new Ua({id:this.mh+".bus",buswidth:this.Zf},this.S,this.Z);b=Ja(this.id);for(var d=0;d<b.length;d++){var e=b[d];this.og&&this.og.Qf&&(e.Ha=this.og.Ha,e.ca=this.og.ca,e.Qf=this.og.Qf);e.pc&&e.pc(this,this.na, +this.S,this.Z)}b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Hh=d:this.Bc=parseInt(d,10));var f;if(a=Da&&Da.state||(f=!0,a.state))b=this.Zl=a,f||(this.ih=!0,this.Bc=ul),this.Bc&&(this.Kh=new H(this,"1.15.4"),this.Kh.load()?b=null:delete this.Kh);!b&&this.Bc&&(f=null,this.Oc&&(f=qa()+"/api/v1/user?req=load&user="+this.Oc+"&state="+ql(this,"1.15.4")),b=f)&&(this.ih=!0);b?pa(b,!0,null,this,this.Yn):this.Sa();c||wl(this,this.Ah)}else v("Unable to find CPU component")}x(w,tl);var tk=102,ul=0;k=tl.prototype; +k.ef=function(){return this.ep};k.ee=function(){return this.Oc?this.Oc:""};k.Yn=function(a,b,c){c?(this.Hh=null,this.ih=!1,this.Ha("Unable to load machine state from server (error "+c+(b?": "+ha(b):"")+")")):this.vg=b;this.Sa()};function wl(a,b,c){for(var d=Ja(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Pa(f)){Pa(f,function(){wl(a,b,c)});return}}b.call(a,c)} +function xl(a,b){var c=new H(a,"1.15.4","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ha("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}} +k.Ah=function(a){void 0===a&&(a=this.vg?1:this.Bc);var b=!1,c=!1;this.tk=!1;var d=this.Kh||new H(this,"1.15.4");if(-1==a)b=!0;else if(a>ul){if(d.load(this.vg)){this.sf=new H(this,"1.15.4","failsafe");this.sf.load()&&(yl(this,d),a=2);this.sf.set("timestamp",na());sl(this.sf);var e=this.Bc&&!this.ih;if(1==a||ra("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=g?(this.Ha("Error: "+g),"unable to verify user"== +g&&(sa(""),this.Oc=null)):this.ca(f+": "+g),rl(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&xl(this,c?d:null)}else 2==a&&d.clear()}else xl(this);delete this.vg;delete this.Kh}e=Ja(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.S&&(c=zl(this,g,d,b,c));b=[d,a,c];-1!=a?wl(this,this.Pl,b):this.Pl(b)}; +function zl(a,b,c,d,e){if(!b.Nb){b.Nb=!0;if(b.bc){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.bc(f,d)&&f&&(v("Unable to restore state for "+b.type),a.Zl&&!a.vg?(c.clear(),a.Bc=ul,window&&window.location.reload()):a.tk=!0,b.bc(null),e=!1)}if(!d&&b.kk)for(a=b.kk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e} +k.Pl=function(a){var b=a[0],c=0>a[1];a=a[2];this.Nb=!0;this.qk||(this.ca("PCjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.qk=!0);this.S&&zl(this,this.S,b,c,a);this.tk&&(yl(this,b),b.clear());!c&&this.sf&&(this.sf.clear(),delete this.sf)}; +function yl(a,b){if(ra("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.ee(),d=b.toString(),e={app:"PCjs",ver:"1.15.4"};e.url=a.url;e.user=c;e.type="bug";e.data=d;pa("http://www.pcjs.org/api/v1/report",!0,e)}} +function pl(a,b,c){var d,e="none",f=new H(a,"1.15.4"),g=new H(a,"1.15.4","validate"),h=na();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.15.4");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.S&&a.S.Yb&&(c&&a.S.zb(),d=a.S.Yb(b,c),"object"===typeof d&&f.set(a.S.id,d),c&&(a.S.Nb=!1,!1===d&&(e=null)));for(var h=Ja(a.id),m=0;m<h.length;m++){var n=h[m];n.Nb&&(n.Yb&&(d=n.Yb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.Nb=!1,!1===d&& +(e=null)))}e&&(c?(h=d=!1,b?(a.Oc&&Al(a,a.Oc,f.toString()),sl(g)&&sl(f)||(e=null,d=h=!0)):a.Bc&&(d=!0,h=3==a.Bc),d&&f.clear(h)):e=f.toString());c&&(a.Nb=!1);return e}k.reset=function(){this.na&&this.na.reset&&(this.Fa("Resetting "+this.na.type,!0),this.na.reset());for(var a=Ja(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.na&&c.reset&&(this.Fa("Resetting "+c.type,!0),c.reset())}}; +k.start=function(a,b){for(var c=Ja(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};k.stop=function(a,b){for(var c=Ja(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}}; +k.wb=function(a,b,c,d){var e=this;switch(c){case "save":return this.ta[c]=d,d.onclick=function(){var a=vl(e,!0);if(a){var b=!(!e.Bc||e.Hh),c=pl(e,b);b?Al(e,a,c):e.Ha("Resume disabled, machine state not saved")}},!0;case "reset":return this.ta[c]=d,d.onclick=function(){Fb(e)},!0}return!1}; +function vl(a,b){var c=a.Oc;if(!c){var d;window&&(d=window.localStorage.getItem("user"));c=d;void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email Jeff@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=Bl(a,c))||a.Ha("Your user ID has not been approved."))):b&&a.Ha("Browser local storage is not available")}return c} +function Bl(a,b){a.Oc=null;var c=pa(qa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(sa(c.data),a.Oc=c.data)}catch(e){v(e.message+" ("+d+")")}return a.Oc} +function Al(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=ql(a,"1.15.4");d.data=c;b=pa(qa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Ha("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.Ha(c),sa(""),a.Oc=null)}} +function Fb(a){if(a.Bc&&!a.Hh){var b=1==a.Bc||!ra("Click OK to reset the PCjs machine state.\n(WARNING: All disk changes will be discarded)");pl(a,b,!0);!b&&a.Zl?window&&window.location.reload():(b||(a.ti=!0),a.Ah(ul),a.ti=!1)}else a.reset(),a.S&&Bb(a.S)}function B(a,b,c){a=Ja(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}k.Fa=function(a,b){this.Z&&(b||L(this.Z,this.Z.hm))&&this.Z.message(a)}; +za(function(){for(var a=A(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=y(c),c=A(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=y(f),g=new tl(g,d,!0);Ma(g,f);wl(g,g.Ah)}});wa.show.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=La("Computer",c.id))&&c.qk&&!c.Nb&&c.Ah(-1)}}); +wa.exit.push(function(){for(var a=A(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=La("Computer",c.id))&&c.Nb&&pl(c,!(!c.Bc||c.Hh),!0)}});function Cl(a,b,c,d){var e=pa(a);if(e[0])throw Error(e[1]);return Dl(e[1],a,b,c,d)} +function Dl(a,b,c,d,e){var f=null;if(a){if(e)for(var g=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;f=g.exec(a);){var h=f[2],m=pa(h),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var q=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(q){for(var h=q[0],t,s=/( [a-z]+=)(['"])(.*?)\2/g;t=s.exec(m);)h=0>h.indexOf(t[1])?h.replace(">",t[0]+">"):h.replace(new RegExp(t[1]+"(['\"])(.*?)\\1"),t[0]);q[0]!=h&&(n=n.replace(q[0],h))}else throw c="missing <"+f[1]+"> in "+h, Error(c);}n=n.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(f[0],n);g.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*\]>\s*/g,"")),f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+ (255<a.length?a.substr(0,255)+"...":a));}return[a,f]} -window.embedPC=function(a,b,c,d){var e=c,f=c="",g=null;try{if(g=window.document.getElementById(a)){e||(e="/versions/pcjs/1.15.4/components.xsl");var h="<"==b.substr(0,1)?Hl(b,null,a,d,!1):Gl(b,a,d,!0);c=h[0];var m=h[1];if(m){var h=Gl(e),n=h[1];if(n)if(window.ActiveXObject||"ActiveXObject"in window){var r=m.transformNode(n);r?g.outerHTML=r:f="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var u=new XSLTProcessor;u.importStylesheet(n); -var t=u.transformToFragment(m,window.document);t?g.parentNode.replaceChild(t,g):f="transformToFragment failed"}else f="unable to transform XML: unsupported browser";else f="failed to load XSL file: "+e}else f="failed to load XML file: "+b}else f="failed to find machine element: "+a}catch(v){f=v.message}f&&g&&(a=y(g,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+ga(f)));return f||c};window.enableEvents=function(a){ya=a};window.sendEvent=function(a){xa[a]&&Ba(xa[a])};})();//@ sourceMappingURL=/tmp/pcjs/1.15.4/pc-dbg.map +window.embedPC=function(a,b,c,d){var e=c,f=c="",g=null;try{if(g=window.document.getElementById(a)){e||(e="/versions/pcjs/1.15.4/components.xsl");var h="<"==b.substr(0,1)?Dl(b,null,a,d,!1):Cl(b,a,d,!0);c=h[0];var m=h[1];if(m){var h=Cl(e),n=h[1];if(n)if(window.ActiveXObject||"ActiveXObject"in window){var q=m.transformNode(n);q?g.outerHTML=q:f="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var t=new XSLTProcessor;t.importStylesheet(n); +var s=t.transformToFragment(m,window.document);s?g.parentNode.replaceChild(s,g):f="transformToFragment failed"}else f="unable to transform XML: unsupported browser";else f="failed to load XSL file: "+e}else f="failed to load XML file: "+b}else f="failed to find machine element: "+a}catch(u){f=u.message}f&&g&&(a=A(g,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+ga(f)));return f||c};window.enableEvents=function(a){xa=a};window.sendEvent=function(a){wa[a]&&Aa(wa[a])};})();//@ sourceMappingURL=/tmp/pcjs/1.15.4/pc-dbg.map diff --git a/versions/pcjs/1.15.4/pc.js b/versions/pcjs/1.15.4/pc.js index 02708fe4f..5604ccabc 100644 --- a/versions/pcjs/1.15.4/pc.js +++ b/versions/pcjs/1.15.4/pc.js @@ -1,109 +1,109 @@ -(function(){var g;function h(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function aa(a){return h(a,2)}function ba(a,b){return void 0!==b?h(b,4)+":"+h(a,4):h(a)}function ea(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}function fa(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b} +(function(){var g;function h(a,b){var c="";void 0===b?b=8:8<b&&(b=8);if(isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;){var d=a&15,d=d+(0<=d&&9>=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function aa(a){return h(a,2)}function da(a,b){return void 0!==b?h(b,4)+":"+h(a,4):h(a)}function ea(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}function fa(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b} var ga={"&":"&","<":"<",">":">",'"':""","'":"'"};function ha(a){return a.replace(/[&<>"']/g,function(a){return ga[a]})}function ia(){return Date.now()||+new Date}function ja(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var ka=[31,28,31,30,31,30,31,31,30,31,30,31]; function p(a,b,c,d,e,f){b=!!b;var l=0,k=null,m=ea(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(n.onreadystatechange=void 0,k=n.responseText,200!=n.status&&(l=n.status||-1),d&&e&&e.call(d,m,k,l,f))});if(c){var q="",s;for(s in c)c.hasOwnProperty(s)&&(q&&(q+="&"),q+=s+"="+encodeURIComponent(c[s]));q=q.replace(/%20/g,"+");n.open("POST",a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded"); n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(k=n.responseText,200!=n.status&&(l=n.status||-1),d&&e&&e.call(d,m,k,l,f),a=[l,k]);return a}function la(){return"http://"+(window?window.location.host:"www.pcjs.org")}function t(a){window?window.alert(a):console.log(a)}function ma(a){var b=!1;window&&(b=window.confirm(a));return b}function na(a){window&&window.localStorage.setItem("user",a)} -function oa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var pa={init:[],show:[],exit:[]},qa=!0;function ra(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function u(a){pa.init.push(a)}function sa(a){if(qa)for(var b=0;b<a.length;b++)a[b]()}ra("onload",function(){sa(pa.init)});ra("onpageshow",function(){sa(pa.show)}); -ra(oa("Opera")||oa("iOS")?"onunload":"onbeforeunload",function(){sa(pa.exit)});function v(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.bj=b.comment;this.rn=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.gg=this.id.substr(0,b),this.vh=this.id.substr(b+1)):this.vh=this.id;this[a]=c;this.qh=null;this.Vc=this.yb=this.Cc=this.fh=this.bg=!1;this.oa={};this.Ga=null;this.gg&&this.gg.match(/\d+/);w[w.length]=this}var ta,va=void 0,wa={}; -if(window){va||(va=window.location.search.substr(1));for(var xa,ya=/\+/g,za=/([^&=]+)=?([^&]*)/g;xa=za.exec(va);)wa[decodeURIComponent(xa[1].replace(ya," "))]=decodeURIComponent(xa[2].replace(ya," "))}function Aa(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function y(a,b){b.prototype=Aa(a.prototype)}var w=[];function Ba(){}function Ca(a,b){b||t(a)} -function Da(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):void 0);for(b=0;b<w.length;b++){var d=w[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Ea(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<w.length;c++)if(w[c].id===a)return w[c]}return null} -function Fa(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):void 0);for(d=0;d<w.length;d++)if(c)c==w[d]&&(c=null);else if(!(a!=w[d].type||b&&w[d].id.indexOf(b)))return w[d]}return null}function z(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){t(c.message+" ("+a+")")}return b} -function A(a,b){var c,d;d=B(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++){var e,f;f=d[c].childNodes;for(e=0;e<f.length;e++){var l=f[e];if(l.nodeType===window.document.ELEMENT_NODE){var k=l.getAttribute("class");if(k){var m,n;n=k.split(" ");for(m=0;m<n.length;m++)switch(k=n[m],k){case "pcjs-input":case "pcjs-output":(n=z(l))&&n.binding&&a.sb(k,n.type,n.binding,l),n=[]}}}}}} +function oa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var pa={init:[],show:[],exit:[]},qa=!0;function ra(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function u(a){pa.init.push(a)}function ta(a){if(qa)for(var b=0;b<a.length;b++)a[b]()}ra("onload",function(){ta(pa.init)});ra("onpageshow",function(){ta(pa.show)}); +ra(oa("Opera")||oa("iOS")?"onunload":"onbeforeunload",function(){ta(pa.exit)});function v(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.fj=b.comment;this.vn=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.kg=this.id.substr(0,b),this.Ah=this.id.substr(b+1)):this.Ah=this.id;this[a]=c;this.vh=null;this.Xc=this.zb=this.Ec=this.kh=this.fg=!1;this.oa={};this.Ha=null;this.kg&&this.kg.match(/\d+/);w[w.length]=this}var ua=void 0,va={}; +if(window){ua||(ua=window.location.search.substr(1));for(var wa,xa=/\+/g,ya=/([^&=]+)=?([^&]*)/g;wa=ya.exec(ua);)va[decodeURIComponent(wa[1].replace(xa," "))]=decodeURIComponent(wa[2].replace(xa," "))}function za(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function y(a,b){b.prototype=za(a.prototype)}var w=[]; +function Aa(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<w.length;b++){var d=w[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Ba(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<w.length;c++)if(w[c].id===a)return w[c]}return null} +function Ca(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<w.length;d++)if(c)c==w[d]&&(c=null);else if(!(a!=w[d].type||b&&w[d].id.indexOf(b)))return w[d]}return null}function z(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("({"+a+"})")}catch(c){t(c.message+" ("+a+")")}return b} +function A(a,b){var c,d;d=B(b.parentNode,"pcjs-control");for(c=0;c<d.length;c++){var e,f;f=d[c].childNodes;for(e=0;e<f.length;e++){var l=f[e];if(l.nodeType===window.document.ELEMENT_NODE){var k=l.getAttribute("class");if(k){var m,n;n=k.split(" ");for(m=0;m<n.length;m++)switch(k=n[m],k){case "pcjs-input":case "pcjs-output":(n=z(l))&&n.binding&&a.tb(k,n.type,n.binding,l),n=[]}}}}}} function B(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c} -v.prototype={toString:function(){return this.name?this.name:this.id||this.type},sb:function(a,b,c,d){switch(c){case "clear":return this.oa[c]||(this.oa[c]=d,d.onclick=function(a){return function(){a.oa.print&&(a.oa.print.value="")}}(this)),!0;case "print":return this.oa[c]||(this.oa[c]=d,d.value="",Ba=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),Ca=function(a,b,c){Ba(a, -"notice",c)},ta=d),!0}return!1},log:function(){},status:function(a){Ga(this,this.vh+": "+a)},error:function(a){t(a)},Ma:function(a){!this.Vc&&(this.bg=!1!==a)&&(this.name&&this.log("ready"),a=this.qh,this.qh=null,a&&a())},Rb:function(){return this.yb=!0},Ib:function(a,b){b&&(this.yb=!1);return!0}};function Ha(a,b){if(a.fh)return a.Cc&&(a.Cc=!1),a.fh=!1;if(a.Vc)return Ga(a,a.toString()+" error"),!1;a.Cc=b;return a.Cc}function Ia(a,b){b&&(a.bg?b():a.qh=b);return a.bg} -function Ja(a,b){a.Vc=!0;C(a,"Fatal error: "+b)}function C(a,b,c){Ca(b,c,a.id)}function Ga(a,b){Ba(b,void 0,a.id)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);var Ka="undefined"!==typeof window.Sk;function La(a){v.call(this,"Panel",a,La)}y(v,La);La.prototype.sb=function(a,b,c,d){return this.Ea&&this.Ea.sb(a,b,c,d)||this.ja&&this.ja.sb(a,b,c,d)||this.Za&&this.Za.sb(a,b,c,d)?!0:v.prototype.sb.call(this,a,b,c,d)}; -La.prototype.dc=function(a,b,c,d){this.Ea=a;this.ja=c;this.Ga=d;this.Za=D(a,"Keyboard")};La.prototype.Rb=function(a,b){b||Ma();return!0};La.prototype.Ib=function(){return!0};function Ma(){for(var a=!1,b=B(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=Ea(e.id);f||(a=!0,f=new La(e));A(f,d);a&&f.Ma()}}u(Ma); -function Na(a,b,c){v.call(this,"Bus",a,Na);this.ja=b;this.Ga=c;this.cf=a.buswidth||20;this.Je=this.ub=(1<<this.cf)-1;this.Hb=20>=this.cf?12:14;this.lc=1<<this.Hb;this.Zi=this.lc>>2;this.Ya=this.lc-1;this.Tf=(this.Je+this.lc)/this.lc|0;this.Nd=this.Tf-1;this.Gf=[];this.Hf=[];this.xh();this.Ma()}y(v,Na);Na.prototype.xh=function(){this.xa=Array(this.Tf);for(var a=0;a<this.Tf;a++)this.xa[a]=new Oa(a*this.lc);this.ja.xh(this.xa,this.Je,this.Hb,this.Ya,this.Nd);this.ja.ub=this.ub}; -Na.prototype.reset=function(){Pa(this,!0)};function Qa(a,b,c,d,e){if(!(b&a.Ya||!c||c&a.Ya)){for(var f=b>>a.Hb;0<c&&f<a.xa.length;){var l=a.xa[f];if(void 0!==l&&l.size)return Ra(a,1,b,c);b=f*a.lc;a.xa[f++]=new Oa(b,a.lc,d,e);c-=a.lc}return!0}return Ra(a,2,b,c)}function Pa(a,b){if(void 0!==b&&20<a.cf){var c=a.ub&-1048577|(b?1048576:0);c!=a.ub&&(a.ub=c,a.ja&&(a.ja.ub=c))}} -Na.prototype.Fg=function(a,b,c){if(!(a&this.Ya||!b||b&this.Ya)){for(var d=a>>this.Hb;0<b;){var e=this.xa[d];if(!e.ea)return Ra(this,5,a,b);e.Dd(c);b-=this.lc;d++}return!0}return Ra(this,3,a,b)};function Ta(a,b,c){if(!(b&a.Ya||!c||c&a.Ya)){for(var d=b>>a.Hb;0<c;)b=d*a.lc,a.xa[d++]=new Oa(b),c-=a.lc;return!0}return Ra(a,4,b,c)}function Ua(a,b){return a.xa[(b&a.ub)>>a.Hb].zi(b&a.Ya)}function Va(a,b){var c=b&a.Ya,d=(b&a.ub)>>a.Hb;return c!=a.Ya?a.xa[d].vn(c):a.xa[d++].zi(c)|a.xa[d&a.Nd].zi(0)<<8} -function Wa(a,b,c){a.xa[(b&a.ub)>>a.Hb].Hi(b&a.Ya,c&255)}function Xa(a,b,c){var d=b&a.Ya;b=(b&a.ub)>>a.Hb;d!=a.Ya?a.xa[b].Hn(d,c&65535):(a.xa[b++].Hi(d,c&255),a.xa[b&a.Nd].Hi(0,c>>8&255))}function Ya(a){for(var b=0,c=[],d=0;d<a.Tf;d++){var e=a.xa[d];if(e.Na||e.fj){c[b++]=d;var f=c,l=b++;a:if(e=e.save()){for(var k=0,m=0,n=[];k<e.length;){for(var q=e[k],s=k+1;s<e.length&&e[s]===q;)s++;n[m++]=s-k;n[m++]=q;k=s}if(n.length<e.length){e=n;break a}}f[l]=e}}c[b]=a.Je==a.ub;return c} -function Za(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,l=e+d,k=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=l;n++)void 0!==f.Gf[n]?t("Input port "+h(n,4)+" registered by "+f.Gf[n][0].id+", ignoring "+k.id):f.Gf[n]=[k,m,!1,!1]}}function $a(a,b,c){var d=255;a=a.Gf[b];void 0!==a&&a[1]&&(d=a[1].call(a[0],b,c));return d} -function ab(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,l=e+d,k=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=l;n++)void 0!==f.Hf[n]?t("Output port "+h(n,4)+" registered by "+f.Hf[n][0].id+", ignoring "+k.id):f.Hf[n]=[k,m,!1,!1]}}function bb(a,b,c,d){a=a.Hf[b];void 0!==a&&a[1]&&a[1].call(a[0],b,c,d)}function Ra(a,b,c,d){a.error("Memory block error ("+b+","+h(c)+","+h(d)+")");return!1} -function Oa(a,b,c,d){this.$i=b;this.la=null;this.offset=0;this.hj=c;this.ea=null;this.Na=this.fj=!1;if(b)if(d)this.ea=d,a=[d.Jd,a-d.Wa],this.la=a[0],this.offset=a[1],this.Dd(d.Ke);else if(Ka)this.buffer=new window.Sk(b),this.Oi=new window.Sn(this.buffer,0,b),this.ej=new window.Ln(this.buffer,0,b),this.la=new window.Nn(this.buffer,0,b>>2),this.Dd(cb);else{this.la=Array(b>>2);for(d=0;d<this.la.length;d++)this.la[d]=0;this.Dd(db)}else this.Dd()} -Oa.prototype={xg:function(){return 0},Ig:function(){},tn:function(a){return this.Oi[a]},xn:function(a){return this.ej.getUint16(a,!0)},Fn:function(a,b){this.Oi[a]=b;this.Na=!0},Jn:function(a,b){this.ej.setUint16(a,b,!0);this.Na=!0},sn:function(a){return this.la[a>>2]>>((a&3)<<3)&255},wn:function(a){var b=a>>2;a=(a&3)<<3;var c=this.la[b]>>a;return 24>a?c&65535:c&255|(this.la[b+1]&255)<<8},En:function(a,b){var c=a>>2,d=(a&3)<<3;this.la[c]=this.la[c]&~(255<<d)|b<<d;this.Na=!0},In:function(a,b){var c= -a>>2,d=(a&3)<<3;24>d?this.la[c]=this.la[c]&~(65535<<d)|b<<d:(this.la[c]=this.la[c]&16777215|b<<24,c++,this.la[c]=this.la[c]&4294967040|b>>8);this.Na=!0},save:function(){var a,b;if(this.ea)a=null;else if(Ka)for(a=Array(this.$i>>2),b=0;b<a.length;b++)a[b]=this.la[b];else a=this.la;return a},restore:function(a){if(this.ea)return null===a;if(this.$i==a.length<<2){var b;if(Ka)for(b=0;b<this.la.length;b++)this.la[b]=a[b];else this.la=a;return this.Na=!0}return!1},Dd:function(a,b){a||(a=[]);void 0===b&& -(b=!0);var c=a;this.tc=c[0]?c[0]:this.xg;this.un=c[1]?c[1]:this.xg;b&&(this.zi=c[0]?c[0]:this.xg,this.vn=c[1]?c[1]:this.xg);c=a;this.vc=c[2]&&!this.hj?c[2]:this.Ig;this.Gn=c[3]&&!this.hj?c[3]:this.Ig;b&&(this.Hi=c[2]?c[2]:this.Ig,this.Hn=c[3]?c[3]:this.Ig)}};var db=[Oa.prototype.sn,Oa.prototype.wn,Oa.prototype.En,Oa.prototype.In];if(Ka)var cb=[Oa.prototype.tn,Oa.prototype.xn,Oa.prototype.Fn,Oa.prototype.Jn]; -function eb(a,b){v.call(this,"CPU",a,eb);var c=a.multiplier||1;this.ad=a.cycles||b;this.vd=c;this.jg=Math.round(this.ad/1E4)/100;this.bf=this.jg*this.vd;this.pc=this.yb=!1;this.eh=a.autoStart;c=wa.autostart;void 0!==c&&(this.eh="true"==c?!0:"false"==c?!1:null);this.ag=!1;this.og=this.ve=0;this.pg=a.csStart;this.ef=a.csInterval;this.ff=a.csStop;var d=this;this.wm=function(){fb(d)};this.Ma()}y(v,eb);g=eb.prototype; -g.dc=function(a,b,c,d){this.ma=b;this.Ga=d;this.Ea=a;var e=D(a,"Video");e&&(this.Ye=function(){hb(e)},this.Ae=function(){e.Ae()});this.ga=D(a,"ChipSet");this.Ma()};g.reset=function(){};g.save=function(){return null};g.restore=function(){return!1};g.Rb=function(a,b){if(!b){if(a&&this.restore){ib(this);if(!this.restore(a))return!1;jb(this)}else this.reset();ta&&t("No debugger detected")}this.yb=!0;!kb(this)&&this.Ga&&this.Ga.Xn();this.Ye();this.Xe();return!0}; -g.Ib=function(a){this.yb=!1;return a&&this.save?this.save():!0};function kb(a){return!0===a.eh||null===a.eh&&void 0===a.oa.run?(fb(a),!0):!1}g.Ae=function(){};g.nj=function(){return 0};function jb(a){void 0===a.pg&&(a.pg=0);void 0===a.ef&&(a.ef=-1);void 0===a.ff&&(a.ff=-1);a.ag=0<=a.pg&&0<a.ef;a.ag&&(a.og=0,a.ve=a.pg-a.ae)}function E(a,b,c,d){void 0!==a.oa[b]&&(void 0===d&&(d=4),void 0===c&&(Ja(a,"Register "+b+" is invalid"),lb(a)),c=h(c,d),a.oa[b].innerHTML!=c&&(a.oa[b].innerHTML=c))}g.Xe=function(){}; -g.Ye=function(){};g.sb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.oa[c]=d;d.onclick=function(){e.pc?lb(e,!0):fb(e,!0)};a=!0;break;case "reset":this.oa[c]=d;d.onclick=function(){e.Ea&&mb(e.Ea)};a=!0;break;case "speed":this.oa[c]=d;a=!0;break;case "setSpeed":this.oa[c]=d,d.onclick=function(){nb(e,e.vd<<1,!0)},d.innerHTML=this.bf.toFixed(2)+"Mhz",a=!0}return a};function ob(a,b,c){a.ae+=b;c&&(a.$c=a.A=0)} -function pb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.vd&&a.Ic&&(d=a.Ic/a.jg);a.tj=Math.round(1E3/30);a.pm=Math.floor(a.ad/c*d);a.Eh=Math.floor(a.ad/30*d);a.xj=Math.floor(a.ad/60*d);a.wj=Math.floor(a.ad/2*d);b||(a.jf=a.Eh,a.hf=a.xj,a.gf=a.wj);a.si=0}function qb(a,b){var c=a.ae+a.yd+a.$c-a.A;b&&1<a.vd&&a.Ic>a.jg&&(c=Math.round(c/a.vd));return c}function ib(a){a.Ic=0;a.mg=1;a.ae=a.yd=a.$c=a.A=0;jb(a);nb(a,1)} -function nb(a,b,c){void 0!==b&&(0.8>a.Ic/a.bf&&(b=1),a.vd=b,a.bf=a.jg*a.vd,b=a.bf.toFixed(2)+"Mhz",a.oa.setSpeed&&(a.oa.setSpeed.innerHTML=b),Ga(a,"target speed: "+b),c&&a.Ae());ob(a,a.yd);a.yd=0;a.ue=ia();a.Yd=0;pb(a)} -function fb(a,b){if(Ha(a,!0)){a.pc||(nb(a),a.Ea&&a.Ea.start(a.ue,qb(a)),a.pc=!0,a.ga&&sb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Halt"),b&&a.Ae());a.si>=a.ad&&pb(a,!0);a.kf=0;a.lg=ia();if(a.Yd){var c=a.lg-a.Yd;c>a.tj&&(a.ue+=c,a.ue>a.lg&&(a.ue=a.lg))}try{do{a.Ok(a.ag?1:Math.round(a.pm/a.mg));var d=a.$c-a.A;a.yd+=d;a.kf+=d;ob(a,0,!0);var c=a,e=d;if(c.ag){var f=!1;c.og=c.og+c.nj()|0;c.ve-=e;0>=c.ve&&(c.ve+=c.ef,f=!0);0<=c.ff&&c.ff<=qb(c)&&(c.ef=c.ff=-1,jb(c),lb(c),f=!0);f&&Ga(c,qb(c)+" cycles: checksum="+ -h(c.og))}a.hf-=d;0>=a.hf&&(a.hf+=a.xj,a.Ye());a.gf-=d;0>=a.gf&&(a.gf+=a.wj,a.Xe());a.jf-=d;if(0>=a.jf){a.jf+=a.Eh;break}}while(a.pc)}catch(l){lb(a);a.Ye();a.Xe();a.Ea&&a.Ea.stop(ia(),qb(a));Ha(a,!1);Ja(a,l.message);return}d=setTimeout;c=a.wm;a.Yd=ia();e=a.tj;a.kf&&(e=Math.round(e*a.kf/a.Eh));e-=a.Yd-a.lg;if(f=a.Yd-a.ue)a.Ic=Math.round(a.yd/(10*f))/100,864E5<=f&&(a.ae=0,a.ga&&tb(a.ga,!0),nb(a));if(0>e||a.Ic<a.bf)e=0;a.si+=a.kf;a.Yd+=e;d(c,e)}else a.Ye(),a.Xe(),a.Ea&&a.Ea.stop(ia(),qb(a))} -function lb(a,b){a.Cc&&(a.fh=!0);a.$c-=a.A;a.A=0;ob(a,a.yd);a.yd=0;a.pc&&(a.pc=!1,a.ga&&sb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Run"));a.ih=b}g.Ok=function(){return 0}; -var ub=[1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1, -0,0,1,1,0,1,0,0,1];function vb(a,b,c){this.ja=a;this.cb=this.ua=0;this.Yc=65535;this.sc=this.ic=0;this.Cg=b;wb(this,c)}function xb(a){this.ua=a;this.Yc=65535;return this.cb=a<<4} -function yb(a){var b,c;a&4?(b=this.ja.ze.cb,c=this.ja.ze.Yc):(b=this.ja.Pc,c=this.ja.Ie);b+=a&65528;if(b+7<=c){this.Gc=zb;this.Nb=Ab;this.ja.A-=15;c=F(this.ja,b+0);var d=F(this.ja,b+4),e=F(this.ja,b+2)|(d&255)<<16;F(this.ja,b+6);b=d&7936;if(b&4096){2048==(b&2560)&&(this.Nb=Bb);if(b&2048||!(b&512))this.Nb=Cb;this.ua=a;this.Yc=c;this.ic=d;this.sc=(d&24576)>>13;return this.cb=e}if(b&&768>=b)return this.ua=a,this.Yc=c,this.ic=d,this.sc=(d&24576)>>13,this.cb=e}return-1} -function Db(a){return this.cb+a}function Eb(a){return this.cb+a}function zb(a,b,c){return a+b<=this.Yc?this.cb+a:Bb.call(this,0,0,c)}function Bb(a,b,c){c||Fb.call(this.ja,13,0);return-1}function Ab(a,b,c){return a+b<=this.Yc?this.cb+a:Cb.call(this,0,0,c)}function Cb(a,b,c){c||Fb.call(this.ja,13,0);return-1}vb.prototype.save=function(){return[this.ua,this.cb,this.Yc,this.ic,this.sc,this.Cg]}; -vb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ua=a[0],this.cb=a[1],this.Yc=a[2],this.ic=a[3],this.sc=a[4],this.Cg=a[5])};function wb(a,b){void 0===b&&(b=!!(a.ja.cd&1));b?(a.load=yb,a.Gc=zb,a.Nb=Ab):(a.load=xb,a.Gc=Db,a.Nb=Eb)} -function Gb(a){this.Ca=a.model||8088;var b=0;switch(this.Ca){default:case 8088:b=4772727;break;case 80286:b=6E6}eb.call(this,a,b);this.Li=61442;this.Ef=4;this.we=255;this.ti=4;this.Z=5;this.na=6;this.ba=7;this.ca=8;this.P=9;this.U=11;this.V=12;this.Zd=4;this.zj=60;this.Aj=83;this.Ab=3;this.$a=9;this.Pb=16;this.sg=1;this.Ej=19;this.Gj=28;this.Ij=16;this.Hj=21;this.Fj=37;this.Cj=2;this.Mh=9;this.Dj=5;this.Bj=33;this.Oh=10;this.Nh=8;this.of=3;this.nf=15;this.Wj=51;this.Xj=1;this.Yj=2;this.Zj=4;this.Vj= -32;this.ak=this.Ph=15;this.Bb=16;this.Cb=4;this.ck=11;this.bk=18;this.$j=24;this.kb=4;this.dk=2;this.Qh=16;this.ek=17;this.Vh=18;this.fk=19;this.Uh=5;this.Wh=6;this.kk=2;this.jk=8;this.hk=9;this.Yh=this.Xh=this.gk=this.ik=10;this.Kj=80;this.Mj=144;this.Jj=86;this.Lj=154;this.Oj=101;this.Qj=165;this.Nj=107;this.Pj=171;this.mk=70;this.ok=113;this.lk=76;this.nk=124;this.Sj=80;this.Uj=128;this.Rj=86;this.Tj=134;this.qf=3;this.pf=16;this.ci=10;this.bi=8;this.pk=51;this.Qb=8;this.qk=17;this.rk=36;this.Xb= -11;this.sk=16;this.rf=10;this.qb=2;this.Jh=18;this.Kh=9-this.qb;this.Lh=17-this.qb;this.Rh=12;this.Sh=9-this.qb;this.Th=13-this.qb;this.Zh=18;this.$h=9-this.qb;this.ai=17-this.qb;this.di=15;this.ei=9-this.qb;this.fi=15-this.qb;this.ji=11;this.ki=9-this.qb;this.li=10-this.qb;this.tk=8;this.wk=12;this.uk=18;this.vk=17;this.xk=15;this.hi=8;this.gi=20;this.ii=2;this.oi=3;this.sf=9;this.ni=5;this.mi=11;this.qi=4;this.pi=17;this.yk=11;this.Ja=Hb.slice();80186<=this.Ca&&(this.we=31,this.Ja[15]=G,this.Ja[96]= -Ib,this.Ja[97]=Jb,this.Ja[98]=Kb,this.Ja[99]=G,this.Ja[100]=G,this.Ja[101]=G,this.Ja[102]=G,this.Ja[103]=G,this.Ja[104]=Lb,this.Ja[105]=Mb,this.Ja[106]=Nb,this.Ja[107]=Ob,this.Ja[108]=Pb,this.Ja[109]=Qb,this.Ja[110]=Rb,this.Ja[111]=Sb,this.Ja[192]=Tb,this.Ja[193]=Ub,this.Ja[200]=Vb,this.Ja[200]=Wb,this.Ja[241]=Xb,Yb[7]=Zb,$b[7]=Zb,80286<=this.Ca&&(this.Li=2,this.Ef=0,this.Ja[15]=ac,this.Ja[99]=bc,this.Ja[84]=cc,this.P=this.ca=this.ba=this.na=this.Z=this.ti=0,this.V=this.U=1,this.Zd=3,this.zj=14,this.Aj= -16,this.Ab=2,this.Pb=this.$a=7,this.sg=0,this.Ej=7,this.Gj=13,this.Ij=7,this.Hj=11,this.Fj=16,this.Cj=3,this.Mh=6,this.Dj=2,this.Bj=13,this.Nh=this.Oh=5,this.of=2,this.nf=7,this.Wj=23,this.Xj=0,this.Yj=1,this.Zj=3,this.Vj=17,this.Ph=7,this.ak=11,this.Bb=7,this.Cb=3,this.ck=7,this.bk=11,this.$j=15,this.kb=2,this.dk=3,this.Qh=7,this.fk=this.Vh=this.ek=8,this.Wh=this.Uh=4,this.kk=2,this.jk=3,this.hk=5,this.ik=2,this.gk=3,this.Xh=5,this.Yh=3,this.Kj=14,this.Mj=22,this.Jj=17,this.Lj=25,this.Oj=17,this.Qj= -25,this.Nj=20,this.Pj=28,this.mk=13,this.ok=21,this.lk=16,this.nk=24,this.Sj=13,this.Uj=21,this.Rj=16,this.Tj=24,this.qf=2,this.pf=7,this.bi=this.ci=5,this.pk=19,this.qk=this.Qb=5,this.rk=17,this.Xb=3,this.sk=5,this.rf=3,this.qb=0,this.Jh=8,this.Kh=5,this.Lh=9,this.Sh=this.Rh=5,this.Th=4,this.$h=this.Zh=5,this.ai=4,this.di=7,this.ei=5,this.fi=8,this.ji=3,this.ki=4,this.li=3,this.wk=this.tk=11,this.vk=this.uk=15,this.xk=7,this.hi=5,this.gi=8,this.ii=0,this.oi=2,this.sf=6,this.ni=3,this.mi=6,this.qi= -3,this.yk=this.pi=5));this.Uk=[];this.Mi=[];this.Ug=0;this.xa=[];this.Je=this.ub=this.Hb=this.Ya=this.Nd=0;this.S=this.fl;this.T=this.gl;this.N=this.hm;this.O=this.im;this.Q=this.Cn;this.R=this.Dn;dc(this)}y(eb,Gb);g=Gb.prototype;g.xh=function(a,b,c,d,e){this.xa=a;this.Je=this.ub=b;this.Hb=c;this.Ya=d;this.Nd=e};g.reset=function(){this.pc&&lb(this);dc(this);ib(this);this.Vc=!1}; -function dc(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.cd=65520;a.Qc=0;a.ke=1023;a.oc={ui:0,ua:0,ic:0,ig:-1};a.Da=new vb(a,"CS");a.Zb=new vb(a,"DS");a.Sb=new vb(a,"SS");a.fb=new vb(a,"ES");a.Mk=new vb(a,"ZERO");ec(a,0,65535);80286<=a.Ca&&(a.Pc=a.Ie=0,a.ze=new vb(a,"LDT",!0),a.Eg=new vb(a,"TSS",!0),a.rb=new vb(a,"VER",!0),ec(a,65520,61440),a.Da.cb=16711680);fc(a,0);gc(a);a.Ta=0;a.lb=a.wf=-1;a.Pf=0;a.da=a.Aa=-1;a.C=a.Zb;a.M=a.Sb;a.Y=a.pa=0} -g.nj=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.qa+this.Da.ua+this.Zb.ua+this.Sb.ua+this.fb.ua+hc(this)|0};function ic(a,b){var c=a.Mi[b];if(void 0!==c){for(;0<c.length;)c.pop()(--a.Ug);delete a.Mi[b]}}function gc(a,b){void 0===b&&(b=!!(a.cd&1));jc=b?kc:lc;wb(a.Da,b);wb(a.Zb,b);wb(a.Sb,b);wb(a.fb,b)} -g.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.X,this.H,this.F,this.D]);a.set(1,[this.qa,this.Da.save(),this.Zb.save(),this.Sb.save(),this.fb.save(),hc(this),null!=this.Pc?[this.cd,this.Pc,this.Ie,this.Qc,this.ke,this.ze.save(),this.Eg.save()]:null]);a.set(2,[this.C.Cg,this.M.Cg,this.Y,this.pa,this.Ta,this.da,this.Aa]);a.set(3,[this.mg,this.ae,this.vd]);a.set(4,Ya(this.ma));return a.data()}; -g.restore=function(a){var b;b=a[0];this.G=b[0];this.B=b[1];this.I=b[2];this.J=b[3];this.X=b[4];this.H=b[5];this.F=b[6];this.D=b[7];b=a[1];this.Da.restore(b[1]);this.Zb.restore(b[2]);this.Sb.restore(b[3]);this.fb.restore(b[4]);fc(this,b[5]);var c=b[6];c&&c.length&&(this.cd=c[0],this.Pc=c[1],this.Ie=c[2],this.Qc=c[3],this.ke=c[4],this.ze.restore(c[5]),this.Eg.restore(c[6]),gc(this));I(this,b[0]);b=a[2];this.C=pc(this,b[0]);this.M=pc(this,b[1]);this.Y=b[2];this.pa=b[3];this.Ta=b[4];this.da=b[5];this.Aa= -b[6];b=a[3];this.mg=b[0];this.ae=b[1];nb(this,b[2]);a:{b=this.ma;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.Zi){for(var f=0,l=Array(b.Zi),k=0;k<e.length-1;)for(var m=e[k++],n=e[k++];m--;)l[f++]=n;e=l}f=b.xa[d];if(!f||!f.restore(e)){b.error("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Pa(b,a[c]);b=!0}return b}; -function pc(a,b){switch(b){case "CS":return a.Da;case "DS":return a.Zb;case "SS":return a.Sb;case "ES":return a.fb;case "ZERO":return a.Mk;default:return[0,b,0,0,""]}}function qc(a,b){var c;if(a.cd&1){if(c=a.Qc+(b<<3),c+7<=a.ke){a.oc.ui=F(a,c);a.oc.ua=F(a,c+2);a.oc.ic=F(a,c+4);switch(a.oc.ic&7936){case 1536:a.oc.ig=-17153;break;case 1792:a.oc.ig=-16641;break;default:return!1}return!0}}else if(c=a.Qc+(b<<2),c+7<=a.ke)return a.oc.ui=F(a,c),a.oc.ua=F(a,c+2),a.oc.ig=-769,!0;return!1} -function rc(a,b){a.Ba=a.Da.load(b)+a.qa;a.Y|=a.Ef}function sc(a,b){a.Zb.load(b);a.Y|=a.Ef}function tc(a,b){a.Sb.load(b);a.Y|=4}function uc(a,b){a.fb.load(b);a.Y|=a.Ef}function I(a,b){a.Ba=a.Da.cb+(a.qa=b&65535)}function ec(a,b,c){a.Ba=a.Da.load(c)+(a.qa=b)}function J(a,b){a.Ba=a.Da.cb+(a.qa=a.qa+b&65535)}function vc(a){return a.W&a.$?1:0}function wc(a){return ub[a.fa&255]?4:0}function xc(a){return(a.fa^a.ha)&16?16:0}function yc(a){return a.W&a.$-1?0:64}function zc(a){return a.fa&a.$>>1?128:0} -function Ac(a){return(a.fa^a.ha^a.fa>>1)&a.$>>1?2048:0}function Bc(a){a.W&=~a.$}function Cc(a){a.ha=a.fa&16|a.ha&-17}function Dc(a){a.W|=a.$-1}function Ec(a){a.fa&=~a.$;a.ha=a.fa&32896|a.ha&-32897}function Fc(a){a.W|=a.$}function Gc(a){a.ha=~(a.fa&16)&16|a.ha&-17}function Hc(a){a.W&=~(a.$-1)}function Ic(a){zc(a)||(a.fa^=a.$>>1|a.$>>2,a.ha^=32896)}function Jc(a){a.fa|=a.$;a.ha=a.fa&32896|a.ha&-32897}function hc(a){return a.Fa&-2262|vc(a)|wc(a)|xc(a)|yc(a)|zc(a)|Ac(a)} -function fc(a,b){a.$=256;a.W=a.fa=a.ha=0;b&1&&Fc(a);b&4||(a.fa|=1);b&16&&(a.ha|=16);b&64||Dc(a);b&128&&Ic(a);b&2048&&Jc(a);a.Fa=a.Fa&-1793|b&1792|a.Li;a.Fa&256&&(a.Ta|=2,a.Y|=4)} -g.sb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.oa[c]=d;e=!0;break;default:e=eb.prototype.sb.call(this,a,b,c,d)}return e};function Kc(a,b){return a.xa[(b&a.ub)>>a.Hb].tc(b&a.Ya)} -function F(a,b){var c=b&a.Ya,d=(b&a.ub)>>a.Hb;a.A-=a.ti;return c!=a.Ya?a.xa[d].un(c):a.xa[d++].tc(c)|a.xa[d&a.Nd].tc(0)<<8}function Lc(a,b,c){a.xa[(b&a.ub)>>a.Hb].vc(b&a.Ya,c&255)}function Mc(a,b,c){var d=b&a.Ya;b=(b&a.ub)>>a.Hb;a.A-=a.ti;d!=a.Ya?a.xa[b].Gn(d,c&65535):(a.xa[b++].vc(d,c&255),a.xa[b&a.Nd].vc(0,c>>8&255))}g.fl=function(a,b){this.Af=a;this.da=a.Gc(this.tf=b,0);return this.Y&1?0:Kc(this,this.da)};g.gl=function(a,b){this.Af=a;this.da=a.Gc(this.tf=b,1);return this.Y&1?0:F(this,this.da)}; -g.hm=function(a,b){this.Af=a;this.Aa=this.da=a.Gc(this.tf=b,0);return this.Y&1?0:Kc(this,this.da)};g.im=function(a,b){this.Af=a;this.Aa=this.da=a.Gc(this.tf=b,1);return this.Y&1?0:F(this,this.da)};g.Cn=function(a){this.Y&2||Lc(this,this.Af.Nb(this.tf,1),a)};g.Dn=function(a){this.Y&2||Mc(this,this.Af.Nb(this.tf,2),a)};g.aa=function(){var a=Kc(this,this.Ba);this.Ba=this.Da.cb+(this.qa=this.qa+1&65535);return a}; -g.L=function(){var a=Kc(this,this.Ba)<<24>>24;this.Ba=this.Da.cb+(this.qa=this.qa+1&65535);return a&65535};g.K=function(){var a=F(this,this.Ba);this.Ba=this.Da.cb+(this.qa=this.qa+2&65535);return a};g.za=function(){var a=this.X;this.X=this.X+2&65535;return F(this,this.Sb.Gc(a,1))};function K(a,b){var c=a.X=a.X-2&65535;Mc(a,a.Sb.Nb(c,1),b)} -g.Xe=function(){E(this,"AX",this.G);E(this,"BX",this.B);E(this,"CX",this.I);E(this,"DX",this.J);E(this,"SP",this.X);E(this,"BP",this.H);E(this,"SI",this.F);E(this,"DI",this.D);E(this,"CS",this.Da.ua);E(this,"DS",this.Zb.ua);E(this,"SS",this.Sb.ua);E(this,"ES",this.fb.ua);E(this,"IP",this.qa);var a=hc(this);E(this,"PS",a);E(this,"C",a&1?1:0,1);E(this,"P",a&4?1:0,1);E(this,"A",a&16?1:0,1);E(this,"Z",a&64?1:0,1);E(this,"S",a&128?1:0,1);E(this,"T",a&256?1:0,1);E(this,"I",a&512?1:0,1);E(this,"D",a&1024? -1:0,1);E(this,"O",a&2048?1:0,1);this.oa.speed&&(this.oa.speed.innerHTML=this.pc&&this.Ic?this.Ic.toFixed(2)+"Mhz":"Stopped")}; -g.Ok=function(a){this.ih=!0;this.$c=this.A=a;this.ga&&tb(this.ga);a||!this.Ga||this.Ga.Vn(this.Ga.On)||(this.Y|=4);do{if(a=this.Y&240)this.pa|=a;else if(this.vg=this.Ba,this.da=this.Aa=-1,this.C=this.Zb,this.M=this.Sb,this.pa=this.Y&256,this.Ta){a:{if(!(this.Y&4))if(this.Ta&1&&this.Fa&512){if(a=Nc(this.ga),-1<=a&&(this.Ta&=-2,0<=a)){this.Ta&=-5;Oc.call(this,a,null,11);break a}}else if(this.Ta&2){this.Ta&=-3;Oc.call(this,1,null,11);break a}if(a=this.Ta&8){a=this.ga;for(var b=!1,c=0;c<a.va;c++)for(var d= -a.va[c],e=0;e<d.Ia.length;e++){var f=d.Ia[e];f.Zc||(Pc(a,f),f.Zc||(b=!0))}a=!b}a&&(this.Ta&=-9)}if(this.Ta&4){this.Y=this.A=0;break}}this.Y=0;this.Ja[this.aa()].call(this)}while(0<this.A);return this.ih?this.$c-this.A:void 0===this.ih?0:-1};u(function(){for(var a=B(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Gb(d);A(d,c)}});function Qc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=a+b)&255} -function Rc(a,b){this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a|b)&255}function Sc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return this.W&255}function Tc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return this.W&255} -function Uc(a,b){this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a&b)&255}function Vc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=a-b)&255}function Wc(a,b){this.$=256;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a^b)&255}function Xc(a,b){this.ha=a^b;this.$=256;this.W=this.fa=a-b;this.A-=0>this.Aa?0>this.da?this.Ab:this.Mh:this.$a;this.Y|=2;return a} -function Yc(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=a+b)&65535}function Zc(a,b){this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a|b)&65535}function $c(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return this.W&65535} -function ad(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return this.W&65535}function bd(a,b){this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a&b)&65535}function cd(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=a-b)&65535} -function dd(a,b){this.$=65536;this.A-=0>this.Aa?0>this.da?this.Ab:this.$a:this.Pb;return(this.W=this.fa=this.ha=a^b)&65535}function ed(a,b){this.ha=a^b;this.$=65536;this.W=this.fa=a-b;this.A-=0>this.Aa?0>this.da?this.Ab:this.Mh:this.$a;this.Y|=2;return a}function fd(a,b){this.W=this.W&this.$-1|(a&b?this.$:0);(a^a>>1)&b>>1?Jc(this):Ec(this)}function gd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;fd.call(this,d,256)}return c} -function hd(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;fd.call(this,d,65536)}return c}function id(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);fd.call(this,d,256)}return c}function jd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);fd.call(this,d,65536)}return c}function nd(a,b){var c=a;if(b){var d;(d=(b&this.we)%9)?(d=a<<d|(this.W&this.$?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.W&this.$?1:0)<<8;fd.call(this,d,256)}return c} -function od(a,b){var c=a;if(b){var d;(d=(b&this.we)%17)?(d=a<<d|(this.W&this.$?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.W&this.$?1:0)<<16;fd.call(this,d,65536)}return c}function pd(a,b){var c=a;b&&(c=(b&this.we)%9,c=a>>c|(this.W&this.$?1:0)<<8-c|a<<9-c,fd.call(this,c,256),c&=255);return c}function qd(a,b){var c=a;b&&(c=(b&this.we)%17,c=a>>c|(this.W&this.$?1:0)<<16-c|a<<17-c,fd.call(this,c,65536),c&=65535);return c} -function rd(a,b){var c=a;b&&(c=8<b?this.W=this.fa=0:(this.W=this.fa=a<<b)&255,this.ha=0,this.$=256);return c}function sd(a,b){var c=a;b&&(c=16<b?this.W=this.fa=0:(this.W=this.fa=a<<b)&65535,this.ha=0,this.$=65536);return c}function td(a,b){if(b){var c=8<b?0:a>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|256:this.W&-257;this.ha=a^this.W;this.$=256;a=this.W}return a&255} -function ud(a,b){if(b){var c=16<b?0:a>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|65536:this.W&-65537;this.ha=a^this.W;this.$=65536;a=this.W}return a&65535}function vd(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|256:this.W&-257;this.ha=a^this.W;this.$=256;a=this.W}return a&255}function wd(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|65536:this.W&-65537;this.ha=a^this.W;this.$=65536;a=this.W}return a&65535} -function xd(){this.A-=0>this.da?2:this.xk;return 1}function yd(){var a=this.I&this.we;this.A-=(0>this.da?this.hi:this.gi)+(a<<this.ii);return a}function zd(){var a=this.aa();this.A-=(0>this.da?this.hi:this.gi)+(a<<this.ii);return a}function Ad(){return null}function Bd(a){Fb.call(this,13,0);return a}function Zb(a){G.call(this);return a}function M(a){N.call(this);return a} -var Cd=[Qc,Rc,Sc,Tc,Uc,Vc,Wc,Xc],Dd=[Yc,Zc,$c,ad,bd,cd,dd,ed],Ed=[function(a,b){this.A-=0>this.Aa?this.Qb:this.qk;return b},Bd,Bd,Bd,Bd,Bd,Bd,Bd],Fd=[function(a,b){this.A-=0>this.Aa?this.ik:this.gk;return b},M,M,M,M,M,M,M],Gd=[gd,id,nd,pd,rd,td,M,vd],Hd=[hd,jd,od,qd,sd,ud,M,wd],Jd=[function(a,b){b=this.aa();this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.da?this.ni:this.mi;this.Y|=2;return a},M,function(a){this.A-=0>this.da?this.qf:this.pf;return a^255},function(a,b){b=0;this.ha=a^b;this.$=256; -this.A-=0>this.da?this.qf:this.pf;return(this.W=this.fa=b-a)&255},function(a){this.G=this.lb=(this.W=(this.G&255)*a)&65535;this.ha=this.fa=this.W;this.$=256;this.G&65280?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?this.mk:this.lk;this.Y|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.lb=b&65535;this.W=this.ha=this.fa=b;this.$=256;127<b||-128>b?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?this.Sj:this.Rj;this.Y|=2;return a},function(a){if(!a)return Id.call(this), -a;var b=this.G/a;if(255<b)return Id.call(this),a;this.lb=this.G=b&255|(this.G%a&255)<<8;this.fa=this.ha=this.W=b|256;this.$=256;this.A-=0>this.da?this.Kj:this.Jj;this.Y|=2;return a},function(a){if(!a)return Id.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Id.call(this),a;this.lb=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.fa=this.ha=this.W=b|256;this.$=256;this.A-=0>this.da?this.Oj:this.Nj;this.Y|=2;return a}],Kd=[function(a,b){b=this.K();this.W=this.fa=this.ha= -a&b;this.$=65536;this.A-=0>this.da?this.ni:this.mi;this.Y|=2;return a},M,function(a){this.A-=0>this.da?this.qf:this.pf;return a^65535},function(a,b){b=0;this.ha=a^b;this.$=65536;this.A-=0>this.da?this.qf:this.pf;return(this.W=this.fa=b-a)&65535},function(a){this.lb=this.G=(this.W=this.G*a)&65535;this.wf=this.J=this.W>>16&65535;this.ha=this.fa=this.W;this.$=65536;this.J?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?this.ok:this.nk;this.Y|=2;return a},function(a){var b=(this.G<<16>>16)* -(a<<16>>16);this.G=this.lb=b&65535;this.J=this.wf=b>>16&65535;this.W=this.ha=this.fa=b;this.$=65536;32767<b||-32768>b?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?this.Uj:this.Tj;this.Y|=2;return a},function(a,b){if(!a)return Id.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return Id.call(this),a;this.lb=this.G=c&65535;this.wf=this.J=b%a&65535;this.fa=this.ha=this.W=c|65536;this.$=65536;this.A-=0>this.da?this.Mj:this.Lj;this.Y|=2;return a},function(a,b){if(!a)return Id.call(this), -a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Id.call(this),a;this.lb=this.G=d&65535;this.wf=this.J=b%c&65535;this.fa=this.ha=this.W=d|65536;this.$=65536;this.A-=0>this.da?this.Qj:this.Pj;this.Y|=2;return a}],Yb=[function(a){this.ha=a;a=(this.fa=a+1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.of:this.nf;return a},function(a){this.ha=a;a=(this.fa=a-1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.of:this.nf; -return a},M,M,M,M,M,M],$b=[function(a){this.ha=a;a=(this.fa=a+1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.of:this.nf;return a},function(a){this.ha=a;a=(this.fa=a-1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.of:this.nf;return a},function(a){K(this,this.qa);I(this,a);this.A-=0>this.da?this.Ij:this.Hj;this.Y|=2;return a},function(a){if(0>this.da)return M.call(this,a);K(this,this.Da.ua);K(this,this.qa);ec(this,a,F(this,this.da+2));this.A-= -this.Fj;this.Y|=2;return a},function(a){I(this,a);this.A-=0>this.da?this.ck:this.bk;this.Y|=2;return a},function(a){if(0>this.da)return M.call(this,a);ec(this,a,F(this,this.da+2));this.A-=this.$j;this.Y|=2;return a},function(a){var b=a;this.Y&512&&(a=a-2&65535,80286>this.Ca&&(b=a));K(this,b);this.A-=0>this.da?this.Xb:this.sk;this.Y|=2;return a},Bd],Ld=[gd,id,nd,pd,rd,td,M,vd],Md=[hd,jd,od,qd,sd,ud,M,wd];function Nd(a,b){this.A-=0>this.Aa?0>this.da?this.kk:this.jk:this.hk;return b} -function Od(){return Nd.call(this,0,this.lb)}function Pd(a,b){this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.Aa?0>this.da?this.oi:this.sf:this.sf;this.Y|=2;return a}function Qd(a,b){this.W=this.fa=this.ha=a&b;this.$=65536;this.A-=0>this.Aa?0>this.da?this.oi:this.sf:this.sf;this.Y|=2;return a}function Rd(a,b){var c=(b<<16>>16)*(this.aa()<<24>>24);this.W=this.ha=this.fa=c;this.$=256;32767<c||-32768>c?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?21:24;return c&65535} -function Sd(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.W=this.ha=this.fa=c;this.$=65536;32767<c||-32768>c?(Fc(this),Jc(this)):(Bc(this),Ec(this));this.A-=0>this.da?21:24;return c&65535}function Td(a){return a}function Ud(a){if(0>this.da)return N.call(this),a;this.A-=this.dk;return this.da}function Vd(a,b){if(0>this.da)return N.call(this),a;sc(this,F(this,this.da+2));this.A-=this.Qh;return b} -function Wd(a,b){if(0>this.da)return N.call(this),a;uc(this,F(this,this.da+2));this.A-=this.Qh;return b}function Xd(a){if(0>this.da)return G.call(this),a;var b=a<<16>>16,c=F(this,this.da)<<16>>16,d=F(this,this.da+2)<<16>>16;this.A-=this.Bj;if(b<c||b>d)I(this,this.vg-this.Da.cb),Oc.call(this,5,null,0);this.Y|=2;return a}function Yd(a,b){this.A-=10+(0>this.da?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Hc(this),a;Dc(this);return a} -function Zd(a,b){this.A-=14+(0>this.da?0:2);if(0<=this.rb.load(b,!0)&&this.rb.sc>=(this.Da.ua&3)&&this.rb.sc>=(b&3))return Hc(this),this.rb.ic&65280;Dc(this);return a}function $d(a,b){this.A-=14+(0>this.da?0:2);if(b&65528&&0<=this.rb.load(b,!0)&&(3072==(this.rb.ic&3072)||this.rb.sc>=(this.Da.ua&3))&&this.rb.sc>=(b&3))return Hc(this),this.rb.Yc;Dc(this);return a} -function ae(a,b){if(0>this.da){switch(this.Pf&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.qi}else this.Aa=this.da,this.Q(a),this.A-=this.pi;return b} -function be(a,b){if(0>this.da){switch(this.Pf&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.X=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.qi}else this.Aa=this.da,this.R(a),this.A-=this.pi;return b}function Oc(a,b,c){qc(this,a)&&(K(this,hc(this)),this.Fa&=this.oc.ig,K(this,this.Da.ua),K(this,this.qa),null!=b&&K(this,b),ec(this,this.oc.ui,this.oc.ua),this.A-=this.Wj+c)} -function Id(){I(this,this.vg-this.Da.cb);Oc.call(this,0,null,2)}function Fb(a,b){this.Ga&&this.Ga.message("Fault 0x"+aa(a)+(null!=b?" (0x"+h(b,4)+")":"")+" on opcode 0x"+aa(Ua(this.ma,this.Ba))+" at "+ba(this.qa,this.Da.ua));80186<=this.Ca&&(I(this,this.vg-this.Da.cb),Oc.call(this,a,b,0))}function G(){Fb.call(this,6);lb(this)}function N(){I(this,this.vg-this.Da.cb);Ja(this,"Undefined opcode 0x"+aa(Ua(this.ma,this.Ba))+" at "+ba(this.qa,this.Da.ua));lb(this)} -function ce(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}function de(a){a=a.call(this,this.G&255,this.I&255);this.G=this.G&-256|a}function ee(a){a=a.call(this,this.G&255,this.J&255);this.G=this.G&-256|a}function fe(a){a=a.call(this,this.G&255,this.B&255);this.G=this.G&-256|a}function ge(a){a=a.call(this,this.G&255,this.G>>8);this.G=this.G&-256|a}function he(a){a=a.call(this,this.G&255,this.I>>8);this.G=this.G&-256|a} -function ie(a){a=a.call(this,this.G&255,this.J>>8);this.G=this.G&-256|a}function je(a){a=a.call(this,this.G&255,this.B>>8);this.G=this.G&-256|a}function ke(a){a=a.call(this,this.I&255,this.G&255);this.I=this.I&-256|a}function le(a){a=a.call(this,this.I&255,this.I&255);this.I=this.I&-256|a}function me(a){a=a.call(this,this.I&255,this.J&255);this.I=this.I&-256|a}function ne(a){a=a.call(this,this.I&255,this.B&255);this.I=this.I&-256|a} -function oe(a){a=a.call(this,this.I&255,this.G>>8);this.I=this.I&-256|a}function pe(a){a=a.call(this,this.I&255,this.I>>8);this.I=this.I&-256|a}function qe(a){a=a.call(this,this.I&255,this.J>>8);this.I=this.I&-256|a}function re(a){a=a.call(this,this.I&255,this.B>>8);this.I=this.I&-256|a}function se(a){a=a.call(this,this.J&255,this.G&255);this.J=this.J&-256|a}function te(a){a=a.call(this,this.J&255,this.I&255);this.J=this.J&-256|a} -function ue(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function ve(a){a=a.call(this,this.J&255,this.B&255);this.J=this.J&-256|a}function we(a){a=a.call(this,this.J&255,this.G>>8);this.J=this.J&-256|a}function xe(a){a=a.call(this,this.J&255,this.I>>8);this.J=this.J&-256|a}function ye(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function ze(a){a=a.call(this,this.J&255,this.B>>8);this.J=this.J&-256|a} -function Ae(a){a=a.call(this,this.B&255,this.G&255);this.B=this.B&-256|a}function Be(a){a=a.call(this,this.B&255,this.I&255);this.B=this.B&-256|a}function Ce(a){a=a.call(this,this.B&255,this.J&255);this.B=this.B&-256|a}function De(a){a=a.call(this,this.B&255,this.B&255);this.B=this.B&-256|a}function Ee(a){a=a.call(this,this.B&255,this.G>>8);this.B=this.B&-256|a}function Fe(a){a=a.call(this,this.B&255,this.I>>8);this.B=this.B&-256|a} -function Ge(a){a=a.call(this,this.B&255,this.J>>8);this.B=this.B&-256|a}function He(a){a=a.call(this,this.B&255,this.B>>8);this.B=this.B&-256|a}function Ie(a){a=a.call(this,this.G>>8,this.G&255);this.G=this.G&255|a<<8}function Je(a){a=a.call(this,this.G>>8,this.I&255);this.G=this.G&255|a<<8}function Ke(a){a=a.call(this,this.G>>8,this.J&255);this.G=this.G&255|a<<8}function Le(a){a=a.call(this,this.G>>8,this.B&255);this.G=this.G&255|a<<8} -function Me(a){a=a.call(this,this.G>>8,this.G>>8);this.G=this.G&255|a<<8}function Ne(a){a=a.call(this,this.G>>8,this.I>>8);this.G=this.G&255|a<<8}function Oe(a){a=a.call(this,this.G>>8,this.J>>8);this.G=this.G&255|a<<8}function Pe(a){a=a.call(this,this.G>>8,this.B>>8);this.G=this.G&255|a<<8}function Qe(a){a=a.call(this,this.I>>8,this.G&255);this.I=this.I&255|a<<8}function Re(a){a=a.call(this,this.I>>8,this.I&255);this.I=this.I&255|a<<8} -function Se(a){a=a.call(this,this.I>>8,this.J&255);this.I=this.I&255|a<<8}function Te(a){a=a.call(this,this.I>>8,this.B&255);this.I=this.I&255|a<<8}function Ue(a){a=a.call(this,this.I>>8,this.G>>8);this.I=this.I&255|a<<8}function Ve(a){a=a.call(this,this.I>>8,this.I>>8);this.I=this.I&255|a<<8}function We(a){a=a.call(this,this.I>>8,this.J>>8);this.I=this.I&255|a<<8}function Xe(a){a=a.call(this,this.I>>8,this.B>>8);this.I=this.I&255|a<<8} -function Ye(a){a=a.call(this,this.J>>8,this.G&255);this.J=this.J&255|a<<8}function Ze(a){a=a.call(this,this.J>>8,this.I&255);this.J=this.J&255|a<<8}function $e(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function af(a){a=a.call(this,this.J>>8,this.B&255);this.J=this.J&255|a<<8}function bf(a){a=a.call(this,this.J>>8,this.G>>8);this.J=this.J&255|a<<8}function cf(a){a=a.call(this,this.J>>8,this.I>>8);this.J=this.J&255|a<<8} -function df(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function ef(a){a=a.call(this,this.J>>8,this.B>>8);this.J=this.J&255|a<<8}function ff(a){a=a.call(this,this.B>>8,this.G&255);this.B=this.B&255|a<<8}function gf(a){a=a.call(this,this.B>>8,this.I&255);this.B=this.B&255|a<<8}function hf(a){a=a.call(this,this.B>>8,this.J&255);this.B=this.B&255|a<<8}function jf(a){a=a.call(this,this.B>>8,this.B&255);this.B=this.B&255|a<<8} -function kf(a){a=a.call(this,this.B>>8,this.G>>8);this.B=this.B&255|a<<8}function lf(a){a=a.call(this,this.B>>8,this.I>>8);this.B=this.B&255|a<<8}function mf(a){a=a.call(this,this.B>>8,this.J>>8);this.B=this.B&255|a<<8}function nf(a){a=a.call(this,this.B>>8,this.B>>8);this.B=this.B&255|a<<8}function of(a){this.G=a.call(this,this.G,this.G)}function pf(a){this.G=a.call(this,this.G,this.I)}function qf(a){this.G=a.call(this,this.G,this.J)}function rf(a){this.G=a.call(this,this.G,this.B)} -function sf(a){this.G=a.call(this,this.G,this.X)}function tf(a){this.G=a.call(this,this.G,this.H)}function uf(a){this.G=a.call(this,this.G,this.F)}function vf(a){this.G=a.call(this,this.G,this.D)}function wf(a){this.I=a.call(this,this.I,this.G)}function xf(a){this.I=a.call(this,this.I,this.I)}function yf(a){this.I=a.call(this,this.I,this.J)}function zf(a){this.I=a.call(this,this.I,this.B)}function Af(a){this.I=a.call(this,this.I,this.X)}function Bf(a){this.I=a.call(this,this.I,this.H)} -function Cf(a){this.I=a.call(this,this.I,this.F)}function Df(a){this.I=a.call(this,this.I,this.D)}function Ef(a){this.J=a.call(this,this.J,this.G)}function Ff(a){this.J=a.call(this,this.J,this.I)}function Gf(a){this.J=a.call(this,this.J,this.J)}function Hf(a){this.J=a.call(this,this.J,this.B)}function If(a){this.J=a.call(this,this.J,this.X)}function Jf(a){this.J=a.call(this,this.J,this.H)}function Kf(a){this.J=a.call(this,this.J,this.F)}function Lf(a){this.J=a.call(this,this.J,this.D)} -function Mf(a){this.B=a.call(this,this.B,this.G)}function Nf(a){this.B=a.call(this,this.B,this.I)}function Of(a){this.B=a.call(this,this.B,this.J)}function Pf(a){this.B=a.call(this,this.B,this.B)}function Qf(a){this.B=a.call(this,this.B,this.X)}function Rf(a){this.B=a.call(this,this.B,this.H)}function Sf(a){this.B=a.call(this,this.B,this.F)}function Tf(a){this.B=a.call(this,this.B,this.D)}function Uf(a){this.X=a.call(this,this.X,this.G)}function Vf(a){this.X=a.call(this,this.X,this.I)} -function Wf(a){this.X=a.call(this,this.X,this.J)}function Xf(a){this.X=a.call(this,this.X,this.B)}function Yf(a){this.X=a.call(this,this.X,this.X)}function Zf(a){this.X=a.call(this,this.X,this.H)}function $f(a){this.X=a.call(this,this.X,this.F)}function ag(a){this.X=a.call(this,this.X,this.D)}function bg(a){this.H=a.call(this,this.H,this.G)}function cg(a){this.H=a.call(this,this.H,this.I)}function dg(a){this.H=a.call(this,this.H,this.J)}function eg(a){this.H=a.call(this,this.H,this.B)} -function fg(a){this.H=a.call(this,this.H,this.X)}function gg(a){this.H=a.call(this,this.H,this.H)}function hg(a){this.H=a.call(this,this.H,this.F)}function ig(a){this.H=a.call(this,this.H,this.D)}function jg(a){this.F=a.call(this,this.F,this.G)}function kg(a){this.F=a.call(this,this.F,this.I)}function lg(a){this.F=a.call(this,this.F,this.J)}function mg(a){this.F=a.call(this,this.F,this.B)}function ng(a){this.F=a.call(this,this.F,this.X)}function og(a){this.F=a.call(this,this.F,this.H)} -function pg(a){this.F=a.call(this,this.F,this.F)}function qg(a){this.F=a.call(this,this.F,this.D)}function rg(a){this.D=a.call(this,this.D,this.G)}function sg(a){this.D=a.call(this,this.D,this.I)}function tg(a){this.D=a.call(this,this.D,this.J)}function ug(a){this.D=a.call(this,this.D,this.B)}function vg(a){this.D=a.call(this,this.D,this.X)}function wg(a){this.D=a.call(this,this.D,this.H)}function xg(a){this.D=a.call(this,this.D,this.F)}function yg(a){this.D=a.call(this,this.D,this.D)} -var zg=[function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.G&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.F),this.G&255);this.Q(a);this.A-=this.Z},function(a){a= +v.prototype={toString:function(){return this.name?this.name:this.id||this.type},tb:function(a,b,c,d){switch(c){case "clear":return this.oa[c]||(this.oa[c]=d,d.onclick=function(a){return function(){a.oa.print&&(a.oa.print.value="")}}(this)),!0;case "print":return this.oa[c]||(this.bh=this.oa[c]=d,d.value="",this.ac=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(d),this.xa= +function(a,b,c){this.ac(a,"notice",c)}),!0;default:return!1}},log:function(){},ac:function(){},status:function(a){this.ac(this.Ah+": "+a)},xa:function(a,b){b||t(a)},Oa:function(a){!this.Xc&&(this.fg=!1!==a)&&(this.name&&this.log("ready"),a=this.vh,this.vh=null,a&&a())},Sb:function(){return this.zb=!0},Jb:function(a,b){b&&(this.zb=!1);return!0}};function Da(a,b){if(a.kh)return a.Ec&&(a.Ec=!1),a.kh=!1;if(a.Xc)return a.ac(a.toString()+" error"),!1;a.Ec=b;return a.Ec} +function Ea(a,b){b&&(a.fg?b():a.vh=b);return a.fg}function Fa(a,b){a.Xc=!0;a.xa("Fatal error: "+b)}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);var Ga="undefined"!==typeof window.Wk;function Ha(a){v.call(this,"Panel",a,Ha)}y(v,Ha);Ha.prototype.tb=function(a,b,c,d){return this.Fa&&this.Fa.tb(a,b,c,d)||this.ja&&this.ja.tb(a,b,c,d)||this.ab&&this.ab.tb(a,b,c,d)?!0:v.prototype.tb.call(this,a,b,c,d)}; +Ha.prototype.gc=function(a,b,c,d){this.Fa=a;this.ja=c;this.Ha=d;this.ab=C(a,"Keyboard")};Ha.prototype.Sb=function(a,b){b||Ia();return!0};Ha.prototype.Jb=function(){return!0};function Ia(){for(var a=!1,b=B(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=z(d),f=Ba(e.id);f||(a=!0,f=new Ha(e));A(f,d);a&&f.Oa()}}u(Ia); +function Ja(a,b,c){v.call(this,"Bus",a,Ja);this.ja=b;this.Ha=c;this.ff=a.buswidth||20;this.Le=this.vb=(1<<this.ff)-1;this.Ib=20>=this.ff?12:14;this.nc=1<<this.Ib;this.cj=this.nc>>2;this.$a=this.nc-1;this.Xf=(this.Le+this.nc)/this.nc|0;this.Pd=this.Xf-1;this.Kf=[];this.Lf=[];this.Ch();this.Oa()}y(v,Ja);Ja.prototype.Ch=function(){this.ya=Array(this.Xf);for(var a=0;a<this.Xf;a++)this.ya[a]=new D(a*this.nc);this.ja.Ch(this.ya,this.Le,this.Ib,this.$a,this.Pd);this.ja.vb=this.vb}; +Ja.prototype.reset=function(){Ka(this,!0)};function La(a,b,c,d,e){if(!(b&a.$a||!c||c&a.$a)){for(var f=b>>a.Ib;0<c&&f<a.ya.length;){var l=a.ya[f];if(void 0!==l&&l.size)return Ma(1,b,c);b=f*a.nc;a.ya[f++]=new D(b,a.nc,d,e);c-=a.nc}return!0}return Ma(2,b,c)}function Ka(a,b){if(void 0!==b&&20<a.ff){var c=a.vb&-1048577|(b?1048576:0);c!=a.vb&&(a.vb=c,a.ja&&(a.ja.vb=c))}} +Ja.prototype.Jg=function(a,b,c){if(!(a&this.$a||!b||b&this.$a)){for(var d=a>>this.Ib;0<b;){var e=this.ya[d];if(!e.ea)return Ma(5,a,b);e.Fd(c);b-=this.nc;d++}return!0}return Ma(3,a,b)};function Na(a,b,c){if(!(b&a.$a||!c||c&a.$a)){for(var d=b>>a.Ib;0<c;)b=d*a.nc,a.ya[d++]=new D(b),c-=a.nc;return!0}return Ma(4,b,c)}function Oa(a,b){return a.ya[(b&a.vb)>>a.Ib].Ei(b&a.$a)}function Pa(a,b){var c=b&a.$a,d=(b&a.vb)>>a.Ib;return c!=a.$a?a.ya[d].zn(c):a.ya[d++].Ei(c)|a.ya[d&a.Pd].Ei(0)<<8} +function Ra(a,b,c){a.ya[(b&a.vb)>>a.Ib].Mi(b&a.$a,c&255)}function Sa(a,b,c){var d=b&a.$a;b=(b&a.vb)>>a.Ib;d!=a.$a?a.ya[b].Ln(d,c&65535):(a.ya[b++].Mi(d,c&255),a.ya[b&a.Pd].Mi(0,c>>8&255))}function Ta(a){for(var b=0,c=[],d=0;d<a.Xf;d++){var e=a.ya[d];if(e.Qa||e.jj){c[b++]=d;var f=c,l=b++;a:if(e=e.save()){for(var k=0,m=0,n=[];k<e.length;){for(var q=e[k],s=k+1;s<e.length&&e[s]===q;)s++;n[m++]=s-k;n[m++]=q;k=s}if(n.length<e.length){e=n;break a}}f[l]=e}}c[b]=a.Le==a.vb;return c} +function Ua(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,l=e+d,k=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=l;n++)void 0!==f.Kf[n]?t("Input port "+h(n,4)+" registered by "+f.Kf[n][0].id+", ignoring "+k.id):f.Kf[n]=[k,m,!1,!1]}}function Va(a,b,c){var d=255;a=a.Kf[b];void 0!==a&&a[1]&&(d=a[1].call(a[0],b,c));return d} +function Wa(a,b,c,d){void 0===d&&(d=0);for(var e in c){e=parseInt(e,10);var f=a,l=e+d,k=b,m=c[e];if(void 0!==m)for(var n=e+d;n<=l;n++)void 0!==f.Lf[n]?t("Output port "+h(n,4)+" registered by "+f.Lf[n][0].id+", ignoring "+k.id):f.Lf[n]=[k,m,!1,!1]}}function Xa(a,b,c,d){a=a.Lf[b];void 0!==a&&a[1]&&a[1].call(a[0],b,c,d)}function Ma(a,b,c){t("Memory block error ("+a+","+h(b)+","+h(c)+")");return!1} +function D(a,b,c,d){this.dj=b;this.la=null;this.offset=0;this.lj=c;this.ea=null;this.Qa=this.jj=!1;if(b)if(d)this.ea=d,a=[d.Ld,a-d.Ya],this.la=a[0],this.offset=a[1],this.Fd(d.Ne);else if(Ga)this.buffer=new window.Wk(b),this.Ti=new window.Wn(this.buffer,0,b),this.ij=new window.Pn(this.buffer,0,b),this.la=new window.Rn(this.buffer,0,b>>2),this.Fd(Ya);else{this.la=Array(b>>2);for(d=0;d<this.la.length;d++)this.la[d]=0;this.Fd(Za)}else this.Fd()} +D.prototype={Bg:function(){return 0},Mg:function(){},xn:function(a){return this.Ti[a]},Bn:function(a){return this.ij.getUint16(a,!0)},Jn:function(a,b){this.Ti[a]=b;this.Qa=!0},Nn:function(a,b){this.ij.setUint16(a,b,!0);this.Qa=!0},wn:function(a){return this.la[a>>2]>>((a&3)<<3)&255},An:function(a){var b=a>>2;a=(a&3)<<3;var c=this.la[b]>>a;return 24>a?c&65535:c&255|(this.la[b+1]&255)<<8},In:function(a,b){var c=a>>2,d=(a&3)<<3;this.la[c]=this.la[c]&~(255<<d)|b<<d;this.Qa=!0},Mn:function(a,b){var c= +a>>2,d=(a&3)<<3;24>d?this.la[c]=this.la[c]&~(65535<<d)|b<<d:(this.la[c]=this.la[c]&16777215|b<<24,c++,this.la[c]=this.la[c]&4294967040|b>>8);this.Qa=!0},save:function(){var a,b;if(this.ea)a=null;else if(Ga)for(a=Array(this.dj>>2),b=0;b<a.length;b++)a[b]=this.la[b];else a=this.la;return a},restore:function(a){if(this.ea)return null===a;if(this.dj==a.length<<2){var b;if(Ga)for(b=0;b<this.la.length;b++)this.la[b]=a[b];else this.la=a;return this.Qa=!0}return!1},Fd:function(a,b){a||(a=[]);void 0===b&& +(b=!0);var c=a;this.vc=c[0]?c[0]:this.Bg;this.yn=c[1]?c[1]:this.Bg;b&&(this.Ei=c[0]?c[0]:this.Bg,this.zn=c[1]?c[1]:this.Bg);c=a;this.xc=c[2]&&!this.lj?c[2]:this.Mg;this.Kn=c[3]&&!this.lj?c[3]:this.Mg;b&&(this.Mi=c[2]?c[2]:this.Mg,this.Ln=c[3]?c[3]:this.Mg)}};var Za=[D.prototype.wn,D.prototype.An,D.prototype.In,D.prototype.Mn];if(Ga)var Ya=[D.prototype.xn,D.prototype.Bn,D.prototype.Jn,D.prototype.Nn]; +function $a(a,b){v.call(this,"CPU",a,$a);var c=a.multiplier||1;this.cd=a.cycles||b;this.xd=c;this.ng=Math.round(this.cd/1E4)/100;this.ef=this.ng*this.xd;this.rc=this.zb=!1;this.jh=a.autoStart;c=va.autostart;void 0!==c&&(this.jh="true"==c?!0:"false"==c?!1:null);this.eg=!1;this.sg=this.xe=0;this.tg=a.csStart;this.hf=a.csInterval;this.jf=a.csStop;var d=this;this.Am=function(){ab(d)};this.Oa()}y(v,$a);g=$a.prototype; +g.gc=function(a,b,c,d){this.ma=b;this.Ha=d;this.Fa=a;var e=C(a,"Video");e&&(this.af=function(){bb(e)},this.Ce=function(){e.Ce()});this.ga=C(a,"ChipSet");this.Oa()};g.reset=function(){};g.save=function(){return null};g.restore=function(){return!1};g.Sb=function(a,b){if(!b){if(a&&this.restore){cb(this);if(!this.restore(a))return!1;db(this)}else this.reset();this.ac("No debugger detected")}this.zb=!0;!fb(this)&&this.Ha&&this.Ha.ao();this.af();this.$e();return!0}; +g.Jb=function(a){this.zb=!1;return a&&this.save?this.save():!0};function fb(a){return!0===a.jh||null===a.jh&&void 0===a.oa.run?(ab(a),!0):!1}g.Ce=function(){};g.rj=function(){return 0};function db(a){void 0===a.tg&&(a.tg=0);void 0===a.hf&&(a.hf=-1);void 0===a.jf&&(a.jf=-1);a.eg=0<=a.tg&&0<a.hf;a.eg&&(a.sg=0,a.xe=a.tg-a.ce)}function E(a,b,c,d){void 0!==a.oa[b]&&(void 0===d&&(d=4),void 0===c&&(Fa(a,"Register "+b+" is invalid"),gb(a)),c=h(c,d),a.oa[b].innerHTML!=c&&(a.oa[b].innerHTML=c))}g.$e=function(){}; +g.af=function(){};g.tb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.oa[c]=d;d.onclick=function(){e.rc?gb(e,!0):ab(e,!0)};a=!0;break;case "reset":this.oa[c]=d;d.onclick=function(){e.Fa&&hb(e.Fa)};a=!0;break;case "speed":this.oa[c]=d;a=!0;break;case "setSpeed":this.oa[c]=d,d.onclick=function(){ib(e,e.xd<<1,!0)},d.innerHTML=this.ef.toFixed(2)+"Mhz",a=!0}return a};function jb(a,b,c){a.ce+=b;c&&(a.bd=a.A=0)} +function kb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.xd&&a.Lc&&(d=a.Lc/a.ng);a.xj=Math.round(1E3/30);a.tm=Math.floor(a.cd/c*d);a.Jh=Math.floor(a.cd/30*d);a.Bj=Math.floor(a.cd/60*d);a.Aj=Math.floor(a.cd/2*d);b||(a.mf=a.Jh,a.lf=a.Bj,a.kf=a.Aj);a.xi=0}function lb(a,b){var c=a.ce+a.Ad+a.bd-a.A;b&&1<a.xd&&a.Lc>a.ng&&(c=Math.round(c/a.xd));return c}function cb(a){a.Lc=0;a.qg=1;a.ce=a.Ad=a.bd=a.A=0;db(a);ib(a,1)} +function ib(a,b,c){void 0!==b&&(0.8>a.Lc/a.ef&&(b=1),a.xd=b,a.ef=a.ng*a.xd,b=a.ef.toFixed(2)+"Mhz",a.oa.setSpeed&&(a.oa.setSpeed.innerHTML=b),a.ac("target speed: "+b),c&&a.Ce());jb(a,a.Ad);a.Ad=0;a.we=ia();a.$d=0;kb(a)} +function ab(a,b){if(Da(a,!0)){a.rc||(ib(a),a.Fa&&a.Fa.start(a.we,lb(a)),a.rc=!0,a.ga&&mb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Halt"),b&&a.Ce());a.xi>=a.cd&&kb(a,!0);a.nf=0;a.pg=ia();if(a.$d){var c=a.pg-a.$d;c>a.xj&&(a.we+=c,a.we>a.pg&&(a.we=a.pg))}try{do{a.Sk(a.eg?1:Math.round(a.tm/a.qg));var d=a.bd-a.A;a.Ad+=d;a.nf+=d;jb(a,0,!0);var c=a,e=d;if(c.eg){var f=!1;c.sg=c.sg+c.rj()|0;c.xe-=e;0>=c.xe&&(c.xe+=c.hf,f=!0);0<=c.jf&&c.jf<=lb(c)&&(c.hf=c.jf=-1,db(c),gb(c),f=!0);f&&c.ac(lb(c)+" cycles: checksum="+ +h(c.sg))}a.lf-=d;0>=a.lf&&(a.lf+=a.Bj,a.af());a.kf-=d;0>=a.kf&&(a.kf+=a.Aj,a.$e());a.mf-=d;if(0>=a.mf){a.mf+=a.Jh;break}}while(a.rc)}catch(l){gb(a);a.af();a.$e();a.Fa&&a.Fa.stop(ia(),lb(a));Da(a,!1);Fa(a,l.message);return}d=setTimeout;c=a.Am;a.$d=ia();e=a.xj;a.nf&&(e=Math.round(e*a.nf/a.Jh));e-=a.$d-a.pg;if(f=a.$d-a.we)a.Lc=Math.round(a.Ad/(10*f))/100,864E5<=f&&(a.ce=0,a.ga&&nb(a.ga,!0),ib(a));if(0>e||a.Lc<a.ef)e=0;a.xi+=a.nf;a.$d+=e;d(c,e)}else a.af(),a.$e(),a.Fa&&a.Fa.stop(ia(),lb(a))} +function gb(a,b){a.Ec&&(a.kh=!0);a.bd-=a.A;a.A=0;jb(a,a.Ad);a.Ad=0;a.rc&&(a.rc=!1,a.ga&&mb(a.ga),a.oa.run&&(a.oa.run.innerHTML="Run"));a.nh=b}g.Sk=function(){return 0}; +var ob=[1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1, +0,0,1,1,0,1,0,0,1];function pb(a,b,c){this.ja=a;this.eb=this.ua=0;this.$c=65535;this.uc=this.kc=0;this.Gg=b;rb(this,c)}function sb(a){this.ua=a;this.$c=65535;return this.eb=a<<4} +function tb(a){var b,c;a&4?(b=this.ja.Be.eb,c=this.ja.Be.$c):(b=this.ja.Rc,c=this.ja.Ke);b+=a&65528;if(b+7<=c){this.Jc=ub;this.Ob=vb;this.ja.A-=15;c=F(this.ja,b+0);var d=F(this.ja,b+4),e=F(this.ja,b+2)|(d&255)<<16;F(this.ja,b+6);b=d&7936;if(b&4096){2048==(b&2560)&&(this.Ob=wb);if(b&2048||!(b&512))this.Ob=xb;this.ua=a;this.$c=c;this.kc=d;this.uc=(d&24576)>>13;return this.eb=e}if(b&&768>=b)return this.ua=a,this.$c=c,this.kc=d,this.uc=(d&24576)>>13,this.eb=e}return-1} +function yb(a){return this.eb+a}function zb(a){return this.eb+a}function ub(a,b,c){return a+b<=this.$c?this.eb+a:wb.call(this,0,0,c)}function wb(a,b,c){c||Ab.call(this.ja,13,0);return-1}function vb(a,b,c){return a+b<=this.$c?this.eb+a:xb.call(this,0,0,c)}function xb(a,b,c){c||Ab.call(this.ja,13,0);return-1}pb.prototype.save=function(){return[this.ua,this.eb,this.$c,this.kc,this.uc,this.Gg]}; +pb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ua=a[0],this.eb=a[1],this.$c=a[2],this.kc=a[3],this.uc=a[4],this.Gg=a[5])};function rb(a,b){void 0===b&&(b=!!(a.ja.ed&1));b?(a.load=tb,a.Jc=ub,a.Ob=vb):(a.load=sb,a.Jc=yb,a.Ob=zb)} +function Bb(a){this.Da=a.model||8088;var b=0;switch(this.Da){default:case 8088:b=4772727;break;case 80286:b=6E6}$a.call(this,a,b);this.Qi=61442;this.If=4;this.ye=255;this.yi=4;this.Z=5;this.na=6;this.ba=7;this.ca=8;this.P=9;this.U=11;this.V=12;this.ae=4;this.Dj=60;this.Ej=83;this.Bb=3;this.bb=9;this.Qb=16;this.wg=1;this.Ij=19;this.Kj=28;this.Mj=16;this.Lj=21;this.Jj=37;this.Gj=2;this.Rh=9;this.Hj=5;this.Fj=33;this.Th=10;this.Sh=8;this.rf=3;this.qf=15;this.$j=51;this.ak=1;this.bk=2;this.ck=4;this.Zj= +32;this.ek=this.Uh=15;this.Cb=16;this.Db=4;this.gk=11;this.fk=18;this.dk=24;this.mb=4;this.hk=2;this.Vh=16;this.ik=17;this.$h=18;this.jk=19;this.Zh=5;this.ai=6;this.ok=2;this.nk=8;this.lk=9;this.ci=this.bi=this.kk=this.mk=10;this.Oj=80;this.Qj=144;this.Nj=86;this.Pj=154;this.Sj=101;this.Uj=165;this.Rj=107;this.Tj=171;this.qk=70;this.sk=113;this.pk=76;this.rk=124;this.Wj=80;this.Yj=128;this.Vj=86;this.Xj=134;this.tf=3;this.sf=16;this.hi=10;this.gi=8;this.tk=51;this.Rb=8;this.uk=17;this.vk=36;this.Zb= +11;this.wk=16;this.uf=10;this.rb=2;this.Oh=18;this.Ph=9-this.rb;this.Qh=17-this.rb;this.Wh=12;this.Xh=9-this.rb;this.Yh=13-this.rb;this.di=18;this.ei=9-this.rb;this.fi=17-this.rb;this.ii=15;this.ji=9-this.rb;this.ki=15-this.rb;this.oi=11;this.pi=9-this.rb;this.qi=10-this.rb;this.xk=8;this.Ak=12;this.yk=18;this.zk=17;this.Bk=15;this.mi=8;this.li=20;this.ni=2;this.ti=3;this.vf=9;this.si=5;this.ri=11;this.vi=4;this.ui=17;this.Ck=11;this.Ka=Cb.slice();80186<=this.Da&&(this.ye=31,this.Ka[15]=G,this.Ka[96]= +Db,this.Ka[97]=Eb,this.Ka[98]=Fb,this.Ka[99]=G,this.Ka[100]=G,this.Ka[101]=G,this.Ka[102]=G,this.Ka[103]=G,this.Ka[104]=Gb,this.Ka[105]=Hb,this.Ka[106]=Ib,this.Ka[107]=Jb,this.Ka[108]=Kb,this.Ka[109]=Lb,this.Ka[110]=Mb,this.Ka[111]=Nb,this.Ka[192]=Ob,this.Ka[193]=Pb,this.Ka[200]=Qb,this.Ka[200]=Rb,this.Ka[241]=Sb,Tb[7]=Ub,Vb[7]=Ub,80286<=this.Da&&(this.Qi=2,this.If=0,this.Ka[15]=Wb,this.Ka[99]=Xb,this.Ka[84]=Yb,this.P=this.ca=this.ba=this.na=this.Z=this.yi=0,this.V=this.U=1,this.ae=3,this.Dj=14,this.Ej= +16,this.Bb=2,this.Qb=this.bb=7,this.wg=0,this.Ij=7,this.Kj=13,this.Mj=7,this.Lj=11,this.Jj=16,this.Gj=3,this.Rh=6,this.Hj=2,this.Fj=13,this.Sh=this.Th=5,this.rf=2,this.qf=7,this.$j=23,this.ak=0,this.bk=1,this.ck=3,this.Zj=17,this.Uh=7,this.ek=11,this.Cb=7,this.Db=3,this.gk=7,this.fk=11,this.dk=15,this.mb=2,this.hk=3,this.Vh=7,this.jk=this.$h=this.ik=8,this.ai=this.Zh=4,this.ok=2,this.nk=3,this.lk=5,this.mk=2,this.kk=3,this.bi=5,this.ci=3,this.Oj=14,this.Qj=22,this.Nj=17,this.Pj=25,this.Sj=17,this.Uj= +25,this.Rj=20,this.Tj=28,this.qk=13,this.sk=21,this.pk=16,this.rk=24,this.Wj=13,this.Yj=21,this.Vj=16,this.Xj=24,this.tf=2,this.sf=7,this.gi=this.hi=5,this.tk=19,this.uk=this.Rb=5,this.vk=17,this.Zb=3,this.wk=5,this.uf=3,this.rb=0,this.Oh=8,this.Ph=5,this.Qh=9,this.Xh=this.Wh=5,this.Yh=4,this.ei=this.di=5,this.fi=4,this.ii=7,this.ji=5,this.ki=8,this.oi=3,this.pi=4,this.qi=3,this.Ak=this.xk=11,this.zk=this.yk=15,this.Bk=7,this.mi=5,this.li=8,this.ni=0,this.ti=2,this.vf=6,this.si=3,this.ri=6,this.vi= +3,this.Ck=this.ui=5));this.Yk=[];this.Ri=[];this.Yg=0;this.ya=[];this.Le=this.vb=this.Ib=this.$a=this.Pd=0;this.S=this.jl;this.T=this.kl;this.N=this.lm;this.O=this.mm;this.Q=this.Gn;this.R=this.Hn;Zb(this)}y($a,Bb);g=Bb.prototype;g.Ch=function(a,b,c,d,e){this.ya=a;this.Le=this.vb=b;this.Ib=c;this.$a=d;this.Pd=e};g.reset=function(){this.rc&&gb(this);Zb(this);cb(this);this.Xc=!1}; +function Zb(a){a.G=0;a.B=0;a.I=0;a.J=0;a.X=0;a.H=0;a.F=0;a.D=0;a.ed=65520;a.Sc=0;a.me=1023;a.qc={zi:0,ua:0,kc:0,mg:-1};a.Ea=new pb(a,"CS");a.bc=new pb(a,"DS");a.Tb=new pb(a,"SS");a.gb=new pb(a,"ES");a.Qk=new pb(a,"ZERO");$b(a,0,65535);80286<=a.Da&&(a.Rc=a.Ke=0,a.Be=new pb(a,"LDT",!0),a.Ig=new pb(a,"TSS",!0),a.sb=new pb(a,"VER",!0),$b(a,65520,61440),a.Ea.eb=16711680);ac(a,0);bc(a);a.Va=0;a.nb=a.Af=-1;a.Tf=0;a.da=a.Ba=-1;a.C=a.bc;a.M=a.Tb;a.Y=a.pa=0} +g.rj=function(){var a=this.G+this.B+this.I+this.J+this.X+this.H+this.F+this.D|0;return a=a+this.qa+this.Ea.ua+this.bc.ua+this.Tb.ua+this.gb.ua+cc(this)|0};function dc(a,b){var c=a.Ri[b];null!=c&&(c(--a.Yg),delete a.Ri[b])}function bc(a,b){void 0===b&&(b=!!(a.ed&1));ec=b?fc:gc;rb(a.Ea,b);rb(a.bc,b);rb(a.Tb,b);rb(a.gb,b)} +g.save=function(){var a=new H(this);a.set(0,[this.G,this.B,this.I,this.J,this.X,this.H,this.F,this.D]);a.set(1,[this.qa,this.Ea.save(),this.bc.save(),this.Tb.save(),this.gb.save(),cc(this),null!=this.Rc?[this.ed,this.Rc,this.Ke,this.Sc,this.me,this.Be.save(),this.Ig.save()]:null]);a.set(2,[this.C.Gg,this.M.Gg,this.Y,this.pa,this.Va,this.da,this.Ba]);a.set(3,[this.qg,this.ce,this.xd]);a.set(4,Ta(this.ma));return a.data()}; +g.restore=function(a){var b;b=a[0];this.G=b[0];this.B=b[1];this.I=b[2];this.J=b[3];this.X=b[4];this.H=b[5];this.F=b[6];this.D=b[7];b=a[1];this.Ea.restore(b[1]);this.bc.restore(b[2]);this.Tb.restore(b[3]);this.gb.restore(b[4]);ac(this,b[5]);var c=b[6];c&&c.length&&(this.ed=c[0],this.Rc=c[1],this.Ke=c[2],this.Sc=c[3],this.me=c[4],this.Be.restore(c[5]),this.Ig.restore(c[6]),bc(this));I(this,b[0]);b=a[2];this.C=hc(this,b[0]);this.M=hc(this,b[1]);this.Y=b[2];this.pa=b[3];this.Va=b[4];this.da=b[5];this.Ba= +b[6];b=a[3];this.qg=b[0];this.ce=b[1];ib(this,b[2]);a:{b=this.ma;a=a[4];for(c=0;c<a.length-1;c+=2){var d=a[c],e=a[c+1];if(e&&e.length<b.cj){for(var f=0,l=Array(b.cj),k=0;k<e.length-1;)for(var m=e[k++],n=e[k++];m--;)l[f++]=n;e=l}f=b.ya[d];if(!f||!f.restore(e)){t("Unable to restore memory block "+d);b=!1;break a}}void 0!==a[c]&&Ka(b,a[c]);b=!0}return b}; +function hc(a,b){switch(b){case "CS":return a.Ea;case "DS":return a.bc;case "SS":return a.Tb;case "ES":return a.gb;case "ZERO":return a.Qk;default:return[0,b,0,0,""]}}function ic(a,b){var c;if(a.ed&1){if(c=a.Sc+(b<<3),c+7<=a.me){a.qc.zi=F(a,c);a.qc.ua=F(a,c+2);a.qc.kc=F(a,c+4);switch(a.qc.kc&7936){case 1536:a.qc.mg=-17153;break;case 1792:a.qc.mg=-16641;break;default:return!1}return!0}}else if(c=a.Sc+(b<<2),c+7<=a.me)return a.qc.zi=F(a,c),a.qc.ua=F(a,c+2),a.qc.mg=-769,!0;return!1} +function jc(a,b){a.Ca=a.Ea.load(b)+a.qa;a.Y|=a.If}function nc(a,b){a.bc.load(b);a.Y|=a.If}function oc(a,b){a.Tb.load(b);a.Y|=4}function pc(a,b){a.gb.load(b);a.Y|=a.If}function I(a,b){a.Ca=a.Ea.eb+(a.qa=b&65535)}function $b(a,b,c){a.Ca=a.Ea.load(c)+(a.qa=b)}function J(a,b){a.Ca=a.Ea.eb+(a.qa=a.qa+b&65535)}function qc(a){return a.W&a.$?1:0}function rc(a){return ob[a.fa&255]?4:0}function sc(a){return(a.fa^a.ha)&16?16:0}function tc(a){return a.W&a.$-1?0:64}function uc(a){return a.fa&a.$>>1?128:0} +function vc(a){return(a.fa^a.ha^a.fa>>1)&a.$>>1?2048:0}function wc(a){a.W&=~a.$}function xc(a){a.ha=a.fa&16|a.ha&-17}function yc(a){a.W|=a.$-1}function zc(a){a.fa&=~a.$;a.ha=a.fa&32896|a.ha&-32897}function Ac(a){a.W|=a.$}function Bc(a){a.ha=~(a.fa&16)&16|a.ha&-17}function Cc(a){a.W&=~(a.$-1)}function Dc(a){uc(a)||(a.fa^=a.$>>1|a.$>>2,a.ha^=32896)}function Ec(a){a.fa|=a.$;a.ha=a.fa&32896|a.ha&-32897}function cc(a){return a.Ga&-2262|qc(a)|rc(a)|sc(a)|tc(a)|uc(a)|vc(a)} +function ac(a,b){a.$=256;a.W=a.fa=a.ha=0;b&1&&Ac(a);b&4||(a.fa|=1);b&16&&(a.ha|=16);b&64||yc(a);b&128&&Dc(a);b&2048&&Ec(a);a.Ga=a.Ga&-1793|b&1792|a.Qi;a.Ga&256&&(a.Va|=2,a.Y|=4)} +g.tb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.oa[c]=d;e=!0;break;default:e=$a.prototype.tb.call(this,a,b,c,d)}return e};function Fc(a,b){return a.ya[(b&a.vb)>>a.Ib].vc(b&a.$a)} +function F(a,b){var c=b&a.$a,d=(b&a.vb)>>a.Ib;a.A-=a.yi;return c!=a.$a?a.ya[d].yn(c):a.ya[d++].vc(c)|a.ya[d&a.Pd].vc(0)<<8}function Gc(a,b,c){a.ya[(b&a.vb)>>a.Ib].xc(b&a.$a,c&255)}function Hc(a,b,c){var d=b&a.$a;b=(b&a.vb)>>a.Ib;a.A-=a.yi;d!=a.$a?a.ya[b].Kn(d,c&65535):(a.ya[b++].xc(d,c&255),a.ya[b&a.Pd].xc(0,c>>8&255))}g.jl=function(a,b){this.Ef=a;this.da=a.Jc(this.wf=b,0);return this.Y&1?0:Fc(this,this.da)};g.kl=function(a,b){this.Ef=a;this.da=a.Jc(this.wf=b,1);return this.Y&1?0:F(this,this.da)}; +g.lm=function(a,b){this.Ef=a;this.Ba=this.da=a.Jc(this.wf=b,0);return this.Y&1?0:Fc(this,this.da)};g.mm=function(a,b){this.Ef=a;this.Ba=this.da=a.Jc(this.wf=b,1);return this.Y&1?0:F(this,this.da)};g.Gn=function(a){this.Y&2||Gc(this,this.Ef.Ob(this.wf,1),a)};g.Hn=function(a){this.Y&2||Hc(this,this.Ef.Ob(this.wf,2),a)};g.aa=function(){var a=Fc(this,this.Ca);this.Ca=this.Ea.eb+(this.qa=this.qa+1&65535);return a}; +g.L=function(){var a=Fc(this,this.Ca)<<24>>24;this.Ca=this.Ea.eb+(this.qa=this.qa+1&65535);return a&65535};g.K=function(){var a=F(this,this.Ca);this.Ca=this.Ea.eb+(this.qa=this.qa+2&65535);return a};g.Aa=function(){var a=this.X;this.X=this.X+2&65535;return F(this,this.Tb.Jc(a,1))};function K(a,b){var c=a.X=a.X-2&65535;Hc(a,a.Tb.Ob(c,1),b)} +g.$e=function(){E(this,"AX",this.G);E(this,"BX",this.B);E(this,"CX",this.I);E(this,"DX",this.J);E(this,"SP",this.X);E(this,"BP",this.H);E(this,"SI",this.F);E(this,"DI",this.D);E(this,"CS",this.Ea.ua);E(this,"DS",this.bc.ua);E(this,"SS",this.Tb.ua);E(this,"ES",this.gb.ua);E(this,"IP",this.qa);var a=cc(this);E(this,"PS",a);E(this,"C",a&1?1:0,1);E(this,"P",a&4?1:0,1);E(this,"A",a&16?1:0,1);E(this,"Z",a&64?1:0,1);E(this,"S",a&128?1:0,1);E(this,"T",a&256?1:0,1);E(this,"I",a&512?1:0,1);E(this,"D",a&1024? +1:0,1);E(this,"O",a&2048?1:0,1);this.oa.speed&&(this.oa.speed.innerHTML=this.rc&&this.Lc?this.Lc.toFixed(2)+"Mhz":"Stopped")}; +g.Sk=function(a){this.nh=!0;this.bd=this.A=a;this.ga&&nb(this.ga);a||!this.Ha||this.Ha.Zn(this.Ha.Sn)||(this.Y|=4);do{if(a=this.Y&240)this.pa|=a;else if(this.zg=this.Ca,this.da=this.Ba=-1,this.C=this.bc,this.M=this.Tb,this.pa=this.Y&256,this.Va){a:{if(!(this.Y&4))if(this.Va&1&&this.Ga&512){if(a=Ic(this.ga),-1<=a&&(this.Va&=-2,0<=a)){this.Va&=-5;Jc.call(this,a,null,11);break a}}else if(this.Va&2){this.Va&=-3;Jc.call(this,1,null,11);break a}if(a=this.Va&8){a=this.ga;for(var b=!1,c=0;c<a.va;c++)for(var d= +a.va[c],e=0;e<d.Ja.length;e++){var f=d.Ja[e];f.ad||(Kc(a,f),f.ad||(b=!0))}a=!b}a&&(this.Va&=-9)}if(this.Va&4){this.Y=this.A=0;break}}this.Y=0;this.Ka[this.aa()].call(this)}while(0<this.A);return this.nh?this.bd-this.A:void 0===this.nh?0:-1};u(function(){for(var a=B(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Bb(d);A(d,c)}});function Lc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=a+b)&255} +function Mc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a|b)&255}function Nc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return this.W&255}function Oc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return this.W&255} +function Pc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a&b)&255}function Qc(a,b){this.ha=a^b;this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=a-b)&255}function Rc(a,b){this.$=256;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a^b)&255}function Sc(a,b){this.ha=a^b;this.$=256;this.W=this.fa=a-b;this.A-=0>this.Ba?0>this.da?this.Bb:this.Rh:this.bb;this.Y|=2;return a} +function Tc(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=a+b)&65535}function Uc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a|b)&65535}function Vc(a,b){this.ha=a^b;this.W=this.fa=a+b+(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return this.W&65535} +function Wc(a,b){this.ha=a^b;this.W=this.fa=a-b-(this.W&this.$?1:0);this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return this.W&65535}function Xc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a&b)&65535}function Yc(a,b){this.ha=a^b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=a-b)&65535} +function Zc(a,b){this.$=65536;this.A-=0>this.Ba?0>this.da?this.Bb:this.bb:this.Qb;return(this.W=this.fa=this.ha=a^b)&65535}function $c(a,b){this.ha=a^b;this.$=65536;this.W=this.fa=a-b;this.A-=0>this.Ba?0>this.da?this.Bb:this.Rh:this.bb;this.Y|=2;return a}function ad(a,b){this.W=this.W&this.$-1|(a&b?this.$:0);(a^a>>1)&b>>1?Ec(this):zc(this)}function bd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<<e|a>>8-e)&255:d=a<<8;ad.call(this,d,256)}return c} +function cd(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<<e|a>>16-e)&65535:d=a<<16;ad.call(this,d,65536)}return c}function dd(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);ad.call(this,d,256)}return c}function ed(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);ad.call(this,d,65536)}return c}function fd(a,b){var c=a;if(b){var d;(d=(b&this.ye)%9)?(d=a<<d|(this.W&this.$?1:0)<<d-1|a>>9-d,c=d&255):d=a|(this.W&this.$?1:0)<<8;ad.call(this,d,256)}return c} +function gd(a,b){var c=a;if(b){var d;(d=(b&this.ye)%17)?(d=a<<d|(this.W&this.$?1:0)<<d-1|a>>17-d,c=d&65535):d=a|(this.W&this.$?1:0)<<16;ad.call(this,d,65536)}return c}function kd(a,b){var c=a;b&&(c=(b&this.ye)%9,c=a>>c|(this.W&this.$?1:0)<<8-c|a<<9-c,ad.call(this,c,256),c&=255);return c}function ld(a,b){var c=a;b&&(c=(b&this.ye)%17,c=a>>c|(this.W&this.$?1:0)<<16-c|a<<17-c,ad.call(this,c,65536),c&=65535);return c} +function md(a,b){var c=a;b&&(c=8<b?this.W=this.fa=0:(this.W=this.fa=a<<b)&255,this.ha=0,this.$=256);return c}function nd(a,b){var c=a;b&&(c=16<b?this.W=this.fa=0:(this.W=this.fa=a<<b)&65535,this.ha=0,this.$=65536);return c}function od(a,b){if(b){var c=8<b?0:a>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|256:this.W&-257;this.ha=a^this.W;this.$=256;a=this.W}return a&255} +function pd(a,b){if(b){var c=16<b?0:a>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|65536:this.W&-65537;this.ha=a^this.W;this.$=65536;a=this.W}return a&65535}function qd(a,b){if(b){8<b&&(b=9);var c=a<<24>>24>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|256:this.W&-257;this.ha=a^this.W;this.$=256;a=this.W}return a&255}function rd(a,b){if(b){16<b&&(b=17);var c=a<<16>>16>>b-1;this.W=this.fa=c>>1;this.W=c&1?this.W|65536:this.W&-65537;this.ha=a^this.W;this.$=65536;a=this.W}return a&65535} +function sd(){this.A-=0>this.da?2:this.Bk;return 1}function td(){var a=this.I&this.ye;this.A-=(0>this.da?this.mi:this.li)+(a<<this.ni);return a}function ud(){var a=this.aa();this.A-=(0>this.da?this.mi:this.li)+(a<<this.ni);return a}function vd(){return null}function wd(a){Ab.call(this,13,0);return a}function Ub(a){G.call(this);return a}function M(a){N.call(this);return a} +var xd=[Lc,Mc,Nc,Oc,Pc,Qc,Rc,Sc],yd=[Tc,Uc,Vc,Wc,Xc,Yc,Zc,$c],zd=[function(a,b){this.A-=0>this.Ba?this.Rb:this.uk;return b},wd,wd,wd,wd,wd,wd,wd],Ad=[function(a,b){this.A-=0>this.Ba?this.mk:this.kk;return b},M,M,M,M,M,M,M],Bd=[bd,dd,fd,kd,md,od,M,qd],Cd=[cd,ed,gd,ld,nd,pd,M,rd],Ed=[function(a,b){b=this.aa();this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.da?this.si:this.ri;this.Y|=2;return a},M,function(a){this.A-=0>this.da?this.tf:this.sf;return a^255},function(a,b){b=0;this.ha=a^b;this.$=256; +this.A-=0>this.da?this.tf:this.sf;return(this.W=this.fa=b-a)&255},function(a){this.G=this.nb=(this.W=(this.G&255)*a)&65535;this.ha=this.fa=this.W;this.$=256;this.G&65280?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?this.qk:this.pk;this.Y|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24);this.G=this.nb=b&65535;this.W=this.ha=this.fa=b;this.$=256;127<b||-128>b?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?this.Wj:this.Vj;this.Y|=2;return a},function(a){if(!a)return Dd.call(this), +a;var b=this.G/a;if(255<b)return Dd.call(this),a;this.nb=this.G=b&255|(this.G%a&255)<<8;this.fa=this.ha=this.W=b|256;this.$=256;this.A-=0>this.da?this.Oj:this.Nj;this.Y|=2;return a},function(a){if(!a)return Dd.call(this),a;var b=(this.G<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Dd.call(this),a;this.nb=this.G=b&255|((this.G<<16>>16)%(a<<24>>24)&255)<<8;this.fa=this.ha=this.W=b|256;this.$=256;this.A-=0>this.da?this.Sj:this.Rj;this.Y|=2;return a}],Fd=[function(a,b){b=this.K();this.W=this.fa=this.ha= +a&b;this.$=65536;this.A-=0>this.da?this.si:this.ri;this.Y|=2;return a},M,function(a){this.A-=0>this.da?this.tf:this.sf;return a^65535},function(a,b){b=0;this.ha=a^b;this.$=65536;this.A-=0>this.da?this.tf:this.sf;return(this.W=this.fa=b-a)&65535},function(a){this.nb=this.G=(this.W=this.G*a)&65535;this.Af=this.J=this.W>>16&65535;this.ha=this.fa=this.W;this.$=65536;this.J?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?this.sk:this.rk;this.Y|=2;return a},function(a){var b=(this.G<<16>>16)* +(a<<16>>16);this.G=this.nb=b&65535;this.J=this.Af=b>>16&65535;this.W=this.ha=this.fa=b;this.$=65536;32767<b||-32768>b?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?this.Yj:this.Xj;this.Y|=2;return a},function(a,b){if(!a)return Dd.call(this),a;b=this.G+65536*this.J;var c=Math.floor(b/a);if(65536<=c)return Dd.call(this),a;this.nb=this.G=c&65535;this.Af=this.J=b%a&65535;this.fa=this.ha=this.W=c|65536;this.$=65536;this.A-=0>this.da?this.Qj:this.Pj;this.Y|=2;return a},function(a,b){if(!a)return Dd.call(this), +a;var c=a<<16>>16;b=this.J<<16|this.G;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Dd.call(this),a;this.nb=this.G=d&65535;this.Af=this.J=b%c&65535;this.fa=this.ha=this.W=d|65536;this.$=65536;this.A-=0>this.da?this.Uj:this.Tj;this.Y|=2;return a}],Tb=[function(a){this.ha=a;a=(this.fa=a+1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.rf:this.qf;return a},function(a){this.ha=a;a=(this.fa=a-1)&255;this.W=a|(this.W&this.$?1:0)<<8;this.$=256;this.A-=0>this.da?this.rf:this.qf; +return a},M,M,M,M,M,M],Vb=[function(a){this.ha=a;a=(this.fa=a+1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.rf:this.qf;return a},function(a){this.ha=a;a=(this.fa=a-1)&65535;this.W=a|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=0>this.da?this.rf:this.qf;return a},function(a){K(this,this.qa);I(this,a);this.A-=0>this.da?this.Mj:this.Lj;this.Y|=2;return a},function(a){if(0>this.da)return M.call(this,a);K(this,this.Ea.ua);K(this,this.qa);$b(this,a,F(this,this.da+2));this.A-= +this.Jj;this.Y|=2;return a},function(a){I(this,a);this.A-=0>this.da?this.gk:this.fk;this.Y|=2;return a},function(a){if(0>this.da)return M.call(this,a);$b(this,a,F(this,this.da+2));this.A-=this.dk;this.Y|=2;return a},function(a){var b=a;this.Y&512&&(a=a-2&65535,80286>this.Da&&(b=a));K(this,b);this.A-=0>this.da?this.Zb:this.wk;this.Y|=2;return a},wd],Gd=[bd,dd,fd,kd,md,od,M,qd],Hd=[cd,ed,gd,ld,nd,pd,M,rd];function Id(a,b){this.A-=0>this.Ba?0>this.da?this.ok:this.nk:this.lk;return b} +function Jd(){return Id.call(this,0,this.nb)}function Kd(a,b){this.W=this.fa=this.ha=a&b;this.$=256;this.A-=0>this.Ba?0>this.da?this.ti:this.vf:this.vf;this.Y|=2;return a}function Ld(a,b){this.W=this.fa=this.ha=a&b;this.$=65536;this.A-=0>this.Ba?0>this.da?this.ti:this.vf:this.vf;this.Y|=2;return a}function Md(a,b){var c=(b<<16>>16)*(this.aa()<<24>>24);this.W=this.ha=this.fa=c;this.$=256;32767<c||-32768>c?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?21:24;return c&65535} +function Nd(a,b){var c=(b<<16>>16)*(this.K()<<16>>16);this.W=this.ha=this.fa=c;this.$=65536;32767<c||-32768>c?(Ac(this),Ec(this)):(wc(this),zc(this));this.A-=0>this.da?21:24;return c&65535}function Od(a){return a}function Pd(a){if(0>this.da)return N.call(this),a;this.A-=this.hk;return this.da}function Qd(a,b){if(0>this.da)return N.call(this),a;nc(this,F(this,this.da+2));this.A-=this.Vh;return b} +function Rd(a,b){if(0>this.da)return N.call(this),a;pc(this,F(this,this.da+2));this.A-=this.Vh;return b}function Sd(a){if(0>this.da)return G.call(this),a;var b=a<<16>>16,c=F(this,this.da)<<16>>16,d=F(this,this.da+2)<<16>>16;this.A-=this.Fj;if(b<c||b>d)I(this,this.zg-this.Ea.eb),Jc.call(this,5,null,0);this.Y|=2;return a}function Td(a,b){this.A-=10+(0>this.da?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Cc(this),a;yc(this);return a} +function Ud(a,b){this.A-=14+(0>this.da?0:2);if(0<=this.sb.load(b,!0)&&this.sb.uc>=(this.Ea.ua&3)&&this.sb.uc>=(b&3))return Cc(this),this.sb.kc&65280;yc(this);return a}function Vd(a,b){this.A-=14+(0>this.da?0:2);if(b&65528&&0<=this.sb.load(b,!0)&&(3072==(this.sb.kc&3072)||this.sb.uc>=(this.Ea.ua&3))&&this.sb.uc>=(b&3))return Cc(this),this.sb.$c;yc(this);return a} +function Wd(a,b){if(0>this.da){switch(this.Tf&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.J=this.J&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&255|a<<8;break;case 5:this.I=this.I&255|a<<8;break;case 6:this.J=this.J&255|a<<8;break;case 7:this.B=this.B&255|a<<8}this.A-=this.vi}else this.Ba=this.da,this.Q(a),this.A-=this.ui;return b} +function Xd(a,b){if(0>this.da){switch(this.Tf&7){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.J=a;break;case 3:this.B=a;break;case 4:this.X=a;break;case 5:this.H=a;break;case 6:this.F=a;break;case 7:this.D=a}this.A-=this.vi}else this.Ba=this.da,this.R(a),this.A-=this.ui;return b}function Jc(a,b,c){ic(this,a)&&(K(this,cc(this)),this.Ga&=this.qc.mg,K(this,this.Ea.ua),K(this,this.qa),null!=b&&K(this,b),$b(this,this.qc.zi,this.qc.ua),this.A-=this.$j+c)} +function Dd(){I(this,this.zg-this.Ea.eb);Jc.call(this,0,null,2)}function Ab(a,b){this.Ha&&this.Ha.message("Fault 0x"+aa(a)+(null!=b?" (0x"+h(b,4)+")":"")+" on opcode 0x"+aa(Oa(this.ma,this.Ca))+" at "+da(this.qa,this.Ea.ua));80186<=this.Da&&(I(this,this.zg-this.Ea.eb),Jc.call(this,a,b,0))}function G(){Ab.call(this,6);gb(this)}function N(){I(this,this.zg-this.Ea.eb);Fa(this,"Undefined opcode 0x"+aa(Oa(this.ma,this.Ca))+" at "+da(this.qa,this.Ea.ua));gb(this)} +function Yd(a){a=a.call(this,this.G&255,this.G&255);this.G=this.G&-256|a}function Zd(a){a=a.call(this,this.G&255,this.I&255);this.G=this.G&-256|a}function $d(a){a=a.call(this,this.G&255,this.J&255);this.G=this.G&-256|a}function ae(a){a=a.call(this,this.G&255,this.B&255);this.G=this.G&-256|a}function be(a){a=a.call(this,this.G&255,this.G>>8);this.G=this.G&-256|a}function ce(a){a=a.call(this,this.G&255,this.I>>8);this.G=this.G&-256|a} +function de(a){a=a.call(this,this.G&255,this.J>>8);this.G=this.G&-256|a}function ee(a){a=a.call(this,this.G&255,this.B>>8);this.G=this.G&-256|a}function fe(a){a=a.call(this,this.I&255,this.G&255);this.I=this.I&-256|a}function ge(a){a=a.call(this,this.I&255,this.I&255);this.I=this.I&-256|a}function he(a){a=a.call(this,this.I&255,this.J&255);this.I=this.I&-256|a}function ie(a){a=a.call(this,this.I&255,this.B&255);this.I=this.I&-256|a} +function je(a){a=a.call(this,this.I&255,this.G>>8);this.I=this.I&-256|a}function ke(a){a=a.call(this,this.I&255,this.I>>8);this.I=this.I&-256|a}function le(a){a=a.call(this,this.I&255,this.J>>8);this.I=this.I&-256|a}function me(a){a=a.call(this,this.I&255,this.B>>8);this.I=this.I&-256|a}function ne(a){a=a.call(this,this.J&255,this.G&255);this.J=this.J&-256|a}function oe(a){a=a.call(this,this.J&255,this.I&255);this.J=this.J&-256|a} +function pe(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function qe(a){a=a.call(this,this.J&255,this.B&255);this.J=this.J&-256|a}function re(a){a=a.call(this,this.J&255,this.G>>8);this.J=this.J&-256|a}function se(a){a=a.call(this,this.J&255,this.I>>8);this.J=this.J&-256|a}function te(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function ue(a){a=a.call(this,this.J&255,this.B>>8);this.J=this.J&-256|a} +function ve(a){a=a.call(this,this.B&255,this.G&255);this.B=this.B&-256|a}function we(a){a=a.call(this,this.B&255,this.I&255);this.B=this.B&-256|a}function xe(a){a=a.call(this,this.B&255,this.J&255);this.B=this.B&-256|a}function ye(a){a=a.call(this,this.B&255,this.B&255);this.B=this.B&-256|a}function ze(a){a=a.call(this,this.B&255,this.G>>8);this.B=this.B&-256|a}function Ae(a){a=a.call(this,this.B&255,this.I>>8);this.B=this.B&-256|a} +function Be(a){a=a.call(this,this.B&255,this.J>>8);this.B=this.B&-256|a}function Ce(a){a=a.call(this,this.B&255,this.B>>8);this.B=this.B&-256|a}function De(a){a=a.call(this,this.G>>8,this.G&255);this.G=this.G&255|a<<8}function Ee(a){a=a.call(this,this.G>>8,this.I&255);this.G=this.G&255|a<<8}function Fe(a){a=a.call(this,this.G>>8,this.J&255);this.G=this.G&255|a<<8}function Ge(a){a=a.call(this,this.G>>8,this.B&255);this.G=this.G&255|a<<8} +function He(a){a=a.call(this,this.G>>8,this.G>>8);this.G=this.G&255|a<<8}function Ie(a){a=a.call(this,this.G>>8,this.I>>8);this.G=this.G&255|a<<8}function Je(a){a=a.call(this,this.G>>8,this.J>>8);this.G=this.G&255|a<<8}function Ke(a){a=a.call(this,this.G>>8,this.B>>8);this.G=this.G&255|a<<8}function Le(a){a=a.call(this,this.I>>8,this.G&255);this.I=this.I&255|a<<8}function Me(a){a=a.call(this,this.I>>8,this.I&255);this.I=this.I&255|a<<8} +function Ne(a){a=a.call(this,this.I>>8,this.J&255);this.I=this.I&255|a<<8}function Oe(a){a=a.call(this,this.I>>8,this.B&255);this.I=this.I&255|a<<8}function Pe(a){a=a.call(this,this.I>>8,this.G>>8);this.I=this.I&255|a<<8}function Qe(a){a=a.call(this,this.I>>8,this.I>>8);this.I=this.I&255|a<<8}function Re(a){a=a.call(this,this.I>>8,this.J>>8);this.I=this.I&255|a<<8}function Se(a){a=a.call(this,this.I>>8,this.B>>8);this.I=this.I&255|a<<8} +function Te(a){a=a.call(this,this.J>>8,this.G&255);this.J=this.J&255|a<<8}function Ue(a){a=a.call(this,this.J>>8,this.I&255);this.J=this.J&255|a<<8}function Ve(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function We(a){a=a.call(this,this.J>>8,this.B&255);this.J=this.J&255|a<<8}function Xe(a){a=a.call(this,this.J>>8,this.G>>8);this.J=this.J&255|a<<8}function Ye(a){a=a.call(this,this.J>>8,this.I>>8);this.J=this.J&255|a<<8} +function Ze(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function $e(a){a=a.call(this,this.J>>8,this.B>>8);this.J=this.J&255|a<<8}function af(a){a=a.call(this,this.B>>8,this.G&255);this.B=this.B&255|a<<8}function bf(a){a=a.call(this,this.B>>8,this.I&255);this.B=this.B&255|a<<8}function cf(a){a=a.call(this,this.B>>8,this.J&255);this.B=this.B&255|a<<8}function df(a){a=a.call(this,this.B>>8,this.B&255);this.B=this.B&255|a<<8} +function ef(a){a=a.call(this,this.B>>8,this.G>>8);this.B=this.B&255|a<<8}function ff(a){a=a.call(this,this.B>>8,this.I>>8);this.B=this.B&255|a<<8}function gf(a){a=a.call(this,this.B>>8,this.J>>8);this.B=this.B&255|a<<8}function hf(a){a=a.call(this,this.B>>8,this.B>>8);this.B=this.B&255|a<<8}function jf(a){this.G=a.call(this,this.G,this.G)}function kf(a){this.G=a.call(this,this.G,this.I)}function lf(a){this.G=a.call(this,this.G,this.J)}function mf(a){this.G=a.call(this,this.G,this.B)} +function nf(a){this.G=a.call(this,this.G,this.X)}function of(a){this.G=a.call(this,this.G,this.H)}function pf(a){this.G=a.call(this,this.G,this.F)}function qf(a){this.G=a.call(this,this.G,this.D)}function rf(a){this.I=a.call(this,this.I,this.G)}function sf(a){this.I=a.call(this,this.I,this.I)}function tf(a){this.I=a.call(this,this.I,this.J)}function uf(a){this.I=a.call(this,this.I,this.B)}function vf(a){this.I=a.call(this,this.I,this.X)}function wf(a){this.I=a.call(this,this.I,this.H)} +function xf(a){this.I=a.call(this,this.I,this.F)}function yf(a){this.I=a.call(this,this.I,this.D)}function zf(a){this.J=a.call(this,this.J,this.G)}function Af(a){this.J=a.call(this,this.J,this.I)}function Bf(a){this.J=a.call(this,this.J,this.J)}function Cf(a){this.J=a.call(this,this.J,this.B)}function Df(a){this.J=a.call(this,this.J,this.X)}function Ef(a){this.J=a.call(this,this.J,this.H)}function Ff(a){this.J=a.call(this,this.J,this.F)}function Gf(a){this.J=a.call(this,this.J,this.D)} +function Hf(a){this.B=a.call(this,this.B,this.G)}function If(a){this.B=a.call(this,this.B,this.I)}function Jf(a){this.B=a.call(this,this.B,this.J)}function Kf(a){this.B=a.call(this,this.B,this.B)}function Lf(a){this.B=a.call(this,this.B,this.X)}function Mf(a){this.B=a.call(this,this.B,this.H)}function Nf(a){this.B=a.call(this,this.B,this.F)}function Of(a){this.B=a.call(this,this.B,this.D)}function Pf(a){this.X=a.call(this,this.X,this.G)}function Qf(a){this.X=a.call(this,this.X,this.I)} +function Rf(a){this.X=a.call(this,this.X,this.J)}function Sf(a){this.X=a.call(this,this.X,this.B)}function Tf(a){this.X=a.call(this,this.X,this.X)}function Uf(a){this.X=a.call(this,this.X,this.H)}function Vf(a){this.X=a.call(this,this.X,this.F)}function Wf(a){this.X=a.call(this,this.X,this.D)}function Xf(a){this.H=a.call(this,this.H,this.G)}function Yf(a){this.H=a.call(this,this.H,this.I)}function Zf(a){this.H=a.call(this,this.H,this.J)}function $f(a){this.H=a.call(this,this.H,this.B)} +function ag(a){this.H=a.call(this,this.H,this.X)}function bg(a){this.H=a.call(this,this.H,this.H)}function cg(a){this.H=a.call(this,this.H,this.F)}function dg(a){this.H=a.call(this,this.H,this.D)}function eg(a){this.F=a.call(this,this.F,this.G)}function fg(a){this.F=a.call(this,this.F,this.I)}function gg(a){this.F=a.call(this,this.F,this.J)}function hg(a){this.F=a.call(this,this.F,this.B)}function ig(a){this.F=a.call(this,this.F,this.X)}function jg(a){this.F=a.call(this,this.F,this.H)} +function kg(a){this.F=a.call(this,this.F,this.F)}function lg(a){this.F=a.call(this,this.F,this.D)}function mg(a){this.D=a.call(this,this.D,this.G)}function ng(a){this.D=a.call(this,this.D,this.I)}function og(a){this.D=a.call(this,this.D,this.J)}function pg(a){this.D=a.call(this,this.D,this.B)}function qg(a){this.D=a.call(this,this.D,this.X)}function rg(a){this.D=a.call(this,this.D,this.H)}function sg(a){this.D=a.call(this,this.D,this.F)}function tg(a){this.D=a.call(this,this.D,this.D)} +var ug=[function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.G&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.G&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.G&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.G&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.F),this.G&255);this.Q(a);this.A-=this.Z},function(a){a= a.call(this,this.N(this.C,this.D),this.G&255);this.Q(a);this.A-=this.Z},function(a){a=a.call(this,this.N(this.C,this.K()),this.G&255);this.Q(a);this.A-=this.na},function(a){a=a.call(this,this.N(this.C,this.B),this.G&255);this.Q(a);this.A-=this.Z},function(a){a=a.call(this,this.N(this.C,this.B+this.F&65535),this.I&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.I&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.F& 65535),this.I&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.I&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.F),this.I&255);this.Q(a);this.A-=this.Z},function(a){a=a.call(this,this.N(this.C,this.D),this.I&255);this.Q(a);this.A-=this.Z},function(a){a=a.call(this,this.N(this.C,this.K()),this.I&255);this.Q(a);this.A-=this.na},function(a){a=a.call(this,this.N(this.C,this.B),this.I&255);this.Q(a);this.A-=this.Z},function(a){a= a.call(this,this.N(this.C,this.B+this.F&65535),this.J&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.B+this.D&65535),this.J&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.F&65535),this.J&255);this.Q(a);this.A-=this.ca},function(a){a=a.call(this,this.N(this.M,this.H+this.D&65535),this.J&255);this.Q(a);this.A-=this.ba},function(a){a=a.call(this,this.N(this.C,this.F),this.J&255);this.Q(a);this.A-=this.Z},function(a){a=a.call(this,this.N(this.C, @@ -141,7 +141,7 @@ this.U},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.I>>8 this.U},function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.U},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.K()&65535),this.J>>8); this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.K()&65535),this.J>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.F+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.U},function(a){a=a.call(this,this.N(this.C,this.B+this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.M,this.H+this.F+this.K()& 65535),this.B>>8);this.Q(a);this.A-=this.V},function(a){a=a.call(this,this.N(this.M,this.H+this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.U},function(a){a=a.call(this,this.N(this.C,this.F+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.D+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.M,this.H+this.K()&65535),this.B>>8);this.Q(a);this.A-=this.P},function(a){a=a.call(this,this.N(this.C,this.B+this.K()& -65535),this.B>>8);this.Q(a);this.A-=this.P},ce,ke,se,Ae,Ie,Qe,Ye,ff,de,le,te,Be,Je,Re,Ze,gf,ee,me,ue,Ce,Ke,Se,$e,hf,fe,ne,ve,De,Le,Te,af,jf,ge,oe,we,Ee,Me,Ue,bf,kf,he,pe,xe,Fe,Ne,Ve,cf,lf,ie,qe,ye,Ge,Oe,We,df,mf,je,re,ze,He,Pe,Xe,ef,nf],Ag=[function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.G);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.G);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.G); +65535),this.B>>8);this.Q(a);this.A-=this.P},Yd,fe,ne,ve,De,Le,Te,af,Zd,ge,oe,we,Ee,Me,Ue,bf,$d,he,pe,xe,Fe,Ne,Ve,cf,ae,ie,qe,ye,Ge,Oe,We,df,be,je,re,ze,He,Pe,Xe,ef,ce,ke,se,Ae,Ie,Qe,Ye,ff,de,le,te,Be,Je,Re,Ze,gf,ee,me,ue,Ce,Ke,Se,$e,hf],vg=[function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.G);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.G);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.G); this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.G);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.F),this.G);this.R(a);this.A-=this.Z},function(a){a=a.call(this,this.O(this.C,this.D),this.G);this.R(a);this.A-=this.Z},function(a){a=a.call(this,this.O(this.C,this.K()),this.G);this.R(a);this.A-=this.na},function(a){a=a.call(this,this.O(this.C,this.B),this.G);this.R(a);this.A-=this.Z},function(a){a=a.call(this,this.O(this.C,this.B+ this.F&65535),this.I);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.I);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.I);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.D&65535),this.I);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.F),this.I);this.R(a);this.A-=this.Z},function(a){a=a.call(this,this.O(this.C,this.D),this.I);this.R(a);this.A-=this.Z}, function(a){a=a.call(this,this.O(this.C,this.K()),this.I);this.R(a);this.A-=this.na},function(a){a=a.call(this,this.O(this.C,this.B),this.I);this.R(a);this.A-=this.Z},function(a){a=a.call(this,this.O(this.C,this.B+this.F&65535),this.J);this.R(a);this.A-=this.ba},function(a){a=a.call(this,this.O(this.C,this.B+this.D&65535),this.J);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+this.F&65535),this.J);this.R(a);this.A-=this.ca},function(a){a=a.call(this,this.O(this.M,this.H+ @@ -178,7 +178,7 @@ this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.M,this.H+this.D+ this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.K()&65535),this.F);this.R(a);this.A-=this.U},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.K()&65535),this.F);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.K()&65535),this.F);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.K()&65535),this.F);this.R(a);this.A-=this.U},function(a){a=a.call(this,this.O(this.C,this.F+this.K()&65535),this.F); this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.F);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.F+this.K()&65535),this.D);this.R(a);this.A-=this.U},function(a){a=a.call(this,this.O(this.C,this.B+this.D+this.K()&65535),this.D);this.R(a); this.A-=this.V},function(a){a=a.call(this,this.O(this.M,this.H+this.F+this.K()&65535),this.D);this.R(a);this.A-=this.V},function(a){a=a.call(this,this.O(this.M,this.H+this.D+this.K()&65535),this.D);this.R(a);this.A-=this.U},function(a){a=a.call(this,this.O(this.C,this.F+this.K()&65535),this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.C,this.D+this.K()&65535),this.D);this.R(a);this.A-=this.P},function(a){a=a.call(this,this.O(this.M,this.H+this.K()&65535),this.D);this.R(a);this.A-= -this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.D);this.R(a);this.A-=this.P},of,wf,Ef,Mf,Uf,bg,jg,rg,pf,xf,Ff,Nf,Vf,cg,kg,sg,qf,yf,Gf,Of,Wf,dg,lg,tg,rf,zf,Hf,Pf,Xf,eg,mg,ug,sf,Af,If,Qf,Yf,fg,ng,vg,tf,Bf,Jf,Rf,Zf,gg,og,wg,uf,Cf,Kf,Sf,$f,hg,pg,xg,vf,Df,Lf,Tf,ag,ig,qg,yg],Bg=[function(a){a=a.call(this,this.G&255,this.S(this.C,this.B+this.F&65535));this.G=this.G&-256|a;this.A-=this.ba},function(a){a=a.call(this,this.G&255,this.S(this.C,this.B+this.D&65535));this.G=this.G&-256| +this.P},function(a){a=a.call(this,this.O(this.C,this.B+this.K()&65535),this.D);this.R(a);this.A-=this.P},jf,rf,zf,Hf,Pf,Xf,eg,mg,kf,sf,Af,If,Qf,Yf,fg,ng,lf,tf,Bf,Jf,Rf,Zf,gg,og,mf,uf,Cf,Kf,Sf,$f,hg,pg,nf,vf,Df,Lf,Tf,ag,ig,qg,of,wf,Ef,Mf,Uf,bg,jg,rg,pf,xf,Ff,Nf,Vf,cg,kg,sg,qf,yf,Gf,Of,Wf,dg,lg,tg],wg=[function(a){a=a.call(this,this.G&255,this.S(this.C,this.B+this.F&65535));this.G=this.G&-256|a;this.A-=this.ba},function(a){a=a.call(this,this.G&255,this.S(this.C,this.B+this.D&65535));this.G=this.G&-256| a;this.A-=this.ca},function(a){a=a.call(this,this.G&255,this.S(this.M,this.H+this.F&65535));this.G=this.G&-256|a;this.A-=this.ca},function(a){a=a.call(this,this.G&255,this.S(this.M,this.H+this.D&65535));this.G=this.G&-256|a;this.A-=this.ba},function(a){a=a.call(this,this.G&255,this.S(this.C,this.F));this.G=this.G&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.G&255,this.S(this.C,this.D));this.G=this.G&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.G&255,this.S(this.C,this.K()));this.G= this.G&-256|a;this.A-=this.na},function(a){a=a.call(this,this.G&255,this.S(this.C,this.B));this.G=this.G&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.I&255,this.S(this.C,this.B+this.F&65535));this.I=this.I&-256|a;this.A-=this.ba},function(a){a=a.call(this,this.I&255,this.S(this.C,this.B+this.D&65535));this.I=this.I&-256|a;this.A-=this.ca},function(a){a=a.call(this,this.I&255,this.S(this.M,this.H+this.F&65535));this.I=this.I&-256|a;this.A-=this.ca},function(a){a=a.call(this,this.I&255,this.S(this.M, this.H+this.D&65535));this.I=this.I&-256|a;this.A-=this.ba},function(a){a=a.call(this,this.I&255,this.S(this.C,this.F));this.I=this.I&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.I&255,this.S(this.C,this.D));this.I=this.I&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.I&255,this.S(this.C,this.K()));this.I=this.I&-256|a;this.A-=this.na},function(a){a=a.call(this,this.I&255,this.S(this.C,this.B));this.I=this.I&-256|a;this.A-=this.Z},function(a){a=a.call(this,this.J&255,this.S(this.C, @@ -221,7 +221,7 @@ this.P},function(a){a=a.call(this,this.G>>8,this.S(this.C,this.D+this.K()&65535) this.V},function(a){a=a.call(this,this.J>>8,this.S(this.M,this.H+this.F+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.J>>8,this.S(this.M,this.H+this.D+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.U},function(a){a=a.call(this,this.J>>8,this.S(this.C,this.F+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>>8,this.S(this.C,this.D+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>> 8,this.S(this.M,this.H+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.J>>8,this.S(this.C,this.B+this.K()&65535));this.J=this.J&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.S(this.C,this.B+this.F+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.U},function(a){a=a.call(this,this.B>>8,this.S(this.C,this.B+this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.B>>8,this.S(this.M,this.H+this.F+this.K()& 65535));this.B=this.B&255|a<<8;this.A-=this.V},function(a){a=a.call(this,this.B>>8,this.S(this.M,this.H+this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.U},function(a){a=a.call(this,this.B>>8,this.S(this.C,this.F+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.S(this.C,this.D+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},function(a){a=a.call(this,this.B>>8,this.S(this.M,this.H+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P}, -function(a){a=a.call(this,this.B>>8,this.S(this.C,this.B+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},ce,de,ee,fe,ge,he,ie,je,ke,le,me,ne,oe,pe,qe,re,se,te,ue,ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf],O=[function(a){this.G=a.call(this,this.G,this.T(this.C,this.B+this.F&65535));this.A-=this.ba},function(a){this.G=a.call(this,this.G,this.T(this.C,this.B+this.D&65535));this.A-=this.ca},function(a){this.G= +function(a){a=a.call(this,this.B>>8,this.S(this.C,this.B+this.K()&65535));this.B=this.B&255|a<<8;this.A-=this.P},Yd,Zd,$d,ae,be,ce,de,ee,fe,ge,he,ie,je,ke,le,me,ne,oe,pe,qe,re,se,te,ue,ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf],O=[function(a){this.G=a.call(this,this.G,this.T(this.C,this.B+this.F&65535));this.A-=this.ba},function(a){this.G=a.call(this,this.G,this.T(this.C,this.B+this.D&65535));this.A-=this.ca},function(a){this.G= a.call(this,this.G,this.T(this.M,this.H+this.F&65535));this.A-=this.ca},function(a){this.G=a.call(this,this.G,this.T(this.M,this.H+this.D&65535));this.A-=this.ba},function(a){this.G=a.call(this,this.G,this.T(this.C,this.F));this.A-=this.Z},function(a){this.G=a.call(this,this.G,this.T(this.C,this.D));this.A-=this.Z},function(a){this.G=a.call(this,this.G,this.T(this.C,this.K()));this.A-=this.na},function(a){this.G=a.call(this,this.G,this.T(this.C,this.B));this.A-=this.Z},function(a){this.I=a.call(this, this.I,this.T(this.C,this.B+this.F&65535));this.A-=this.ba},function(a){this.I=a.call(this,this.I,this.T(this.C,this.B+this.D&65535));this.A-=this.ca},function(a){this.I=a.call(this,this.I,this.T(this.M,this.H+this.F&65535));this.A-=this.ca},function(a){this.I=a.call(this,this.I,this.T(this.M,this.H+this.D&65535));this.A-=this.ba},function(a){this.I=a.call(this,this.I,this.T(this.C,this.F));this.A-=this.Z},function(a){this.I=a.call(this,this.I,this.T(this.C,this.D));this.A-=this.Z},function(a){this.I= a.call(this,this.I,this.T(this.C,this.K()));this.A-=this.na},function(a){this.I=a.call(this,this.I,this.T(this.C,this.B));this.A-=this.Z},function(a){this.J=a.call(this,this.J,this.T(this.C,this.B+this.F&65535));this.A-=this.ba},function(a){this.J=a.call(this,this.J,this.T(this.C,this.B+this.D&65535));this.A-=this.ca},function(a){this.J=a.call(this,this.J,this.T(this.M,this.H+this.F&65535));this.A-=this.ca},function(a){this.J=a.call(this,this.J,this.T(this.M,this.H+this.D&65535));this.A-=this.ba}, @@ -256,7 +256,7 @@ a.call(this,this.H,this.T(this.C,this.B+this.D+this.K()&65535));this.A-=this.V}, this.H+this.K()&65535));this.A-=this.P},function(a){this.H=a.call(this,this.H,this.T(this.C,this.B+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.T(this.C,this.B+this.F+this.K()&65535));this.A-=this.U},function(a){this.F=a.call(this,this.F,this.T(this.C,this.B+this.D+this.K()&65535));this.A-=this.V},function(a){this.F=a.call(this,this.F,this.T(this.M,this.H+this.F+this.K()&65535));this.A-=this.V},function(a){this.F=a.call(this,this.F,this.T(this.M,this.H+this.D+this.K()& 65535));this.A-=this.U},function(a){this.F=a.call(this,this.F,this.T(this.C,this.F+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.T(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.T(this.M,this.H+this.K()&65535));this.A-=this.P},function(a){this.F=a.call(this,this.F,this.T(this.C,this.B+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.T(this.C,this.B+this.F+this.K()&65535));this.A-=this.U},function(a){this.D= a.call(this,this.D,this.T(this.C,this.B+this.D+this.K()&65535));this.A-=this.V},function(a){this.D=a.call(this,this.D,this.T(this.M,this.H+this.F+this.K()&65535));this.A-=this.V},function(a){this.D=a.call(this,this.D,this.T(this.M,this.H+this.D+this.K()&65535));this.A-=this.U},function(a){this.D=a.call(this,this.D,this.T(this.C,this.F+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.T(this.C,this.D+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.T(this.M, -this.H+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.T(this.C,this.B+this.K()&65535));this.A-=this.P},of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf,Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg],Cg=[function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.D& +this.H+this.K()&65535));this.A-=this.P},function(a){this.D=a.call(this,this.D,this.T(this.C,this.B+this.K()&65535));this.A-=this.P},jf,kf,lf,mf,nf,of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf,Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg,rg,sg,tg],xg=[function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.N(this.C,this.B+this.D& 65535),b.call(this));this.Q(c);this.A-=this.ca},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ca},function(a,b){var c=a[0].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c=a[0].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c=a[0].call(this,this.N(this.C, this.K()),b.call(this));this.Q(c);this.A-=this.na},function(a,b){var c=a[0].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.F&65535),b.call(this));this.Q(c);this.A-=this.ba},function(a,b){var c=a[1].call(this,this.N(this.C,this.B+this.D&65535),b.call(this));this.Q(c);this.A-=this.ca},function(a,b){var c=a[1].call(this,this.N(this.M,this.H+this.F&65535),b.call(this));this.Q(c);this.A-=this.ca},function(a,b){var c= a[1].call(this,this.N(this.M,this.H+this.D&65535),b.call(this));this.Q(c);this.A-=this.ba},function(a,b){var c=a[1].call(this,this.N(this.C,this.F),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.N(this.C,this.D),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.N(this.C,this.K()),b.call(this));this.Q(c);this.A-=this.na},function(a,b){var c=a[1].call(this,this.N(this.C,this.B),b.call(this));this.Q(c);this.A-=this.Z},function(a,b){var c= @@ -309,7 +309,7 @@ this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[4].call(th 255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[5].call(this,this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[5].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[5].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[5].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[5].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8},function(a,b){var c=a[6].call(this,this.G&255,b.call(this)); this.G=this.G&-256|c},function(a,b){var c=a[6].call(this,this.I&255,b.call(this));this.I=this.I&-256|c},function(a,b){var c=a[6].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[6].call(this,this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[6].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<<8},function(a,b){var c=a[6].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[6].call(this,this.J>>8,b.call(this));this.J=this.J& 255|c<<8},function(a,b){var c=a[6].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8},function(a,b){var c=a[7].call(this,this.G&255,b.call(this));this.G=this.G&-256|c},function(a,b){var c=a[7].call(this,this.I&255,b.call(this));this.I=this.I&-256|c},function(a,b){var c=a[7].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[7].call(this,this.B&255,b.call(this));this.B=this.B&-256|c},function(a,b){var c=a[7].call(this,this.G>>8,b.call(this));this.G=this.G&255|c<< -8},function(a,b){var c=a[7].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8}],Dg=[function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ca},function(a,b){var c=a[0].call(this, +8},function(a,b){var c=a[7].call(this,this.I>>8,b.call(this));this.I=this.I&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.B>>8,b.call(this));this.B=this.B&255|c<<8}],yg=[function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ca},function(a,b){var c=a[0].call(this, this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ca},function(a,b){var c=a[0].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c);this.A-=this.ba},function(a,b){var c=a[0].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[0].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[0].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.na},function(a,b){var c= a[0].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c);this.A-=this.ba},function(a,b){var c=a[1].call(this,this.O(this.C,this.B+this.D&65535),b.call(this));this.R(c);this.A-=this.ca},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.F&65535),b.call(this));this.R(c);this.A-=this.ca},function(a,b){var c=a[1].call(this,this.O(this.M,this.H+this.D&65535),b.call(this));this.R(c); this.A-=this.ba},function(a,b){var c=a[1].call(this,this.O(this.C,this.F),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.O(this.C,this.D),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[1].call(this,this.O(this.C,this.K()),b.call(this));this.R(c);this.A-=this.na},function(a,b){var c=a[1].call(this,this.O(this.C,this.B),b.call(this));this.R(c);this.A-=this.Z},function(a,b){var c=a[2].call(this,this.O(this.C,this.B+this.F&65535),b.call(this));this.R(c); @@ -359,270 +359,271 @@ a[3].call(this,this.B,b.call(this))},function(a,b){this.X=a[3].call(this,this.X, function(a,b){this.X=a[4].call(this,this.X,b.call(this))},function(a,b){this.H=a[4].call(this,this.H,b.call(this))},function(a,b){this.F=a[4].call(this,this.F,b.call(this))},function(a,b){this.D=a[4].call(this,this.D,b.call(this))},function(a,b){this.G=a[5].call(this,this.G,b.call(this))},function(a,b){this.I=a[5].call(this,this.I,b.call(this))},function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.B=a[5].call(this,this.B,b.call(this))},function(a,b){this.X=a[5].call(this,this.X, b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.D=a[5].call(this,this.D,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.J=a[6].call(this,this.J,b.call(this))},function(a,b){this.B=a[6].call(this,this.B,b.call(this))},function(a,b){this.Y|=512;this.X=a[6].call(this,this.X,b.call(this))},function(a, b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.D=a[6].call(this,this.D,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a,b){this.B=a[7].call(this,this.B,b.call(this))},function(a,b){this.X=a[7].call(this,this.X,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))}, -function(a,b){this.F=a[7].call(this,this.F,b.call(this))},function(a,b){this.D=a[7].call(this,this.D,b.call(this))}],Fg=[function(){var a=this.aa();16>(a&56)&&(this.Y|=1);Dg[a].call(this,jc,Ad)},function(){var a=this.aa();a&16||(this.Y|=1);Dg[a].call(this,Eg,Ad)},function(){O[this.aa()].call(this,Zd)},function(){O[this.aa()].call(this,$d)},N,N,N,N,N,N,N,G,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N, -N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N],kc=[function(){this.A-=2+(0>this.da?0:1);return this.ze.ua},function(){this.A-=2+(0>this.da?0:1);return this.Eg.ua},function(a){this.Y|=2;this.ze.load(a);this.A-= -17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.Eg.load(a);this.A-=17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.rb.load(a,!0)&&2048!=(this.rb.ic&2560)&&(3072==(this.rb.ic&3072)||this.rb.sc>=(this.Da.ua&3)&&this.rb.sc>=(a&3)))return Hc(this),a;Dc(this);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.rb.load(a,!0)&&512==(this.rb.ic&2560)&&this.rb.sc>=(this.Da.ua&3)&&this.rb.sc>=(a&3))return Hc(this),a;Dc(this);return a},M,M], -lc=[Zb,Zb,Zb,Zb,Zb,Zb,M,M],jc=lc,Eg=[function(a){0>this.da?G.call(this):(Mc(this,this.da+2,this.Pc),Lc(this,this.da+4,this.Pc>>16),a=this.Ie-this.Pc,this.A-=11);return a},function(a){0>this.da?G.call(this):(Mc(this,this.da+2,this.Qc),Lc(this,this.da+4,this.Qc>>16),a=this.ke-this.Qc,this.A-=12);return a},function(a){0>this.da?G.call(this):(this.Pc=F(this,this.da+2)|Kc(this,this.da+4)<<16,this.Ie=this.Pc+a,this.Y|=2,this.A-=11);return a},function(a){0>this.da?G.call(this):(this.Qc=F(this,this.da+2)| -Kc(this,this.da+4)<<16,this.ke=this.Qc+a,this.Y|=2,this.A-=12);return a},function(){this.A-=2+(0>this.da?0:1);return this.cd},M,function(a){this.cd=this.cd&65520|a&-65521;this.A-=3+(0>this.da?0:3);this.cd&1&&gc(this,!0);this.Y|=2;return a},M];function ac(){Fg[this.aa()].call(this)}function cc(){K(this,this.X);this.A-=this.Xb}function Ib(){var a=this.X;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.rk} -function Jb(){this.D=this.za();this.F=this.za();this.H=this.za();this.X+=2;this.B=this.za();this.J=this.za();this.I=this.za();this.G=this.za();this.A-=this.pk}function Kb(){O[this.aa()].call(this,Xd)}function bc(){Ag[this.aa()].call(this,Yd)}function Lb(){K(this,this.K());this.A-=this.Xb}function Mb(){O[this.aa()].call(this,Sd)}function Nb(){K(this,this.aa());this.A-=this.Xb}function Ob(){O[this.aa()].call(this,Rd)} -function Pb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=$a(this.ma,this.J,this.Ba-b-1);Lc(this,this.fb.Nb(this.D,0),d);this.D=this.D+(this.Fa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}} -function Qb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=this.Ba-b-1,d=$a(this.ma,this.J,d)|$a(this.ma,this.J,d)<<8;Mc(this,this.fb.Nb(this.D,1),d);this.D=this.D+(this.Fa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}} -function Rb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=Kc(this,this.Zb.Gc(this.F,0));this.F=this.F+(this.Fa&1024?-1:1)&65535;this.A-=c;this.I-=b;bb(this.ma,this.J,d,this.Ba-b-1);a&&(J(this,-2),this.Y|=256)}} -function Sb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=F(this,this.Zb.Gc(this.F,1));this.F=this.F+(this.Fa&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Ba-b-1;bb(this.ma,this.J,d&255,b);bb(this.ma,this.J,d>>8,b);a&&(J(this,-2),this.Y|=256)}}function Gg(){var a=this.L();Ac(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Hg(){var a=this.L();Ac(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)} -function Ig(){var a=this.L();vc(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Jg(){var a=this.L();vc(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)}function Kg(){var a=this.L();yc(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Lg(){var a=this.L();yc(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)}function Mg(){var a=this.L();vc(this)||yc(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb} -function Ng(){var a=this.L();vc(this)||yc(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)}function Og(){var a=this.L();zc(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Pg(){var a=this.L();zc(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)}function Qg(){var a=this.L();wc(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Rg(){var a=this.L();wc(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)} -function Sg(){var a=this.L();!zc(this)!=!Ac(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Tg(){var a=this.L();!zc(this)==!Ac(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Ug(){var a=this.L();yc(this)||!zc(this)!=!Ac(this)?(I(this,this.qa+a),this.A-=this.Bb):this.A-=this.Cb}function Vg(){var a=this.L();yc(this)||!zc(this)!=!Ac(this)?this.A-=this.Cb:(I(this,this.qa+a),this.A-=this.Bb)} -function Wg(){Cg[this.aa()].call(this,Cd,this.aa);this.A-=0>this.Aa?1:this.sg}function Tb(){Cg[this.aa()].call(this,Ld,zd)}function Ub(){Dg[this.aa()].call(this,Md,zd)}function Xg(){var a=this.K();I(this,this.za());this.X=this.X+a&65535;this.A-=this.wk}function Yg(){I(this,this.za());this.A-=this.tk} -function Vb(){var a=this.K(),b=this.aa()&31;this.A-=11;K(this,this.H);var c=this.X;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.H=this.H-2&65535,K(this,F(this,this.Sb.Gc(this.H,1)));K(this,c)}this.H=c;this.X=this.X-a&65535}function Wb(){this.X=this.H;this.H=this.za();this.A-=5}function Zg(){var a=this.K();ec(this,this.za(),this.za());this.X=this.X+a&65535;this.Ug&&ic(this,this.Ba);this.A-=this.vk}function $g(){ec(this,this.za(),this.za());this.A-=this.uk} -function ah(){O[this.aa()].call(this,Td);this.A-=8}function bh(){this.Y|=36;this.A-=this.qb}function Xb(){N.call(this)} -var Hb=[function(){var a=this.aa();zg[a].call(this,Qc)},function(){Ag[this.aa()].call(this,Yc)},function(){Bg[this.aa()].call(this,Qc)},function(){O[this.aa()].call(this,Yc)},function(){this.G=this.G&-256|Qc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Yc.call(this,this.G,this.K());this.A--},function(){K(this,this.fb.ua);this.A-=this.rf},function(){uc(this,this.za());this.A-=this.Qb},function(){zg[this.aa()].call(this,Rc)},function(){Ag[this.aa()].call(this,Zc)},function(){Bg[this.aa()].call(this, -Rc)},function(){O[this.aa()].call(this,Zc)},function(){this.G=this.G&-256|Rc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Zc.call(this,this.G,this.K());this.A--},function(){K(this,this.Da.ua);this.A-=this.rf},function(){rc(this,this.za());this.A-=this.Qb},function(){zg[this.aa()].call(this,Sc)},function(){Ag[this.aa()].call(this,$c)},function(){Bg[this.aa()].call(this,Sc)},function(){O[this.aa()].call(this,$c)},function(){this.G=this.G&-256|Sc.call(this,this.G&255,this.aa());this.A--}, -function(){this.G=$c.call(this,this.G,this.K());this.A--},function(){K(this,this.Sb.ua);this.A-=this.rf},function(){tc(this,this.za());this.A-=this.Qb},function(){zg[this.aa()].call(this,Tc)},function(){Ag[this.aa()].call(this,ad)},function(){Bg[this.aa()].call(this,Tc)},function(){O[this.aa()].call(this,ad)},function(){this.G=this.G&-256|Tc.call(this,this.G&255,this.aa());this.A--},function(){this.G=ad.call(this,this.G,this.K());this.A--},function(){K(this,this.Zb.ua);this.A-=this.rf},function(){sc(this, -this.za());this.A-=this.Qb},function(){zg[this.aa()].call(this,Uc)},function(){Ag[this.aa()].call(this,bd)},function(){Bg[this.aa()].call(this,Uc)},function(){O[this.aa()].call(this,bd)},function(){this.G=this.G&-256|Uc.call(this,this.G&255,this.aa());this.A--},function(){this.G=bd.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.fb;this.A-=this.qb},function(){var a=this.G&255,b=xc(this),c=this.W&this.$;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.G=this.G&-256| -(this.W=this.fa=a&255);this.$=65536;c&&(this.W|=this.$);b?Gc(this):Cc(this);this.A-=this.Zd},function(){zg[this.aa()].call(this,Vc)},function(){Ag[this.aa()].call(this,cd)},function(){Bg[this.aa()].call(this,Vc)},function(){O[this.aa()].call(this,cd)},function(){this.G=this.G&-256|Vc.call(this,this.G&255,this.aa());this.A--},function(){this.G=cd.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.Da;this.A-=this.qb},function(){var a=this.G&255,b=xc(this),c=this.W&this.$; -if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.G=this.G&-256|(this.W=this.fa=a&255);this.$=65536;c&&(this.W|=this.$);b?Gc(this):Cc(this);this.A-=this.Zd},function(){zg[this.aa()].call(this,Wc)},function(){Ag[this.aa()].call(this,dd)},function(){Bg[this.aa()].call(this,Wc)},function(){O[this.aa()].call(this,dd)},function(){this.G=this.G&-256|Wc.call(this,this.G&255,this.aa());this.A--},function(){this.G=dd.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.Sb;this.A-= -this.qb},function(){var a=this.G&255,b=this.G>>8,c,d=xc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?Gc(this):Cc(this);this.A-=this.Zd},function(){zg[this.aa()].call(this,Xc)},function(){Ag[this.aa()].call(this,ed)},function(){Bg[this.aa()].call(this,Xc)},function(){O[this.aa()].call(this,ed)},function(){this.G=this.G&-256|Xc.call(this,this.G&255,this.aa());this.A--},function(){this.G=ed.call(this,this.G,this.K());this.A--},function(){this.Y|= -20;this.C=this.M=this.Zb;this.A-=this.qb},function(){var a=this.G&255,b=this.G>>8,c,d=xc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?Gc(this):Cc(this);this.A-=this.Zd},function(){this.ha=this.G;this.G=(this.fa=this.G+1)&65535;this.W=this.G|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.I;this.I=(this.fa=this.I+1)&65535;this.W=this.I|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.J; +function(a,b){this.F=a[7].call(this,this.F,b.call(this))},function(a,b){this.D=a[7].call(this,this.D,b.call(this))}],Ag=[function(){var a=this.aa();16>(a&56)&&(this.Y|=1);yg[a].call(this,ec,vd)},function(){var a=this.aa();a&16||(this.Y|=1);yg[a].call(this,zg,vd)},function(){O[this.aa()].call(this,Ud)},function(){O[this.aa()].call(this,Vd)},N,N,N,N,N,N,N,G,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N, +N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N],fc=[function(){this.A-=2+(0>this.da?0:1);return this.Be.ua},function(){this.A-=2+(0>this.da?0:1);return this.Ig.ua},function(a){this.Y|=2;this.Be.load(a);this.A-= +17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.Ig.load(a);this.A-=17+(0>this.da?0:2);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.sb.load(a,!0)&&2048!=(this.sb.kc&2560)&&(3072==(this.sb.kc&3072)||this.sb.uc>=(this.Ea.ua&3)&&this.sb.uc>=(a&3)))return Cc(this),a;yc(this);return a},function(a){this.Y|=2;this.A-=14+(0>this.da?0:2);if(0<=this.sb.load(a,!0)&&512==(this.sb.kc&2560)&&this.sb.uc>=(this.Ea.ua&3)&&this.sb.uc>=(a&3))return Cc(this),a;yc(this);return a},M,M], +gc=[Ub,Ub,Ub,Ub,Ub,Ub,M,M],ec=gc,zg=[function(a){0>this.da?G.call(this):(Hc(this,this.da+2,this.Rc),Gc(this,this.da+4,this.Rc>>16),a=this.Ke-this.Rc,this.A-=11);return a},function(a){0>this.da?G.call(this):(Hc(this,this.da+2,this.Sc),Gc(this,this.da+4,this.Sc>>16),a=this.me-this.Sc,this.A-=12);return a},function(a){0>this.da?G.call(this):(this.Rc=F(this,this.da+2)|Fc(this,this.da+4)<<16,this.Ke=this.Rc+a,this.Y|=2,this.A-=11);return a},function(a){0>this.da?G.call(this):(this.Sc=F(this,this.da+2)| +Fc(this,this.da+4)<<16,this.me=this.Sc+a,this.Y|=2,this.A-=12);return a},function(){this.A-=2+(0>this.da?0:1);return this.ed},M,function(a){this.ed=this.ed&65520|a&-65521;this.A-=3+(0>this.da?0:3);this.ed&1&&bc(this,!0);this.Y|=2;return a},M];function Wb(){Ag[this.aa()].call(this)}function Yb(){K(this,this.X);this.A-=this.Zb}function Db(){var a=this.X;K(this,this.G);K(this,this.I);K(this,this.J);K(this,this.B);K(this,a);K(this,this.H);K(this,this.F);K(this,this.D);this.A-=this.vk} +function Eb(){this.D=this.Aa();this.F=this.Aa();this.H=this.Aa();this.X+=2;this.B=this.Aa();this.J=this.Aa();this.I=this.Aa();this.G=this.Aa();this.A-=this.tk}function Fb(){O[this.aa()].call(this,Sd)}function Xb(){vg[this.aa()].call(this,Td)}function Gb(){K(this,this.K());this.A-=this.Zb}function Hb(){O[this.aa()].call(this,Nd)}function Ib(){K(this,this.aa());this.A-=this.Zb}function Jb(){O[this.aa()].call(this,Md)} +function Kb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=Va(this.ma,this.J,this.Ca-b-1);Gc(this,this.gb.Ob(this.D,0),d);this.D=this.D+(this.Ga&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}} +function Lb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=this.Ca-b-1,d=Va(this.ma,this.J,d)|Va(this.ma,this.J,d)<<8;Hc(this,this.gb.Ob(this.D,1),d);this.D=this.D+(this.Ga&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}} +function Mb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=Fc(this,this.bc.Jc(this.F,0));this.F=this.F+(this.Ga&1024?-1:1)&65535;this.A-=c;this.I-=b;Xa(this.ma,this.J,d,this.Ca-b-1);a&&(J(this,-2),this.Y|=256)}} +function Nb(){var a=1,b=0,c=5;this.pa&192&&(a=this.I,b=1,this.pa&256&&(c=4));if(a--){var d=F(this,this.bc.Jc(this.F,1));this.F=this.F+(this.Ga&1024?-2:2)&65535;this.A-=c;this.I-=b;b=this.Ca-b-1;Xa(this.ma,this.J,d&255,b);Xa(this.ma,this.J,d>>8,b);a&&(J(this,-2),this.Y|=256)}}function Bg(){var a=this.L();vc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Cg(){var a=this.L();vc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)} +function Dg(){var a=this.L();qc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Eg(){var a=this.L();qc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Fg(){var a=this.L();tc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Gg(){var a=this.L();tc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Hg(){var a=this.L();qc(this)||tc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db} +function Ig(){var a=this.L();qc(this)||tc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Jg(){var a=this.L();uc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Kg(){var a=this.L();uc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)}function Lg(){var a=this.L();rc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Mg(){var a=this.L();rc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)} +function Ng(){var a=this.L();!uc(this)!=!vc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Og(){var a=this.L();!uc(this)==!vc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Pg(){var a=this.L();tc(this)||!uc(this)!=!vc(this)?(I(this,this.qa+a),this.A-=this.Cb):this.A-=this.Db}function Qg(){var a=this.L();tc(this)||!uc(this)!=!vc(this)?this.A-=this.Db:(I(this,this.qa+a),this.A-=this.Cb)} +function Rg(){xg[this.aa()].call(this,xd,this.aa);this.A-=0>this.Ba?1:this.wg}function Ob(){xg[this.aa()].call(this,Gd,ud)}function Pb(){yg[this.aa()].call(this,Hd,ud)}function Sg(){var a=this.K();I(this,this.Aa());this.X=this.X+a&65535;this.A-=this.Ak}function Tg(){I(this,this.Aa());this.A-=this.xk} +function Qb(){var a=this.K(),b=this.aa()&31;this.A-=11;K(this,this.H);var c=this.X;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.H=this.H-2&65535,K(this,F(this,this.Tb.Jc(this.H,1)));K(this,c)}this.H=c;this.X=this.X-a&65535}function Rb(){this.X=this.H;this.H=this.Aa();this.A-=5}function Ug(){var a=this.K();$b(this,this.Aa(),this.Aa());this.X=this.X+a&65535;this.Yg&&dc(this,this.Ca);this.A-=this.zk}function Vg(){$b(this,this.Aa(),this.Aa());this.A-=this.yk} +function Wg(){O[this.aa()].call(this,Od);this.A-=8}function Xg(){this.Y|=36;this.A-=this.rb}function Sb(){N.call(this)} +var Cb=[function(){var a=this.aa();ug[a].call(this,Lc)},function(){vg[this.aa()].call(this,Tc)},function(){wg[this.aa()].call(this,Lc)},function(){O[this.aa()].call(this,Tc)},function(){this.G=this.G&-256|Lc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Tc.call(this,this.G,this.K());this.A--},function(){K(this,this.gb.ua);this.A-=this.uf},function(){pc(this,this.Aa());this.A-=this.Rb},function(){ug[this.aa()].call(this,Mc)},function(){vg[this.aa()].call(this,Uc)},function(){wg[this.aa()].call(this, +Mc)},function(){O[this.aa()].call(this,Uc)},function(){this.G=this.G&-256|Mc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Uc.call(this,this.G,this.K());this.A--},function(){K(this,this.Ea.ua);this.A-=this.uf},function(){jc(this,this.Aa());this.A-=this.Rb},function(){ug[this.aa()].call(this,Nc)},function(){vg[this.aa()].call(this,Vc)},function(){wg[this.aa()].call(this,Nc)},function(){O[this.aa()].call(this,Vc)},function(){this.G=this.G&-256|Nc.call(this,this.G&255,this.aa());this.A--}, +function(){this.G=Vc.call(this,this.G,this.K());this.A--},function(){K(this,this.Tb.ua);this.A-=this.uf},function(){oc(this,this.Aa());this.A-=this.Rb},function(){ug[this.aa()].call(this,Oc)},function(){vg[this.aa()].call(this,Wc)},function(){wg[this.aa()].call(this,Oc)},function(){O[this.aa()].call(this,Wc)},function(){this.G=this.G&-256|Oc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Wc.call(this,this.G,this.K());this.A--},function(){K(this,this.bc.ua);this.A-=this.uf},function(){nc(this, +this.Aa());this.A-=this.Rb},function(){ug[this.aa()].call(this,Pc)},function(){vg[this.aa()].call(this,Xc)},function(){wg[this.aa()].call(this,Pc)},function(){O[this.aa()].call(this,Xc)},function(){this.G=this.G&-256|Pc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Xc.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.gb;this.A-=this.rb},function(){var a=this.G&255,b=sc(this),c=this.W&this.$;if(9<(a&15)||b)a+=6,b=!0;if(159<a||c)a+=96,c=!0;this.G=this.G&-256| +(this.W=this.fa=a&255);this.$=65536;c&&(this.W|=this.$);b?Bc(this):xc(this);this.A-=this.ae},function(){ug[this.aa()].call(this,Qc)},function(){vg[this.aa()].call(this,Yc)},function(){wg[this.aa()].call(this,Qc)},function(){O[this.aa()].call(this,Yc)},function(){this.G=this.G&-256|Qc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Yc.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.Ea;this.A-=this.rb},function(){var a=this.G&255,b=sc(this),c=this.W&this.$; +if(9<(a&15)||b)a-=6,b=!0;if(159<a||c)a-=96,c=!0;this.G=this.G&-256|(this.W=this.fa=a&255);this.$=65536;c&&(this.W|=this.$);b?Bc(this):xc(this);this.A-=this.ae},function(){ug[this.aa()].call(this,Rc)},function(){vg[this.aa()].call(this,Zc)},function(){wg[this.aa()].call(this,Rc)},function(){O[this.aa()].call(this,Zc)},function(){this.G=this.G&-256|Rc.call(this,this.G&255,this.aa());this.A--},function(){this.G=Zc.call(this,this.G,this.K());this.A--},function(){this.Y|=20;this.C=this.M=this.Tb;this.A-= +this.rb},function(){var a=this.G&255,b=this.G>>8,c,d=sc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?Bc(this):xc(this);this.A-=this.ae},function(){ug[this.aa()].call(this,Sc)},function(){vg[this.aa()].call(this,$c)},function(){wg[this.aa()].call(this,Sc)},function(){O[this.aa()].call(this,$c)},function(){this.G=this.G&-256|Sc.call(this,this.G&255,this.aa());this.A--},function(){this.G=$c.call(this,this.G,this.K());this.A--},function(){this.Y|= +20;this.C=this.M=this.bc;this.A-=this.rb},function(){var a=this.G&255,b=this.G>>8,c,d=sc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.G=b<<8|(this.W=a);this.$=65536;c&&(this.W|=this.$);d?Bc(this):xc(this);this.A-=this.ae},function(){this.ha=this.G;this.G=(this.fa=this.G+1)&65535;this.W=this.G|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.I;this.I=(this.fa=this.I+1)&65535;this.W=this.I|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.J; this.J=(this.fa=this.J+1)&65535;this.W=this.J|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.B;this.B=(this.fa=this.B+1)&65535;this.W=this.B|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.X;this.X=(this.fa=this.X+1)&65535;this.W=this.X|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.H;this.H=(this.fa=this.H+1)&65535;this.W=this.H|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.F;this.F=(this.fa=this.F+ 1)&65535;this.W=this.F|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.D;this.D=(this.fa=this.D+1)&65535;this.W=this.D|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.G;this.G=(this.fa=this.G-1)&65535;this.W=this.G|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.I;this.I=(this.fa=this.I-1)&65535;this.W=this.I|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.J;this.J=(this.fa=this.J-1)&65535;this.W=this.J| (this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.B;this.B=(this.fa=this.B-1)&65535;this.W=this.B|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.X;this.X=(this.fa=this.X-1)&65535;this.W=this.X|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.H;this.H=(this.fa=this.H-1)&65535;this.W=this.H|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){this.ha=this.F;this.F=(this.fa=this.F-1)&65535;this.W=this.F|(this.W&this.$?1:0)<< -16;this.$=65536;this.A-=2},function(){this.ha=this.D;this.D=(this.fa=this.D-1)&65535;this.W=this.D|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){K(this,this.G);this.A-=this.Xb},function(){K(this,this.I);this.A-=this.Xb},function(){K(this,this.J);this.A-=this.Xb},function(){K(this,this.B);this.A-=this.Xb},function(){K(this,this.X-2&65535);this.A-=this.Xb},function(){K(this,this.H);this.A-=this.Xb},function(){K(this,this.F);this.A-=this.Xb},function(){K(this,this.D);this.A-=this.Xb},function(){this.G= -this.za();this.A-=this.Qb},function(){this.I=this.za();this.A-=this.Qb},function(){this.J=this.za();this.A-=this.Qb},function(){this.B=this.za();this.A-=this.Qb},function(){this.X=this.za();this.A-=this.Qb},function(){this.H=this.za();this.A-=this.Qb},function(){this.F=this.za();this.A-=this.Qb},function(){this.D=this.za();this.A-=this.Qb},Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Wg,function(){Dg[this.aa()].call(this,Dd,this.K);this.A-=0>this.Aa? -1:this.sg},Wg,function(){Dg[this.aa()].call(this,Dd,this.L);this.A-=0>this.Aa?1:this.sg},function(){zg[this.aa()].call(this,Pd)},function(){Ag[this.aa()].call(this,Qd)},function(){Bg[this.Pf=this.aa()].call(this,ae)},function(){O[this.Pf=this.aa()].call(this,be)},function(){this.Y|=1;zg[this.aa()].call(this,Nd)},function(){this.Y|=1;Ag[this.aa()].call(this,Nd)},function(){Bg[this.aa()].call(this,Nd)},function(){O[this.aa()].call(this,Nd)},function(){var a=this.aa();switch((a&56)>>3){case 0:this.lb= -this.fb.ua;break;case 1:this.lb=this.Da.ua;break;case 2:this.lb=this.Sb.ua;break;case 3:this.lb=this.Zb.ua;break;default:N.call(this);return}this.Y|=1;Ag[a].call(this,Od)},function(){this.Y|=1;this.C=this.M=this.Mk;O[this.aa()].call(this,Ud)},function(){var a,b=this.aa(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Ca){G.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.X;break;case 5:a=this.H;break;case 6:a=this.F;break; -case 7:a=this.D}}O[b].call(this,Nd);switch(c){case 0:uc(this,this.G);this.G=a;break;case 1:rc(this,this.I);this.I=a;break;case 2:tc(this,this.J);this.J=a;break;case 3:sc(this,this.B);this.B=a;break;case 4:uc(this,this.X);this.X=a;break;case 5:rc(this,this.H);this.H=a;break;case 6:tc(this,this.F);this.F=a;break;case 7:sc(this,this.D),this.D=a}},function(){this.Y|=1;Dg[this.aa()].call(this,Ed,this.za)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a;this.A-=3},function(){var a= -this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.X;this.X=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Dj},function(){var a=this.K(),b=this.K();K(this,this.Da.ua);K(this,this.qa); -ec(this,a,b);this.A-=this.Gj},function(){N.call(this)},function(){K(this,hc(this));this.A-=this.Xb},function(){fc(this,this.za());this.A-=this.Qb},function(){var a=this.G>>8;a&1?Fc(this):Bc(this);a&4?wc(this)||(this.fa^=1):wc(this)&&(this.fa^=1);a&16?Gc(this):Cc(this);a&64?Hc(this):Dc(this);a&128?Ic(this):zc(this)&&(this.fa^=this.$>>1|this.$>>2,this.ha^=32896);this.A-=this.kb},function(){this.G=this.G&255|(hc(this)&213)<<8;this.A-=this.kb},function(){this.G=this.G&-256|this.S(this.C,this.K());this.A-= -this.Xh},function(){this.G=this.T(this.C,this.K());this.A-=this.Xh},function(){var a=this.K(),b=this.G;Lc(this,this.C.Nb(a,0),b);this.A-=this.Yh},function(){var a=this.K(),b=this.G;Mc(this,this.C.Nb(a,1),b);this.A-=this.Yh},function(){var a=1,b=0,c=this.Zh;this.pa&192&&(a=this.I,b=1,c=this.ai,this.pa&256||(this.A-=this.$h));if(a--){var d=this.Fa&1024?-1:1,e=this.S(this.C,this.F);Lc(this,this.fb.Nb(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3: --2),this.Y|=256)}},function(){var a=1,b=0,c=this.Zh;this.pa&192&&(a=this.I,b=1,c=this.ai,this.pa&256||(this.A-=this.$h));if(a--){var d=this.Fa&1024?-2:2,e=this.T(this.C,this.F);Mc(this,this.fb.Nb(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Jh;this.pa&192&&(a=this.I,b=1,c=this.Lh,this.pa&256||(this.A-=this.Kh));if(a--){var d=this.Fa&1024?-1:1,e=this.S(this.C,this.F),f=this.N(this.fb,this.D);Xc.call(this, -e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.$a;this.I-=b;a&&yc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Jh;this.pa&192&&(a=this.I,b=1,c=this.Lh,this.pa&256||(this.A-=this.Kh));if(a--){var d=this.Fa&1024?-2:2,e=this.T(this.C,this.F),f=this.O(this.fb,this.D);ed.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.$a;this.I-=b;a&&yc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){this.W= -this.fa=this.ha=this.G&255&this.aa();this.$=256;this.A-=this.Zd},function(){this.W=this.fa=this.ha=this.G&this.K();this.$=65536;this.A-=this.Zd},function(){var a=1,b=0,c=this.ji;this.pa&192&&(a=this.I,b=1,c=this.li,this.pa&256||(this.A-=this.ki));if(a--){var d=this.G;Lc(this,this.fb.Nb(this.D,0),d);this.D=this.D+(this.Fa&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.ji;this.pa&192&&(a=this.I,b=1,c=this.li,this.pa&256||(this.A-=this.ki));if(a--){var d= -this.G;Mc(this,this.fb.Nb(this.D,1),d);this.D=this.D+(this.Fa&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Rh;this.pa&192&&(a=this.I,b=1,c=this.Th,this.pa&256||(this.A-=this.Sh));a--&&(this.G=this.G&-256|this.S(this.C,this.F),this.F=this.F+(this.Fa&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.Rh;this.pa&192&&(a=this.I,b=1,c=this.Th,this.pa&256||(this.A-=this.Sh));a--&&(this.G=this.T(this.C, -this.F),this.F=this.F+(this.Fa&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.di;this.pa&192&&(a=this.I,b=1,c=this.fi,this.pa&256||(this.A-=this.ei));a--&&(Xc.call(this,this.G&255,this.N(this.fb,this.D)),this.D=this.D+(this.Fa&1024?-1:1)&65535,this.A-=c-this.$a,this.I-=b,a&&yc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){var a=1,b=0,c=this.di;this.pa&192&&(a=this.I,b=1,c=this.fi,this.pa&256||(this.A-=this.ei));a--&&(ed.call(this, -this.G,this.O(this.fb,this.D)),this.D=this.D+(this.Fa&1024?-2:2)&65535,this.A-=c-this.$a,this.I-=b,a&&yc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){this.G=this.G&-256|this.aa();this.A-=this.kb},function(){this.I=this.I&-256|this.aa();this.A-=this.kb},function(){this.J=this.J&-256|this.aa();this.A-=this.kb},function(){this.B=this.B&-256|this.aa();this.A-=this.kb},function(){this.G=this.G&255|this.aa()<<8;this.A-=this.kb},function(){this.I=this.I&255|this.aa()<<8;this.A-=this.kb},function(){this.J= -this.J&255|this.aa()<<8;this.A-=this.kb},function(){this.B=this.B&255|this.aa()<<8;this.A-=this.kb},function(){this.G=this.K();this.A-=this.kb},function(){this.I=this.K();this.A-=this.kb},function(){this.J=this.K();this.A-=this.kb},function(){this.B=this.K();this.A-=this.kb},function(){this.X=this.K();this.A-=this.kb},function(){this.H=this.K();this.A-=this.kb},function(){this.F=this.K();this.A-=this.kb},function(){this.D=this.K();this.A-=this.kb},Xg,Yg,Xg,Yg,function(){O[this.aa()].call(this,Wd)}, -function(){O[this.aa()].call(this,Vd)},function(){this.Y|=1;Cg[this.aa()].call(this,Fd,this.aa)},function(){this.Y|=1;Dg[this.aa()].call(this,Fd,this.K)},Zg,$g,Zg,$g,function(){Oc.call(this,3,null,this.Xj)},function(){var a=this.aa(),b;a:{b=this.Uk[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],this.Ba)){b=!1;break a}b=!0}b?Oc.call(this,a,null,0):this.A--},function(){Ac(this)?Oc.call(this,4,null,this.Yj):this.A-=this.Zj},function(){ec(this,this.za(),this.za());fc(this,this.za()); -this.Ug&&ic(this,this.Ba);this.A-=this.Vj},function(){Cg[this.aa()].call(this,Gd,xd)},function(){Dg[this.aa()].call(this,Hd,xd)},function(){Cg[this.aa()].call(this,Gd,yd)},function(){Dg[this.aa()].call(this,Hd,yd)},function(){var a=this.aa(),b=this.G&255;this.G=(b/a&255)<<8|b%a;this.$=256;this.W=this.fa=b;this.A-=this.Aj},function(){var a=this.aa();this.W=this.fa=this.G=(this.G>>8)*a+this.G&255;this.$=256;this.A-=this.zj},function(){this.G=this.G&-256|(vc(this)?255:0);this.A-=2},function(){this.G= -this.G&-256|this.S(this.C,this.B+(this.G&255)&65535);this.A-=this.yk},ah,ah,ah,ah,ah,ah,ah,ah,function(){var a=this.L();(this.I=this.I-1&65535)&&this.W&this.$-1?(I(this,this.qa+a),this.A-=this.fk):this.A-=this.Uh},function(){var a=this.L();!(this.I=this.I-1&65535)||this.W&this.$-1?this.A-=this.Wh:(I(this,this.qa+a),this.A-=this.Vh)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.qa+a),this.A-=this.ek):this.A-=this.Uh},function(){var a=this.L();this.I?this.A-=this.Wh:(I(this,this.qa+ -a),this.A-=this.Vh)},function(){var a=this.aa();this.G=this.G&-256|$a(this.ma,a,this.Ba-2);this.A-=this.Oh},function(){var a=this.aa();this.G=$a(this.ma,a,this.Ba-1)|$a(this.ma,a+1&65535,this.Ba-2)<<8;this.A-=this.Oh},function(){var a=this.aa();bb(this.ma,a,this.G&255,this.Ba-2);this.A-=this.ci},function(){var a=this.aa();bb(this.ma,a,this.G&255,this.Ba-2);bb(this.ma,a+1&65535,this.G>>8,this.Ba-2);this.A-=this.ci},function(){var a=this.K();K(this,this.qa);I(this,this.qa+a);this.A-=this.Ej},function(){var a= -this.K();I(this,this.qa+a);this.A-=this.Ph},function(){ec(this,this.K(),this.K());this.A-=this.ak},function(){var a=this.L();I(this,this.qa+a);this.A-=this.Ph},function(){this.G=this.G&-256|$a(this.ma,this.J,this.Ba-1);this.A-=this.Nh},function(){this.G=$a(this.ma,this.J,this.Ba-1)|$a(this.ma,this.J+1&65535,this.Ba-1)<<8;this.A-=this.Nh},function(){bb(this.ma,this.J,this.G&255,this.Ba-1);this.A-=this.bi},function(){bb(this.ma,this.J,this.G&255,this.Ba-1);bb(this.ma,this.J+1&65535,this.G>>8,this.Ba- -1);this.A-=this.bi},bh,bh,function(){this.Y|=132;this.A-=this.qb},function(){this.Y|=68;this.A-=this.qb},function(){this.Ta|=4;this.A-=2;this.Fa&512||lb(this)},function(){vc(this)?Bc(this):Fc(this);this.A-=2},function(){this.lb=-1;Cg[this.aa()].call(this,Jd,Ad);0<=this.lb&&(this.G=this.lb)},function(){this.lb=-1;Dg[this.aa()].call(this,Kd,Ad);0<=this.lb&&(this.G=this.lb,this.J=this.wf)},function(){this.W&=~this.$;this.A-=2},function(){this.W|=this.$;this.A-=2},function(){this.Fa&=-513;this.A-=this.Cj}, -function(){this.Fa|=512;this.Y|=4;this.A-=2},function(){this.Fa&=-1025;this.A-=2},function(){this.Fa|=1024;this.A-=2},function(){Cg[this.aa()].call(this,Yb,Ad)},function(){Dg[this.aa()].call(this,$b,Ad)}]; -function P(a){v.call(this,"ChipSet",a,P);this.Ca=a.model;this.Ca=void 0!==this.Ca?parseInt(this.Ca,10):ch;this.Db=0;var b=a.sw1;if(b)this.Db=dh(b,eh|fh.Tk);else if(b=a.fdrives||2,this.Db|=Q.Jg,b--,this.Db|=(b&3)<<Q.Fe,b=a.monitor||(this.Ca<gh?"mono":"ega"),void 0!==hh[b])this.Db|=hh[b]<<fh.Fe;this.Ed=dh(a.sw2||"11110000",0);this.gm=this.Ca==ch?16:64;this.Pe=this.Qe=1;this.Ca>=gh&&(this.Pe=this.Qe=2);this.cg=a.scaleTimers||!1;this.Bn=a.rtcDate;this.kj=!1;a.sound&&window&&"webkitAudioContext"in window&& -(this.Xg=new webkitAudioContext);this.reset();this.Ma()}y(v,P);var ch=5150,gh=5170,hh={none:0,tv:1,color:2,mono:3,ega:0},Q={Jg:1},eh=12,fh={Qn:16,Kn:32,Tk:48,Ee:48,Fe:4};Q.ONE=0;Q.Rn=64;Q.Pn=128;Q.Mn=192;Q.Ee=192;Q.Fe=6;g=P.prototype; -g.sb=function(a,b,c,d){switch(c){case "sw1":return this.oa[c]=d,ih(this,c,d,this.Db,{0:this.Ca==ch?"Bootable Floppy Drive":"Loop on POST",1:this.Ca==ch?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ca==ch)return this.oa[c]=d,ih(this,c,d,this.Ed,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.oa[c]=d,!0}return!1}; -g.dc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ga=d;this.Ea=a;this.Za=D(a,"Keyboard");this.zk=Math.round(c.ad/1193181);Za(b,this,jh);ab(b,this,kh);this.Ca<gh?(Za(b,this,lh),ab(b,this,mh)):(Za(b,this,nh),ab(b,this,oh))};g.Rb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};g.Ib=function(a){return a&&this.save?this.save():!0}; -g.reset=function(){var a;this.Ec=this.Db;this.ee=this.Ed;ph(this);this.va=Array(this.Pe);for(a=0;a<this.Pe;a++)qh(this,a);this.mb=Array(this.Qe);rh(this,0,32);1<this.Qe&&rh(this,1,160);this.Tg=void 0;this.Fb=Array(3);for(a=0;a<this.Fb.length;a++)sh(this,a);this.Oe=this.Rg=this.Lb=this.Rf=void 0;this.Qf=0;if(this.Ca>=gh){this.Xa=16;this.Rc=0;this.jc=16;this.Lf=0;this.Kd=160;512<=th(this)&&(this.Kd|=16);3==uh(this)&&(this.Kd|=64);this.Pg=3;this.Of=0;this.Gb=Array(7);this.le=0;this.ka||(this.ka=Array(64), -vh(this,this.Bn));for(a=14;46>a;a++)void 0===this.ka[a]&&(this.ka[a]=0);this.ka[20]=this.Ec&(fh.Ee|2|Q.Jg|Q.Ee);this.ka[16]=wh(this,0)<<4|wh(this,1);xh(this)}}; -function vh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,Ga(a,"CMOS date invalid ("+b+"), using "+c)):b&&Ga(a,"CMOS date: "+c);a.ka[0]=c.getSeconds();a.ka[1]=0;a.ka[2]=c.getMinutes();a.ka[3]=0;a.ka[4]=c.getHours();a.ka[5]=0;a.ka[6]=c.getDay()+1;a.ka[7]=c.getDate();a.ka[8]=c.getMonth()+1;c=c.getFullYear();a.ka[9]=c%100;c/=100;a.ka[50]=c%10|c/10<<4;a.df=-1;a.ka[10]=38;a.ka[11]=2;a.ka[12]=0;a.ka[13]=128} -function xh(a){for(var b=0,c=16;46>c;c++)b+=a.ka[c];a.ka[47]=b&255;a.ka[46]=b>>8} -g.save=function(){var a=new H(this);a.set(0,[this.Db,this.Ed,this.Ec,this.ee]);for(var b=[],c=0;c<this.va;c++){var d=[],e=this.va[c];d[0]=e.md;d[1]=e.Qg;d[2]=e.Vi;d[3]=e.wb;for(var f=[],l=0;l<e.Ia.length;l++){var k=[],m=e.Ia[l];k[0]=m.Zc;k[1]=m.Pi;k[2]=m.nc;k[3]=m.tb;k[4]=m.Ob;k[5]=m.mode;k[6]=m.xc;k[8]=m.yn;k[9]=m.zn;f[l]=k}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.mb.length;c++)d=[],e=this.mb[c],d[0]=e.lf,d[1]=e.Id,d[2]=e.bd,d[3]=e.kd,d[4]=e.vb,d[5]=e.wc,d[6]=e.Ld,d[7]=e.Ne,b[c]=d;a.set(2, -[b]);b=[];for(c=0;c<this.Fb.length;c++)d=[],e=this.Fb[c],d[0]=e.nc,d[1]=e.Bc,d[2]=e.Ob,d[3]=e.Ue,d[4]=e.Yi,d[5]=e.mode,d[6]=e.xf,d[7]=e.pd,d[8]=e.Td,d[9]=e.Hc,d[10]=e.Ze,d[11]=e.oe,d[12]=e.Ad,b[c]=d;a.set(3,[this.Tg,b]);a.set(4,[this.Rf,this.Lb,this.Rg,this.Oe,this.Qf]);this.Ca>=gh&&(a.set(5,[this.Xa,this.Rc,this.jc,this.Lf,this.Kd,this.Pg]),a.set(6,[this.Of,this.Gb,this.le,this.ka,this.df]));return a.data()}; -g.restore=function(a){var b,c;b=a[0];this.Db=b[0];this.Ed=b[1];this.Ec=b[2];this.ee=b[3];b=a[1];this.va=Array(this.Pe);for(c=0;c<this.Pe;c++)qh(this,c,1==b.length?b[0][c]:b);b=a[2];this.mb=Array(this.Qe);for(c=0;c<this.Qe;c++)rh(this,c,0===c?32:160,b[0][c]);b=a[3];this.Tg=b[0];this.Fb=Array(3);for(c=0;c<this.Fb.length;c++)sh(this,c,b[1][c]);b=a[4];this.Rf=b[0];this.Lb=b[1];this.Rg=b[2];this.Oe=b[3];this.Qf=b[4];if(b=a[5])this.Xa=b[0],this.Rc=b[1],this.jc=b[2],this.Lf=b[3],this.Kd=b[4],this.Pg=b[5]; -if(b=a[6])this.Of=b[0],this.Gb=b[1],this.le=b[2],this.ka=b[3],this.df=b[4],vh(this);return!0};function qh(a,b,c){a=a.va[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.md=c[0];a.Qg=c[1];a.Vi=c[2];a.wb=c[3];a.nm=b<<2;a.Ia=Array(4);for(b=0;b<a.Ia.length;b++)yh(a,b,c[4][b])}function yh(a,b,c){var d=a.Ia[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ea=a;d.pj=b;d.Zc=c[0];d.Pi=c[1];d.nc=c[2];d.tb=c[3];d.Ob=c[4];d.mode=c[5];d.xc=c[6];zh(d,c[8],c[9])} -function zh(a,b,c,d){"string"==typeof b&&(b=Ea(b));b&&(a.Wf=null,a.yn=b.id,a.zn=c,a.Vf=b,a.rh=b[c],a.ug=d)}function rh(a,b,c,d){a=a.mb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.Wn=b<<3;a.lf=d[0];a.Id=d[1];a.bd=d[2];a.kd=d[3];a.vb=d[4];a.wc=d[5];a.Ld=d[6];a.Ne=d[7]} -function sh(a,b,c){a=a.Fb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.nc=c[0];a.Bc=c[1];a.Ob=c[2];a.Ue=c[3];a.Yi=c[4];a.mode=c[5];a.xf=c[6];a.pd=c[7];a.Td=c[8];a.Hc=c[9];a.Ze=c[10];a.oe=c[11];a.Ad=c[12]}function th(a,b){return((((b?a.Db:a.Ec)&12)>>2)+1)*a.gm+32*((b?a.Ed:a.ee)&15)}function Ah(a,b){var c=b?a.Db:a.Ec;return a.Ca!=ch||c&Q.Jg?((c&Q.Ee)>>Q.Fe)+1:0}function wh(a,b){return b<Ah(a)?a.Ca<gh?1:2:0}function uh(a,b){return((b?a.Db:a.Ec)&fh.Ee)>>fh.Fe} -function ih(a,b,c,d,e){for(var f="",l=1;8>=l;l++){var k="pcjs-bitCell";l||(k+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+l)+'" class="'+k+'" data-value="0">'+l+"</div>\n"}c.innerHTML=f;b=B(c,"pcjs-bitCell");c=null;for(l=0;l<b.length;l++)void 0!==e&&void 0!==e[l]&&(c=e[l]),c&&b[l].setAttribute("title",c),Bh(b[l],d&1<<l?!1:!0),b[l].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Bh(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Db= -a.Db&~e|(c?0:e);break;case "sw2":a.Ed=a.Ed&~e|(c?0:e)}ph(a)}}(a,b[l])}function Bh(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function ph(a){var b=a.oa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(th(a,!0)+"Kb");d+=", "+c[uh(a,!0)]+" Monitor";d+=", "+Ah(a,!0)+" Floppy Drives";if(void 0!==a.Ec&&a.Ec!=a.Db||void 0!==a.ee&&a.ee!=a.Ed)d+=" (Reset required)";b.innerHTML=d}} -function Ch(a,b,c){a=a.va[b];c=a.Ia[c].tb[a.wb];a.wb^=1;return c}function Dh(a,b,c,d){a=a.va[b];c=a.Ia[c];c.tb[a.wb]=c.Pi[a.wb]=d;a.wb^=1}function Eh(a,b,c){a=a.va[b];c=a.Ia[c].Ob[a.wb];a.wb^=1;return c}function Fh(a,b,c,d){a=a.va[b];c=a.Ia[c];c.Ob[a.wb]=c.nc[a.wb]=d;a.wb^=1}function Gh(a,b){var c=a.va[b],d=c.md|1;c.md&=-16;return d}function Hh(a,b,c){a=a.va[b];b=c&3;a.md=a.md&~(16<<b)|(c&4)<<b+2;a.Vi=c}function Ih(a,b,c){b=a.va[b];var d=c&3,e=b.Ia[d];e.Zc=c&4?!0:!1;e.Zc||Jh(a,b.nm+d)} -function Kh(a,b,c){return a.va[b].Ia[c].xc}function Lh(a,b,c,d,e){zh(a.va[b>>2].Ia[b&3],c,d,e)}function Jh(a,b,c){b=a.va[b>>2].Ia[b&3];b.Vf&&b.rh&&b.ug?(c&&(b.Wf=c),b.Zc||Pc(a,b,!0)):c&&c(!0)} -function Pc(a,b,c){c&&(b.count=b.Ob[1]<<8|b.Ob[0],b.Qk=b.mode&12,b.lj=b.Vc=!1);for(var d=!1;0<=b.count&&(c=b.xc<<16|b.tb[1]<<8|b.tb[0],4==b.Qk?(d=!0,function(c){b.rh.call(b.Vf,b.ug,-1,function(f,l){0>f&&(b.lj||(b.lj=!0),f=255);b.Zc||Wa(a.ma,c,f);(d=l)&&setTimeout(function(){Mh(b)||Pc(a,b)},0)})}(c)):8==b.Qk?(c=Ua(a.ma,c),0>b.rh.call(b.Vf,b.ug,c)&&(b.Vc=!0)):b.Vc=!0),!d&&!Mh(b););} -function Mh(a){if(!a.Vc&&0<=--a.count&&(a.mode&32?(a.tb[0]--,0>a.tb[0]&&(a.tb[0]=255,a.tb[1]--,0>a.tb[1]&&(a.tb[1]=255))):(a.tb[0]++,255<a.tb[0]&&(a.tb[0]=0,a.tb[1]++,255<a.tb[1]&&(a.tb[1]=0))),!a.Zc))return!1;var b=a.ea;b.md=b.md&~(16<<a.pj)|1<<a.pj;a.mode&16||(a.Zc=!0,a.Vf=a.ug=null);a.Wf&&(a.Wf(!a.Vc),a.Wf=null);return!0}function Nh(a,b){var c=0,d=a.mb[b];if(void 0!==d.Ne)switch(d.Ne&3){case 2:c=d.vb;break;case 3:c=d.wc}return c} -function Oh(a,b,c){var d=a.mb[b];if(c&16)d.bd=0,d.Id[d.bd++]=c,d.kd=0,d.Ld=7,d.vb=d.wc=0,d.Ne=10;else if(c&8)d.Ne=c;else{var e=c&224;if(e&32){var f=0;if(96==(e&96))f=1<<(c&7);else for(c=d.Ld+1;;){c&=7;e=1<<c;if(d.wc&e){f=e;break}if(c++==d.Ld)break}d.wc&f&&(d.wc&=~f,Ph(a,b))}else 192==e&&(d.Ld=c&7)}}function Qh(a,b,c){var d=a.mb[b];d.bd<d.Id.length?(d.Id[d.bd++]=c,2==d.bd&&d.Id[0]&2&&d.bd++,3!=d.bd||d.Id[0]&1||d.bd++):(d.kd=c,d=a.ja,d.Y|=4,Ph(a,b,b||253!=c?0:6))} -function Ph(a,b,c){b=a.mb[b];var d=((b.wc|b.kd)^255)&b.vb;a=a.ja;a.ga&&(a.Ta=d?a.Ta|1:a.Ta&-2);d&&c&&(b.lf=c)}function R(a,b,c){var d=b>>3,e=a.mb[d];e.vb|=1<<(b&7);e.lf=c||0;1==d&&(a.mb[0].vb|=4);Ph(a,d)}function Vh(a,b){var c=b>>3,d=a.mb[c],e=1<<(b&7);d.vb&e&&(d.vb&=~e,1!=c||d.vb||(a.mb[0].vb&=-5),Ph(a,c))} -function Nc(a,b){void 0===b&&(b=0);var c=-1,d=a.mb[b];if(d.lf)c=-2,d.lf--;else for(var e=d.vb&((d.wc|d.kd)^255),f=d.Ld+1;;){var f=f&7,l=1<<f;if(e&l){c=b||2!=f?d.Id[1]+f:Nc(a,1);0<=c&&(d.wc|=l,d.vb&=~l);break}if(f++==d.Ld)break}return c}function Wh(a,b){var c=a.Fb[b];c.pd==c.Td&&Xh(a,b);if(c.Ze)return c.Ue[c.pd++];Yh(a,b);return c.Ob[c.pd++]} -function Zh(a,b,c){var d=a.Fb[b];d.pd==d.Td&&Xh(a,b);d.nc[d.pd++]=c;if(d.pd==d.Td){d.oe&&0!=d.mode&&8!=d.mode||(d.Ze=!1,d.Ob[0]=d.Bc[0]=d.nc[0],d.Ob[1]=d.Bc[1]=d.nc[1],d.Ad=qb(a.ja,a.cg),d.oe=!0,d.Hc=0!=d.mode,0==b&&Vh(a,0));2==b&&sb(a);if(0==b){var e=$h(a,0);2048<=e&&(a.ja.mg=Math.round(65536/e))}0==b&&0==d.mode&&16==d.xf&&(b=a.ja,b.pc&&(a=b.A-c*a.zk,b.A-=a,b.$c-=a))}}g.cm=function(){return null}; -g.mn=function(a,b){this.Tg=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var l=this.Fb[c];l.xf=f;l.mode=e;l.Yi=d;l.nc=[0,0];l.Ob=[0,0];l.Ue=[0,0];l.Hc=!1;l.Ze=!1;l.oe=!1;Xh(this,c);0==c&&Vh(this,0);2==c&&255==this.mb[0].kd&&77==this.Lb&&(c=this.Fb[0],c.Bc[0]=c.nc[0],c.Bc[1]=c.nc[1],c.Ad=qb(this.ja,this.cg))}else Yh(this,c),d=this.Fb[c],d.Ue[0]=d.Ob[0],d.Ue[1]=d.Ob[1],d.Ze=!0,Xh(this,c)}};function $h(a,b){var c=a.Fb[b],d=c.nc[1]<<8|c.nc[0];d||(d=1==c.Td?256:65536);return d} -function Xh(a,b){var c=a.Fb[b];c.pd=32==c.xf?1:0;c.Td=48==c.xf?2:1} -function Yh(a,b,c){var d=a.Fb[b];if(d.oe&&(2!=b||a.Lb&1)){var e=qb(a.ja,a.cg),f=(e-d.Ad)/a.zk|0;0>f&&(d.Ad=e,f=0);var l=$h(a,b),k=a.Fb[b],m=k.Bc[1]<<8|k.Bc[0];m||(m=1==k.Td?256:65536);k=m-f;0==d.mode?(0>=k&&(k=0),k||(d.Hc=!0,d.oe=!1,b||R(a,0))):4==d.mode?(d.Hc=1!=k,0>=k&&(k=l+k,0>=k&&(k=l),d.Bc[0]=k&255,d.Bc[1]=k>>8,d.Ad=e,!b&&d.Hc&&R(a,0))):6==d.mode&&(k-=f,0>=k&&(d.Hc=!d.Hc,k=l+k,0>=k&&(k=l),d.Bc[0]=k&255,d.Bc[1]=k>>8,d.Ad=e,!b&&d.Hc&&R(a,0)));d.Ob[0]=k&255;d.Ob[1]=k>>8;c&&(a.Ad=0)}return d} -function tb(a,b){for(var c=0;c<a.Fb.length;c++)Yh(a,c,b);if(a.Ca>=gh){var c=0,d=a.ja.ad,e=qb(a.ja,a.cg);if(0<=a.df&&(c=e-a.df,Math.floor(c/d)&&60<=++a.ka[0]&&(a.ka[0]=0,60<=++a.ka[2]&&(a.ka[2]=0,24<=++a.ka[4])))){a.ka[4]=0;a.ka[6]=a.ka[6]%7+1;var f=a.ka[9],l=ka[a.ka[8]-1];28==l&&0===f%4&&(f%100||0===f%400)&&l++;++a.ka[7]>l&&(a.ka[7]=1,12<++a.ka[8]&&(a.ka[8]=1,a.ka[9]=(a.ka[9]+1)%100))}a.df=e-c%d}}g.Vl=function(){var a=this.Rf;this.Oe&16&&(this.Lb&128?a=this.Ec:this.Za&&(a=ai(this.Za)));return a}; -g.en=function(a,b){this.Rf=b};g.Wl=function(){return this.Lb};g.fn=function(a,b){bi(this,b);if(this.Za){var c=this.Za,d=b&128?!1:!0,e=b&64?!0:!1;c.hh!==e&&(c.hh=c.ij=e);c.jh!==d&&(c.jh=d)&&(c.ij?(ci(c),c.ij=!1):di(c))}};function bi(a,b){var c=!!(b&2),d=!!(a.Lb&2);a.Lb=b;c!=d&&sb(a,c)}g.Xl=function(){var a=0,a=this.Ca==ch?this.Lb&4?a|this.ee&15:a|this.ee>>4&1:this.Lb&8?a|this.Ec>>4:a|this.Ec&15;this.Lb&1&&Yh(this,2).Hc&&(a=this.Lb&2?a|32:a|16);return a};g.gn=function(a,b){this.Rg=b};g.Yl=function(){return this.Oe}; -g.hn=function(a,b){this.Oe=b};g.ll=function(){var a=this.Lf;this.Xa&=-258;var b=this.Za&&ai(this.Za,!0);b&&ei(this,b);return a};g.zm=function(a,b){if(this.Xa&8)switch(this.Rc){case 96:this.jc=b;this.Xa=this.Xa&-5|b&4;break;case 209:fi(this,b);break;default:if(this.jc&=-17,this.Za){var c=-1;switch(b){case 255:c=250,ci(this.Za)}ei(this,c)}}this.Rc=b;this.Xa&=-9};g.ml=function(){var a=this.Lb&-193;this.Lb^=16;return a};g.Am=function(a,b){bi(this,b)}; -g.nl=function(){var a=this.Xa&255;this.Xa&256&&(this.Xa|=1,this.Xa&=-257);return a};g.ym=function(a,b){this.Rc=b;this.Xa|=8;var c=0;240<=this.Rc&&(c=this.Rc^15,this.Rc=240);switch(this.Rc){case 192:ei(this,this.Kd);break;case 173:this.jc|=16;break;case 174:this.jc&=-17;break;case 170:this.Za&&di(this.Za,!0);this.jc|=16;ei(this,85);fi(this,3);break;case 224:ei(this,this.jc&16?0:1);break;case 240:c&1&&dc(this.ja)}};function ei(a,b){0<=b&&(a.Lf=b,a.Xa&=-2,a.Xa|=256)} -function fi(a,b){a.Pg=b;Pa(a.ma,!!(b&2));b&1||dc(a.ja)}g.Bl=function(){return this.le};g.Nm=function(a,b){this.le=b;this.Qf=b&128?0:128};g.Cl=function(){var a=this.le&63;if(13>=a){var b=this.ka[a];if(10>a){var c=!1;4!=a&&5!=a||this.ka[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.ka[11]&4||(c&&128<b&&(b-=48),b=b%10|b/10<<4)}else 10==a&&(this.ka[a]^=128);a=b}else a=this.ka[a];return a}; -g.Om=function(a,b){var c=this.le&63,d=this.ka,e;if(13>=c){if(e=b,10>c){var f=!1;this.ka[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12<e&&(e+=48),this.ka[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};g.Tl=function(){return this.Of};g.bn=function(a,b){this.Of=b};g.dn=function(a,b){this.Qf=b};function dh(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c} -function sb(a,b){if(a.Xg){void 0!==b?a.kj=b:b=a.kj&&a.ja&&a.ja.pc;var c=Math.round(1193181/$h(a,2));if(20>c||2E4<c)b=!1;b?a.Mc?a.Mc.frequency.value=c:(a.Mc=a.Xg.createOscillator(),a.Mc.type=1,a.Mc.connect(a.Xg.destination),a.Mc.frequency.value=c,a.Mc.noteOn(0)):a.Mc&&(a.Mc.noteOff(0),a.Mc.disconnect(),delete a.Mc)}} -var jh={0:function(){return Ch(this,0,0)},1:function(){return Eh(this,0,0)},2:function(){return Ch(this,0,1)},3:function(){return Eh(this,0,1)},4:function(){return Ch(this,0,2)},5:function(){return Eh(this,0,2)},6:function(){return Ch(this,0,3)},7:function(){return Eh(this,0,3)},8:function(){return Gh(this,0)},32:function(){return Nh(this,0)},33:function(){return this.mb[0].kd},64:function(){return Wh(this,0)},65:function(){return Wh(this,1)},66:function(){return Wh(this,2)},67:P.prototype.cm,129:function(){return Kh(this, -0,2)},130:function(){return Kh(this,0,3)},131:function(){return Kh(this,0,1)},135:function(){return Kh(this,0,0)}},lh={96:P.prototype.Vl,97:P.prototype.Wl,98:P.prototype.Xl,99:P.prototype.Yl},nh={96:P.prototype.ll,97:P.prototype.ml,100:P.prototype.nl,112:P.prototype.Bl,113:P.prototype.Cl,128:P.prototype.Tl,132:function(){return this.Gb[0]},133:function(){return this.Gb[1]},134:function(){return this.Gb[2]},136:function(){return this.Gb[3]},137:function(){return Kh(this,1,2)},138:function(){return Kh(this, -1,3)},139:function(){return Kh(this,1,1)},140:function(){return this.Gb[4]},141:function(){return this.Gb[5]},142:function(){return this.Gb[6]},143:function(){return Kh(this,1,0)},160:function(){return Nh(this,1)},161:function(){return this.mb[1].kd},192:function(){return Ch(this,1,0)},194:function(){return Eh(this,1,0)},196:function(){return Ch(this,1,1)},198:function(){return Eh(this,1,1)},200:function(){return Ch(this,1,2)},202:function(){return Eh(this,1,2)},204:function(){return Ch(this,1,3)}, -206:function(){return Eh(this,1,3)},208:function(){return Gh(this,1)}},kh={0:function(a,b){Dh(this,0,0,b)},1:function(a,b){Fh(this,0,0,b)},2:function(a,b){Dh(this,0,1,b)},3:function(a,b){Fh(this,0,1,b)},4:function(a,b){Dh(this,0,2,b)},5:function(a,b){Fh(this,0,2,b)},6:function(a,b){Dh(this,0,3,b)},7:function(a,b){Fh(this,0,3,b)},8:function(a,b){this.va[0].Qg=b},9:function(a,b){Hh(this,0,b)},10:function(a,b){Ih(this,0,b)},11:function(a,b){this.va[0].Ia[b&3].mode=b},12:function(){this.va[0].wb=0},13:function(){for(var a= -this.va[0],b=0;b<a.Ia.length;b++)yh(a,b)},32:function(a,b){Oh(this,0,b)},33:function(a,b){Qh(this,0,b)},64:function(a,b){Zh(this,0,b)},65:function(a,b){Zh(this,1,b)},66:function(a,b){Zh(this,2,b)},67:P.prototype.mn,129:function(a,b){this.va[0].Ia[2].xc=b},130:function(a,b){this.va[0].Ia[3].xc=b},131:function(a,b){this.va[0].Ia[1].xc=b},135:function(a,b){this.va[0].Ia[0].xc=b}},mh={96:P.prototype.en,97:P.prototype.fn,98:P.prototype.gn,99:P.prototype.hn,160:P.prototype.dn},oh={96:P.prototype.zm,97:P.prototype.Am, -100:P.prototype.ym,112:P.prototype.Nm,113:P.prototype.Om,128:P.prototype.bn,132:function(a,b){this.Gb[0]=b},133:function(a,b){this.Gb[1]=b},134:function(a,b){this.Gb[2]=b},136:function(a,b){this.Gb[3]=b},137:function(a,b){this.va[1].Ia[2].xc=b},138:function(a,b){this.va[1].Ia[3].xc=b},139:function(a,b){this.va[1].Ia[1].xc=b},140:function(a,b){this.Gb[4]=b},141:function(a,b){this.Gb[5]=b},142:function(a,b){this.Gb[6]=b},143:function(a,b){this.va[1].Ia[0].xc=b},160:function(a,b){Oh(this,1,b)},161:function(a, -b){Qh(this,1,b)},192:function(a,b){Dh(this,1,0,b)},194:function(a,b){Fh(this,1,0,b)},196:function(a,b){Dh(this,1,1,b)},198:function(a,b){Fh(this,1,1,b)},200:function(a,b){Dh(this,1,2,b)},202:function(a,b){Fh(this,1,2,b)},204:function(a,b){Dh(this,1,3,b)},206:function(a,b){Fh(this,1,3,b)},208:function(a,b){this.va[1].Qg=b},210:function(a,b){Hh(this,1,b)},212:function(a,b){Ih(this,1,b)},214:function(a,b){this.va[1].Ia[b&3].mode=b},216:function(){this.va[1].wb=0},218:function(){for(var a=this.va[1], -b=0;b<a.Ia.length;b++)yh(a,b)}};u(function(){for(var a=B(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new P(d);A(d,c);ph(d)}});function gi(a){v.call(this,"ROM",a,gi);this.gb=null;this.Qi=a.addr;this.Gg=a.size;this.Vk=a.alias;this.yf=a.file;this.qj=a.notify;if(this.yf){a=this.yf;var b=fa(this.yf);"json"!=b&&"hex"!=b&&(a=la()+"/api/v1/dump?file="+this.yf+"&format=bytes&decimal=true");p(a,!0,null,this,gi.prototype.tm)}}y(v,gi); -gi.prototype.dc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ga=d;hi(this)};gi.prototype.Rb=function(){this.Og&&(this.Ga&&this.Ga.Tn(this.Qi,this.Gg,this.Og),delete this.Og);return!0};gi.prototype.Ib=function(){return!0}; -gi.prototype.tm=function(a,b,c){if(c)C(this,"Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.gb=e;else if(f)for(this.gb=Array(4*f.length),c=b=0;b<f.length;b++)this.gb[c++]=f[b]&255,this.gb[c++]=f[b]>>8&255,this.gb[c++]=f[b]>>16&255,this.gb[c++]=f[b]>>24&255;else this.gb=d;this.Og=d.symbols;if(!this.gb.length){this.error("Empty ROM: "+a);return}if(1==this.gb.length){this.error(this.gb[0]);return}}catch(l){C(this, -"ROM data error: "+l.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.gb=Array(a.length),d=0;d<a.length;d++)this.gb[d]=parseInt(a[d],16);hi(this)}};function hi(a){if(!Ia(a))if(!a.yf)a.Ma();else if(a.gb&&a.ma){if(a.gb.length!=a.Gg)Ja(a,"ROM size (0x"+h(a.gb.length)+") does not match specified size (0x"+h(a.Gg)+")");else if(ii(a,a.Qi)&&ii(a,a.Vk)){if(a.qj){var b=Ea(a.qj,a.id);b&&("ega"==b.Ca&&ji(b,a.gb,[8752,12640],8),b.Ma())}delete a.gb}a.Ma()}} -function ii(a,b){if(null==b)return!0;if(Qa(a.ma,b,a.Gg,!0)){for(var c=0;c<a.gb.length;c++)Wa(a.ma,b+c,a.gb[c]);return!0}return!1}u(function(){for(var a=B(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new gi(d);A(d,c)}});function ki(a){v.call(this,"RAM",a,ki);this.Kf=a.addr;this.ed=a.size;this.dl=a.test;this.al=!!this.ed;this.Yf=!1}y(v,ki);ki.prototype.dc=function(a,b,c){this.ma=b;this.ja=c;this.Ea=a;this.ga=D(a,"ChipSet");this.Ma()}; -ki.prototype.Rb=function(a,b){b||this.reset();return!0};ki.prototype.Ib=function(){return!0}; -ki.prototype.reset=function(){if(!this.Kf&&!this.al&&this.ga){var a=1024*th(this.ga);this.ed&&a!=this.ed&&(Ta(this.ma,this.Kf,this.ed),this.Yf=!1);this.ed=a}!this.Yf&&this.ed&&Qa(this.ma,this.Kf,this.ed)&&(this.Yf=!0,this.status(Math.floor(this.ed/1024)+"Kb"));if(this.Yf){if(this.dl||Xa(this.ma,1138,4660),this.ga&&(a=this.ga,a.ka)){var b=1048576>this.Kf?21:23,c=a.ka[b]|a.ka[b+1]<<8,c=c+(this.ed>>10);a.ka[b]=c&255;a.ka[b+1]=c>>8;xh(a)}}else this.error("No RAM allocated")}; -u(function(){for(var a=B(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new ki(d);A(d,c)}});function li(a){v.call(this,"Keyboard",a,li);this.Ng={};this.lm=250;this.mm=100;this.Ma()}y(v,li); -var mi={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,backspace:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,squote:40,bquote:41,lshift:42,bslash:43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,rshift:54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,home:71,"up-arrow":72,"page-up":73,"num-minus":74, -"left-arrow":75,center:76,"right-arrow":77,"num-plus":78,end:79,"down-arrow":80,"page-down":81,ins:82,del:83},ni={tab:9,esc:27,rshift:224,lshift:240,ctrl:241,alt:242,"caps-lock":244,f1:336,f2:337,f3:338,f4:339,f5:340,f6:341,f7:342,f8:343,f9:344,f10:345,"left-arrow":261,"up-arrow":262,"right-arrow":263,"down-arrow":264,"ctrl-c":3,"ctrl-break":254,"ctrl-alt-del":255},S=[];S[32]=57;S[49]=2;S[33]=61442;S[50]=3;S[64]=61443;S[51]=4;S[35]=61444;S[52]=5;S[36]=61445;S[53]=6;S[37]=61446;S[54]=7;S[94]=61447; +16;this.$=65536;this.A-=2},function(){this.ha=this.D;this.D=(this.fa=this.D-1)&65535;this.W=this.D|(this.W&this.$?1:0)<<16;this.$=65536;this.A-=2},function(){K(this,this.G);this.A-=this.Zb},function(){K(this,this.I);this.A-=this.Zb},function(){K(this,this.J);this.A-=this.Zb},function(){K(this,this.B);this.A-=this.Zb},function(){K(this,this.X-2&65535);this.A-=this.Zb},function(){K(this,this.H);this.A-=this.Zb},function(){K(this,this.F);this.A-=this.Zb},function(){K(this,this.D);this.A-=this.Zb},function(){this.G= +this.Aa();this.A-=this.Rb},function(){this.I=this.Aa();this.A-=this.Rb},function(){this.J=this.Aa();this.A-=this.Rb},function(){this.B=this.Aa();this.A-=this.Rb},function(){this.X=this.Aa();this.A-=this.Rb},function(){this.H=this.Aa();this.A-=this.Rb},function(){this.F=this.Aa();this.A-=this.Rb},function(){this.D=this.Aa();this.A-=this.Rb},Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,function(){yg[this.aa()].call(this,yd,this.K);this.A-=0>this.Ba? +1:this.wg},Rg,function(){yg[this.aa()].call(this,yd,this.L);this.A-=0>this.Ba?1:this.wg},function(){ug[this.aa()].call(this,Kd)},function(){vg[this.aa()].call(this,Ld)},function(){wg[this.Tf=this.aa()].call(this,Wd)},function(){O[this.Tf=this.aa()].call(this,Xd)},function(){this.Y|=1;ug[this.aa()].call(this,Id)},function(){this.Y|=1;vg[this.aa()].call(this,Id)},function(){wg[this.aa()].call(this,Id)},function(){O[this.aa()].call(this,Id)},function(){var a=this.aa();switch((a&56)>>3){case 0:this.nb= +this.gb.ua;break;case 1:this.nb=this.Ea.ua;break;case 2:this.nb=this.Tb.ua;break;case 3:this.nb=this.bc.ua;break;default:N.call(this);return}this.Y|=1;vg[a].call(this,Jd)},function(){this.Y|=1;this.C=this.M=this.Qk;O[this.aa()].call(this,Pd)},function(){var a,b=this.aa(),c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.J;break;case 3:a=this.B;break;default:if(80286<=this.Da){G.call(this);return}switch(c){case 1:a=this.I;break;case 4:a=this.X;break;case 5:a=this.H;break;case 6:a=this.F;break; +case 7:a=this.D}}O[b].call(this,Id);switch(c){case 0:pc(this,this.G);this.G=a;break;case 1:jc(this,this.I);this.I=a;break;case 2:oc(this,this.J);this.J=a;break;case 3:nc(this,this.B);this.B=a;break;case 4:pc(this,this.X);this.X=a;break;case 5:jc(this,this.H);this.H=a;break;case 6:oc(this,this.F);this.F=a;break;case 7:nc(this,this.D),this.D=a}},function(){this.Y|=1;yg[this.aa()].call(this,zd,this.Aa)},function(){this.A-=3},function(){var a=this.G;this.G=this.I;this.I=a;this.A-=3},function(){var a= +this.G;this.G=this.J;this.J=a;this.A-=3},function(){var a=this.G;this.G=this.B;this.B=a;this.A-=3},function(){var a=this.G;this.G=this.X;this.X=a;this.A-=3},function(){var a=this.G;this.G=this.H;this.H=a;this.A-=3},function(){var a=this.G;this.G=this.F;this.F=a;this.A-=3},function(){var a=this.G;this.G=this.D;this.D=a;this.A-=3},function(){this.G=this.G<<24>>24&65535;this.A-=2},function(){this.J=this.G&32768?65535:0;this.A-=this.Hj},function(){var a=this.K(),b=this.K();K(this,this.Ea.ua);K(this,this.qa); +$b(this,a,b);this.A-=this.Kj},function(){N.call(this)},function(){K(this,cc(this));this.A-=this.Zb},function(){ac(this,this.Aa());this.A-=this.Rb},function(){var a=this.G>>8;a&1?Ac(this):wc(this);a&4?rc(this)||(this.fa^=1):rc(this)&&(this.fa^=1);a&16?Bc(this):xc(this);a&64?Cc(this):yc(this);a&128?Dc(this):uc(this)&&(this.fa^=this.$>>1|this.$>>2,this.ha^=32896);this.A-=this.mb},function(){this.G=this.G&255|(cc(this)&213)<<8;this.A-=this.mb},function(){this.G=this.G&-256|this.S(this.C,this.K());this.A-= +this.bi},function(){this.G=this.T(this.C,this.K());this.A-=this.bi},function(){var a=this.K(),b=this.G;Gc(this,this.C.Ob(a,0),b);this.A-=this.ci},function(){var a=this.K(),b=this.G;Hc(this,this.C.Ob(a,1),b);this.A-=this.ci},function(){var a=1,b=0,c=this.di;this.pa&192&&(a=this.I,b=1,c=this.fi,this.pa&256||(this.A-=this.ei));if(a--){var d=this.Ga&1024?-1:1,e=this.S(this.C,this.F);Gc(this,this.gb.Ob(this.D,0),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3: +-2),this.Y|=256)}},function(){var a=1,b=0,c=this.di;this.pa&192&&(a=this.I,b=1,c=this.fi,this.pa&256||(this.A-=this.ei));if(a--){var d=this.Ga&1024?-2:2,e=this.T(this.C,this.F);Hc(this,this.gb.Ob(this.D,1),e);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c;this.I-=b;a&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Oh;this.pa&192&&(a=this.I,b=1,c=this.Qh,this.pa&256||(this.A-=this.Ph));if(a--){var d=this.Ga&1024?-1:1,e=this.S(this.C,this.F),f=this.N(this.gb,this.D);Sc.call(this, +e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.bb;this.I-=b;a&&tc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Oh;this.pa&192&&(a=this.I,b=1,c=this.Qh,this.pa&256||(this.A-=this.Ph));if(a--){var d=this.Ga&1024?-2:2,e=this.T(this.C,this.F),f=this.O(this.gb,this.D);$c.call(this,e,f);this.F=this.F+d&65535;this.D=this.D+d&65535;this.A-=c-this.bb;this.I-=b;a&&tc(this)==(this.pa&64)&&(J(this,this.pa&16?-3:-2),this.Y|=256)}},function(){this.W= +this.fa=this.ha=this.G&255&this.aa();this.$=256;this.A-=this.ae},function(){this.W=this.fa=this.ha=this.G&this.K();this.$=65536;this.A-=this.ae},function(){var a=1,b=0,c=this.oi;this.pa&192&&(a=this.I,b=1,c=this.qi,this.pa&256||(this.A-=this.pi));if(a--){var d=this.G;Gc(this,this.gb.Ob(this.D,0),d);this.D=this.D+(this.Ga&1024?-1:1)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.oi;this.pa&192&&(a=this.I,b=1,c=this.qi,this.pa&256||(this.A-=this.pi));if(a--){var d= +this.G;Hc(this,this.gb.Ob(this.D,1),d);this.D=this.D+(this.Ga&1024?-2:2)&65535;this.A-=c;this.I-=b;a&&(J(this,-2),this.Y|=256)}},function(){var a=1,b=0,c=this.Wh;this.pa&192&&(a=this.I,b=1,c=this.Yh,this.pa&256||(this.A-=this.Xh));a--&&(this.G=this.G&-256|this.S(this.C,this.F),this.F=this.F+(this.Ga&1024?-1:1)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.Wh;this.pa&192&&(a=this.I,b=1,c=this.Yh,this.pa&256||(this.A-=this.Xh));a--&&(this.G=this.T(this.C, +this.F),this.F=this.F+(this.Ga&1024?-2:2)&65535,this.A-=c,this.I-=b,a&&(J(this,this.pa&16?-3:-2),this.Y|=256))},function(){var a=1,b=0,c=this.ii;this.pa&192&&(a=this.I,b=1,c=this.ki,this.pa&256||(this.A-=this.ji));a--&&(Sc.call(this,this.G&255,this.N(this.gb,this.D)),this.D=this.D+(this.Ga&1024?-1:1)&65535,this.A-=c-this.bb,this.I-=b,a&&tc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){var a=1,b=0,c=this.ii;this.pa&192&&(a=this.I,b=1,c=this.ki,this.pa&256||(this.A-=this.ji));a--&&($c.call(this, +this.G,this.O(this.gb,this.D)),this.D=this.D+(this.Ga&1024?-2:2)&65535,this.A-=c-this.bb,this.I-=b,a&&tc(this)==(this.pa&64)&&(J(this,-2),this.Y|=256))},function(){this.G=this.G&-256|this.aa();this.A-=this.mb},function(){this.I=this.I&-256|this.aa();this.A-=this.mb},function(){this.J=this.J&-256|this.aa();this.A-=this.mb},function(){this.B=this.B&-256|this.aa();this.A-=this.mb},function(){this.G=this.G&255|this.aa()<<8;this.A-=this.mb},function(){this.I=this.I&255|this.aa()<<8;this.A-=this.mb},function(){this.J= +this.J&255|this.aa()<<8;this.A-=this.mb},function(){this.B=this.B&255|this.aa()<<8;this.A-=this.mb},function(){this.G=this.K();this.A-=this.mb},function(){this.I=this.K();this.A-=this.mb},function(){this.J=this.K();this.A-=this.mb},function(){this.B=this.K();this.A-=this.mb},function(){this.X=this.K();this.A-=this.mb},function(){this.H=this.K();this.A-=this.mb},function(){this.F=this.K();this.A-=this.mb},function(){this.D=this.K();this.A-=this.mb},Sg,Tg,Sg,Tg,function(){O[this.aa()].call(this,Rd)}, +function(){O[this.aa()].call(this,Qd)},function(){this.Y|=1;xg[this.aa()].call(this,Ad,this.aa)},function(){this.Y|=1;yg[this.aa()].call(this,Ad,this.K)},Ug,Vg,Ug,Vg,function(){Jc.call(this,3,null,this.ak)},function(){var a=this.aa(),b;a:{b=this.Yk[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c][1].call(b[c][0],this.Ca)){b=!1;break a}b=!0}b?Jc.call(this,a,null,0):this.A--},function(){vc(this)?Jc.call(this,4,null,this.bk):this.A-=this.ck},function(){$b(this,this.Aa(),this.Aa());ac(this,this.Aa()); +this.Yg&&dc(this,this.Ca);this.A-=this.Zj},function(){xg[this.aa()].call(this,Bd,sd)},function(){yg[this.aa()].call(this,Cd,sd)},function(){xg[this.aa()].call(this,Bd,td)},function(){yg[this.aa()].call(this,Cd,td)},function(){var a=this.aa(),b=this.G&255;this.G=(b/a&255)<<8|b%a;this.$=256;this.W=this.fa=b;this.A-=this.Ej},function(){var a=this.aa();this.W=this.fa=this.G=(this.G>>8)*a+this.G&255;this.$=256;this.A-=this.Dj},function(){this.G=this.G&-256|(qc(this)?255:0);this.A-=2},function(){this.G= +this.G&-256|this.S(this.C,this.B+(this.G&255)&65535);this.A-=this.Ck},Wg,Wg,Wg,Wg,Wg,Wg,Wg,Wg,function(){var a=this.L();(this.I=this.I-1&65535)&&this.W&this.$-1?(I(this,this.qa+a),this.A-=this.jk):this.A-=this.Zh},function(){var a=this.L();!(this.I=this.I-1&65535)||this.W&this.$-1?this.A-=this.ai:(I(this,this.qa+a),this.A-=this.$h)},function(){var a=this.L();(this.I=this.I-1&65535)?(I(this,this.qa+a),this.A-=this.ik):this.A-=this.Zh},function(){var a=this.L();this.I?this.A-=this.ai:(I(this,this.qa+ +a),this.A-=this.$h)},function(){var a=this.aa();this.G=this.G&-256|Va(this.ma,a,this.Ca-2);this.A-=this.Th},function(){var a=this.aa();this.G=Va(this.ma,a,this.Ca-1)|Va(this.ma,a+1&65535,this.Ca-2)<<8;this.A-=this.Th},function(){var a=this.aa();Xa(this.ma,a,this.G&255,this.Ca-2);this.A-=this.hi},function(){var a=this.aa();Xa(this.ma,a,this.G&255,this.Ca-2);Xa(this.ma,a+1&65535,this.G>>8,this.Ca-2);this.A-=this.hi},function(){var a=this.K();K(this,this.qa);I(this,this.qa+a);this.A-=this.Ij},function(){var a= +this.K();I(this,this.qa+a);this.A-=this.Uh},function(){$b(this,this.K(),this.K());this.A-=this.ek},function(){var a=this.L();I(this,this.qa+a);this.A-=this.Uh},function(){this.G=this.G&-256|Va(this.ma,this.J,this.Ca-1);this.A-=this.Sh},function(){this.G=Va(this.ma,this.J,this.Ca-1)|Va(this.ma,this.J+1&65535,this.Ca-1)<<8;this.A-=this.Sh},function(){Xa(this.ma,this.J,this.G&255,this.Ca-1);this.A-=this.gi},function(){Xa(this.ma,this.J,this.G&255,this.Ca-1);Xa(this.ma,this.J+1&65535,this.G>>8,this.Ca- +1);this.A-=this.gi},Xg,Xg,function(){this.Y|=132;this.A-=this.rb},function(){this.Y|=68;this.A-=this.rb},function(){this.Va|=4;this.A-=2;this.Ga&512||gb(this)},function(){qc(this)?wc(this):Ac(this);this.A-=2},function(){this.nb=-1;xg[this.aa()].call(this,Ed,vd);0<=this.nb&&(this.G=this.nb)},function(){this.nb=-1;yg[this.aa()].call(this,Fd,vd);0<=this.nb&&(this.G=this.nb,this.J=this.Af)},function(){this.W&=~this.$;this.A-=2},function(){this.W|=this.$;this.A-=2},function(){this.Ga&=-513;this.A-=this.Gj}, +function(){this.Ga|=512;this.Y|=4;this.A-=2},function(){this.Ga&=-1025;this.A-=2},function(){this.Ga|=1024;this.A-=2},function(){xg[this.aa()].call(this,Tb,vd)},function(){yg[this.aa()].call(this,Vb,vd)}]; +function P(a){v.call(this,"ChipSet",a,P);this.Da=a.model;this.Da=void 0!==this.Da?parseInt(this.Da,10):Yg;this.Eb=0;var b=a.sw1;if(b)this.Eb=Zg(b,$g|ah.Xk);else if(b=a.fdrives||2,this.Eb|=Q.Ng,b--,this.Eb|=(b&3)<<Q.He,b=a.monitor||(this.Da<bh?"mono":"ega"),void 0!==ch[b])this.Eb|=ch[b]<<ah.He;this.Gd=Zg(a.sw2||"11110000",0);this.km=this.Da==Yg?16:64;this.Se=this.Te=1;this.Da>=bh&&(this.Se=this.Te=2);this.gg=a.scaleTimers||!1;this.Fn=a.rtcDate;this.oj=!1;a.sound&&window&&"webkitAudioContext"in window&& +(this.ah=new webkitAudioContext);this.reset();this.Oa()}y(v,P);var Yg=5150,bh=5170,ch={none:0,tv:1,color:2,mono:3,ega:0},Q={Ng:1},$g=12,ah={Un:16,On:32,Xk:48,Ge:48,He:4};Q.ONE=0;Q.Vn=64;Q.Tn=128;Q.Qn=192;Q.Ge=192;Q.He=6;g=P.prototype; +g.tb=function(a,b,c,d){switch(c){case "sw1":return this.oa[c]=d,dh(this,c,d,this.Eb,{0:this.Da==Yg?"Bootable Floppy Drive":"Loop on POST",1:this.Da==Yg?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Da==Yg)return this.oa[c]=d,dh(this,c,d,this.Gd,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.oa[c]=d,!0}return!1}; +g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.Fa=a;this.ab=C(a,"Keyboard");this.Dk=Math.round(c.cd/1193181);Ua(b,this,eh);Wa(b,this,fh);this.Da<bh?(Ua(b,this,gh),Wa(b,this,hh)):(Ua(b,this,ih),Wa(b,this,jh))};g.Sb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};g.Jb=function(a){return a&&this.save?this.save():!0}; +g.reset=function(){var a;this.Hc=this.Eb;this.ge=this.Gd;kh(this);this.va=Array(this.Se);for(a=0;a<this.Se;a++)lh(this,a);this.ob=Array(this.Te);mh(this,0,32);1<this.Te&&mh(this,1,160);this.Xg=void 0;this.Gb=Array(3);for(a=0;a<this.Gb.length;a++)nh(this,a);this.Re=this.Vg=this.Mb=this.Vf=void 0;this.Uf=0;if(this.Da>=bh){this.Za=16;this.Tc=0;this.lc=16;this.Pf=0;this.Md=160;512<=oh(this)&&(this.Md|=16);3==ph(this)&&(this.Md|=64);this.Tg=3;this.Sf=0;this.Hb=Array(7);this.ne=0;this.ka||(this.ka=Array(64), +qh(this,this.Fn));for(a=14;46>a;a++)void 0===this.ka[a]&&(this.ka[a]=0);this.ka[20]=this.Hc&(ah.Ge|2|Q.Ng|Q.Ge);this.ka[16]=rh(this,0)<<4|rh(this,1);sh(this)}}; +function qh(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ac("CMOS date invalid ("+b+"), using "+c)):b&&a.ac("CMOS date: "+c);a.ka[0]=c.getSeconds();a.ka[1]=0;a.ka[2]=c.getMinutes();a.ka[3]=0;a.ka[4]=c.getHours();a.ka[5]=0;a.ka[6]=c.getDay()+1;a.ka[7]=c.getDate();a.ka[8]=c.getMonth()+1;c=c.getFullYear();a.ka[9]=c%100;c/=100;a.ka[50]=c%10|c/10<<4;a.gf=-1;a.ka[10]=38;a.ka[11]=2;a.ka[12]=0;a.ka[13]=128} +function sh(a){for(var b=0,c=16;46>c;c++)b+=a.ka[c];a.ka[47]=b&255;a.ka[46]=b>>8} +g.save=function(){var a=new H(this);a.set(0,[this.Eb,this.Gd,this.Hc,this.ge]);for(var b=[],c=0;c<this.va;c++){var d=[],e=this.va[c];d[0]=e.od;d[1]=e.Ug;d[2]=e.Zi;d[3]=e.xb;for(var f=[],l=0;l<e.Ja.length;l++){var k=[],m=e.Ja[l];k[0]=m.ad;k[1]=m.Ui;k[2]=m.pc;k[3]=m.ub;k[4]=m.Pb;k[5]=m.mode;k[6]=m.zc;k[8]=m.Cn;k[9]=m.Dn;f[l]=k}d[4]=f;b[c]=d}a.set(1,[b]);b=[];for(c=0;c<this.ob.length;c++)d=[],e=this.ob[c],d[0]=e.of,d[1]=e.Kd,d[2]=e.dd,d[3]=e.md,d[4]=e.wb,d[5]=e.yc,d[6]=e.Nd,d[7]=e.Qe,b[c]=d;a.set(2, +[b]);b=[];for(c=0;c<this.Gb.length;c++)d=[],e=this.Gb[c],d[0]=e.pc,d[1]=e.Dc,d[2]=e.Pb,d[3]=e.Xe,d[4]=e.bj,d[5]=e.mode,d[6]=e.Bf,d[7]=e.rd,d[8]=e.Vd,d[9]=e.Kc,d[10]=e.bf,d[11]=e.qe,d[12]=e.Cd,b[c]=d;a.set(3,[this.Xg,b]);a.set(4,[this.Vf,this.Mb,this.Vg,this.Re,this.Uf]);this.Da>=bh&&(a.set(5,[this.Za,this.Tc,this.lc,this.Pf,this.Md,this.Tg]),a.set(6,[this.Sf,this.Hb,this.ne,this.ka,this.gf]));return a.data()}; +g.restore=function(a){var b,c;b=a[0];this.Eb=b[0];this.Gd=b[1];this.Hc=b[2];this.ge=b[3];b=a[1];this.va=Array(this.Se);for(c=0;c<this.Se;c++)lh(this,c,1==b.length?b[0][c]:b);b=a[2];this.ob=Array(this.Te);for(c=0;c<this.Te;c++)mh(this,c,0===c?32:160,b[0][c]);b=a[3];this.Xg=b[0];this.Gb=Array(3);for(c=0;c<this.Gb.length;c++)nh(this,c,b[1][c]);b=a[4];this.Vf=b[0];this.Mb=b[1];this.Vg=b[2];this.Re=b[3];this.Uf=b[4];if(b=a[5])this.Za=b[0],this.Tc=b[1],this.lc=b[2],this.Pf=b[3],this.Md=b[4],this.Tg=b[5]; +if(b=a[6])this.Sf=b[0],this.Hb=b[1],this.ne=b[2],this.ka=b[3],this.gf=b[4],qh(this);return!0};function lh(a,b,c){a=a.va[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.od=c[0];a.Ug=c[1];a.Zi=c[2];a.xb=c[3];a.rm=b<<2;a.Ja=Array(4);for(b=0;b<a.Ja.length;b++)th(a,b,c[4][b])}function th(a,b,c){var d=a.Ja[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ea=a;d.tj=b;d.ad=c[0];d.Ui=c[1];d.pc=c[2];d.ub=c[3];d.Pb=c[4];d.mode=c[5];d.zc=c[6];uh(d,c[8],c[9])} +function uh(a,b,c,d){"string"==typeof b&&(b=Ba(b));b&&(a.$f=null,a.Cn=b.id,a.Dn=c,a.Zf=b,a.wh=b[c],a.yg=d)}function mh(a,b,c,d){a=a.ob[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.$n=b<<3;a.of=d[0];a.Kd=d[1];a.dd=d[2];a.md=d[3];a.wb=d[4];a.yc=d[5];a.Nd=d[6];a.Qe=d[7]} +function nh(a,b,c){a=a.Gb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.pc=c[0];a.Dc=c[1];a.Pb=c[2];a.Xe=c[3];a.bj=c[4];a.mode=c[5];a.Bf=c[6];a.rd=c[7];a.Vd=c[8];a.Kc=c[9];a.bf=c[10];a.qe=c[11];a.Cd=c[12]}function oh(a,b){return((((b?a.Eb:a.Hc)&12)>>2)+1)*a.km+32*((b?a.Gd:a.ge)&15)}function vh(a,b){var c=b?a.Eb:a.Hc;return a.Da!=Yg||c&Q.Ng?((c&Q.Ge)>>Q.He)+1:0}function rh(a,b){return b<vh(a)?a.Da<bh?1:2:0}function ph(a,b){return((b?a.Eb:a.Hc)&ah.Ge)>>ah.He} +function dh(a,b,c,d,e){for(var f="",l=1;8>=l;l++){var k="pcjs-bitCell";l||(k+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+l)+'" class="'+k+'" data-value="0">'+l+"</div>\n"}c.innerHTML=f;b=B(c,"pcjs-bitCell");c=null;for(l=0;l<b.length;l++)void 0!==e&&void 0!==e[l]&&(c=e[l]),c&&b[l].setAttribute("title",c),wh(b[l],d&1<<l?!1:!0),b[l].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");wh(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Eb= +a.Eb&~e|(c?0:e);break;case "sw2":a.Gd=a.Gd&~e|(c?0:e)}kh(a)}}(a,b[l])}function wh(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function kh(a){var b=a.oa.swdesc,c={0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"};if(void 0!==b){var d;d=""+(oh(a,!0)+"Kb");d+=", "+c[ph(a,!0)]+" Monitor";d+=", "+vh(a,!0)+" Floppy Drives";if(void 0!==a.Hc&&a.Hc!=a.Eb||void 0!==a.ge&&a.ge!=a.Gd)d+=" (Reset required)";b.innerHTML=d}} +function xh(a,b,c){a=a.va[b];c=a.Ja[c].ub[a.xb];a.xb^=1;return c}function yh(a,b,c,d){a=a.va[b];c=a.Ja[c];c.ub[a.xb]=c.Ui[a.xb]=d;a.xb^=1}function zh(a,b,c){a=a.va[b];c=a.Ja[c].Pb[a.xb];a.xb^=1;return c}function Ah(a,b,c,d){a=a.va[b];c=a.Ja[c];c.Pb[a.xb]=c.pc[a.xb]=d;a.xb^=1}function Bh(a,b){var c=a.va[b],d=c.od|1;c.od&=-16;return d}function Ch(a,b,c){a=a.va[b];b=c&3;a.od=a.od&~(16<<b)|(c&4)<<b+2;a.Zi=c}function Dh(a,b,c){b=a.va[b];var d=c&3,e=b.Ja[d];e.ad=c&4?!0:!1;e.ad||Eh(a,b.rm+d)} +function Fh(a,b,c){return a.va[b].Ja[c].zc}function Gh(a,b,c,d,e){uh(a.va[b>>2].Ja[b&3],c,d,e)}function Eh(a,b,c){b=a.va[b>>2].Ja[b&3];b.Zf&&b.wh&&b.yg?(c&&(b.$f=c),b.ad||Kc(a,b,!0)):c&&c(!0)} +function Kc(a,b,c){c&&(b.count=b.Pb[1]<<8|b.Pb[0],b.Uk=b.mode&12,b.pj=b.Xc=!1);for(var d=!1;0<=b.count&&(c=b.zc<<16|b.ub[1]<<8|b.ub[0],4==b.Uk?(d=!0,function(c){b.wh.call(b.Zf,b.yg,-1,function(f,l){0>f&&(b.pj||(b.pj=!0),f=255);b.ad||Ra(a.ma,c,f);(d=l)&&setTimeout(function(){Hh(b)||Kc(a,b)},0)})}(c)):8==b.Uk?(c=Oa(a.ma,c),0>b.wh.call(b.Zf,b.yg,c)&&(b.Xc=!0)):b.Xc=!0),!d&&!Hh(b););} +function Hh(a){if(!a.Xc&&0<=--a.count&&(a.mode&32?(a.ub[0]--,0>a.ub[0]&&(a.ub[0]=255,a.ub[1]--,0>a.ub[1]&&(a.ub[1]=255))):(a.ub[0]++,255<a.ub[0]&&(a.ub[0]=0,a.ub[1]++,255<a.ub[1]&&(a.ub[1]=0))),!a.ad))return!1;var b=a.ea;b.od=b.od&~(16<<a.tj)|1<<a.tj;a.mode&16||(a.ad=!0,a.Zf=a.yg=null);a.$f&&(a.$f(!a.Xc),a.$f=null);return!0}function Ih(a,b){var c=0,d=a.ob[b];if(void 0!==d.Qe)switch(d.Qe&3){case 2:c=d.wb;break;case 3:c=d.yc}return c} +function Jh(a,b,c){var d=a.ob[b];if(c&16)d.dd=0,d.Kd[d.dd++]=c,d.md=0,d.Nd=7,d.wb=d.yc=0,d.Qe=10;else if(c&8)d.Qe=c;else{var e=c&224;if(e&32){var f=0;if(96==(e&96))f=1<<(c&7);else for(c=d.Nd+1;;){c&=7;e=1<<c;if(d.yc&e){f=e;break}if(c++==d.Nd)break}d.yc&f&&(d.yc&=~f,Kh(a,b))}else 192==e&&(d.Nd=c&7)}}function Lh(a,b,c){var d=a.ob[b];d.dd<d.Kd.length?(d.Kd[d.dd++]=c,2==d.dd&&d.Kd[0]&2&&d.dd++,3!=d.dd||d.Kd[0]&1||d.dd++):(d.md=c,d=a.ja,d.Y|=4,Kh(a,b,b||253!=c?0:6))} +function Kh(a,b,c){b=a.ob[b];var d=((b.yc|b.md)^255)&b.wb;a=a.ja;a.ga&&(a.Va=d?a.Va|1:a.Va&-2);d&&c&&(b.of=c)}function R(a,b,c){var d=b>>3,e=a.ob[d];e.wb|=1<<(b&7);e.of=c||0;1==d&&(a.ob[0].wb|=4);Kh(a,d)}function Qh(a,b){var c=b>>3,d=a.ob[c],e=1<<(b&7);d.wb&e&&(d.wb&=~e,1!=c||d.wb||(a.ob[0].wb&=-5),Kh(a,c))} +function Ic(a,b){void 0===b&&(b=0);var c=-1,d=a.ob[b];if(d.of)c=-2,d.of--;else for(var e=d.wb&((d.yc|d.md)^255),f=d.Nd+1;;){var f=f&7,l=1<<f;if(e&l){c=b||2!=f?d.Kd[1]+f:Ic(a,1);0<=c&&(d.yc|=l,d.wb&=~l);break}if(f++==d.Nd)break}return c}function Rh(a,b){var c=a.Gb[b];c.rd==c.Vd&&Sh(a,b);if(c.bf)return c.Xe[c.rd++];Th(a,b);return c.Pb[c.rd++]} +function Uh(a,b,c){var d=a.Gb[b];d.rd==d.Vd&&Sh(a,b);d.pc[d.rd++]=c;if(d.rd==d.Vd){d.qe&&0!=d.mode&&8!=d.mode||(d.bf=!1,d.Pb[0]=d.Dc[0]=d.pc[0],d.Pb[1]=d.Dc[1]=d.pc[1],d.Cd=lb(a.ja,a.gg),d.qe=!0,d.Kc=0!=d.mode,0==b&&Qh(a,0));2==b&&mb(a);if(0==b){var e=Vh(a,0);2048<=e&&(a.ja.qg=Math.round(65536/e))}0==b&&0==d.mode&&16==d.Bf&&(b=a.ja,b.rc&&(a=b.A-c*a.Dk,b.A-=a,b.bd-=a))}}g.gm=function(){return null}; +g.qn=function(a,b){this.Xg=b;var c=(b&192)>>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var l=this.Gb[c];l.Bf=f;l.mode=e;l.bj=d;l.pc=[0,0];l.Pb=[0,0];l.Xe=[0,0];l.Kc=!1;l.bf=!1;l.qe=!1;Sh(this,c);0==c&&Qh(this,0);2==c&&255==this.ob[0].md&&77==this.Mb&&(c=this.Gb[0],c.Dc[0]=c.pc[0],c.Dc[1]=c.pc[1],c.Cd=lb(this.ja,this.gg))}else Th(this,c),d=this.Gb[c],d.Xe[0]=d.Pb[0],d.Xe[1]=d.Pb[1],d.bf=!0,Sh(this,c)}};function Vh(a,b){var c=a.Gb[b],d=c.pc[1]<<8|c.pc[0];d||(d=1==c.Vd?256:65536);return d} +function Sh(a,b){var c=a.Gb[b];c.rd=32==c.Bf?1:0;c.Vd=48==c.Bf?2:1} +function Th(a,b,c){var d=a.Gb[b];if(d.qe&&(2!=b||a.Mb&1)){var e=lb(a.ja,a.gg),f=(e-d.Cd)/a.Dk|0;0>f&&(d.Cd=e,f=0);var l=Vh(a,b),k=a.Gb[b],m=k.Dc[1]<<8|k.Dc[0];m||(m=1==k.Vd?256:65536);k=m-f;0==d.mode?(0>=k&&(k=0),k||(d.Kc=!0,d.qe=!1,b||R(a,0))):4==d.mode?(d.Kc=1!=k,0>=k&&(k=l+k,0>=k&&(k=l),d.Dc[0]=k&255,d.Dc[1]=k>>8,d.Cd=e,!b&&d.Kc&&R(a,0))):6==d.mode&&(k-=f,0>=k&&(d.Kc=!d.Kc,k=l+k,0>=k&&(k=l),d.Dc[0]=k&255,d.Dc[1]=k>>8,d.Cd=e,!b&&d.Kc&&R(a,0)));d.Pb[0]=k&255;d.Pb[1]=k>>8;c&&(a.Cd=0)}return d} +function nb(a,b){for(var c=0;c<a.Gb.length;c++)Th(a,c,b);if(a.Da>=bh){var c=0,d=a.ja.cd,e=lb(a.ja,a.gg);if(0<=a.gf&&(c=e-a.gf,Math.floor(c/d)&&60<=++a.ka[0]&&(a.ka[0]=0,60<=++a.ka[2]&&(a.ka[2]=0,24<=++a.ka[4])))){a.ka[4]=0;a.ka[6]=a.ka[6]%7+1;var f=a.ka[9],l=ka[a.ka[8]-1];28==l&&0===f%4&&(f%100||0===f%400)&&l++;++a.ka[7]>l&&(a.ka[7]=1,12<++a.ka[8]&&(a.ka[8]=1,a.ka[9]=(a.ka[9]+1)%100))}a.gf=e-c%d}}g.Zl=function(){var a=this.Vf;this.Re&16&&(this.Mb&128?a=this.Hc:this.ab&&(a=Wh(this.ab)));return a}; +g.jn=function(a,b){this.Vf=b};g.$l=function(){return this.Mb};g.kn=function(a,b){Xh(this,b);if(this.ab){var c=this.ab,d=b&128?!1:!0,e=b&64?!0:!1;c.mh!==e&&(c.mh=c.mj=e);c.oh!==d&&(c.oh=d)&&(c.mj?(Yh(c),c.mj=!1):Zh(c))}};function Xh(a,b){var c=!!(b&2),d=!!(a.Mb&2);a.Mb=b;c!=d&&mb(a,c)}g.am=function(){var a=0,a=this.Da==Yg?this.Mb&4?a|this.ge&15:a|this.ge>>4&1:this.Mb&8?a|this.Hc>>4:a|this.Hc&15;this.Mb&1&&Th(this,2).Kc&&(a=this.Mb&2?a|32:a|16);return a};g.ln=function(a,b){this.Vg=b};g.bm=function(){return this.Re}; +g.mn=function(a,b){this.Re=b};g.pl=function(){var a=this.Pf;this.Za&=-258;var b=this.ab&&Wh(this.ab,!0);b&&$h(this,b);return a};g.Dm=function(a,b){if(this.Za&8)switch(this.Tc){case 96:this.lc=b;this.Za=this.Za&-5|b&4;break;case 209:ai(this,b);break;default:if(this.lc&=-17,this.ab){var c=-1;switch(b){case 255:c=250,Yh(this.ab)}$h(this,c)}}this.Tc=b;this.Za&=-9};g.ql=function(){var a=this.Mb&-193;this.Mb^=16;return a};g.Em=function(a,b){Xh(this,b)}; +g.rl=function(){var a=this.Za&255;this.Za&256&&(this.Za|=1,this.Za&=-257);return a};g.Cm=function(a,b){this.Tc=b;this.Za|=8;var c=0;240<=this.Tc&&(c=this.Tc^15,this.Tc=240);switch(this.Tc){case 192:$h(this,this.Md);break;case 173:this.lc|=16;break;case 174:this.lc&=-17;break;case 170:this.ab&&Zh(this.ab,!0);this.lc|=16;$h(this,85);ai(this,3);break;case 224:$h(this,this.lc&16?0:1);break;case 240:c&1&&Zb(this.ja)}};function $h(a,b){0<=b&&(a.Pf=b,a.Za&=-2,a.Za|=256)} +function ai(a,b){a.Tg=b;Ka(a.ma,!!(b&2));b&1||Zb(a.ja)}g.Fl=function(){return this.ne};g.Rm=function(a,b){this.ne=b;this.Uf=b&128?0:128};g.Gl=function(){var a=this.ne&63;if(13>=a){var b=this.ka[a];if(10>a){var c=!1;4!=a&&5!=a||this.ka[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.ka[11]&4||(c&&128<b&&(b-=48),b=b%10|b/10<<4)}else 10==a&&(this.ka[a]^=128);a=b}else a=this.ka[a];return a}; +g.Sm=function(a,b){var c=this.ne&63,d=this.ka,e;if(13>=c){if(e=b,10>c){var f=!1;this.ka[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12<e&&(e+=48),this.ka[11]&2||(12>=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};g.Xl=function(){return this.Sf};g.fn=function(a,b){this.Sf=b};g.hn=function(a,b){this.Uf=b};function Zg(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;e<a.length;e++)"0"==a.charAt(e)&&(c|=d),d<<=1;return c} +function mb(a,b){if(a.ah){void 0!==b?a.oj=b:b=a.oj&&a.ja&&a.ja.rc;var c=Math.round(1193181/Vh(a,2));if(20>c||2E4<c)b=!1;b?a.Oc?a.Oc.frequency.value=c:(a.Oc=a.ah.createOscillator(),a.Oc.type=1,a.Oc.connect(a.ah.destination),a.Oc.frequency.value=c,a.Oc.noteOn(0)):a.Oc&&(a.Oc.noteOff(0),a.Oc.disconnect(),delete a.Oc)}} +var eh={0:function(){return xh(this,0,0)},1:function(){return zh(this,0,0)},2:function(){return xh(this,0,1)},3:function(){return zh(this,0,1)},4:function(){return xh(this,0,2)},5:function(){return zh(this,0,2)},6:function(){return xh(this,0,3)},7:function(){return zh(this,0,3)},8:function(){return Bh(this,0)},32:function(){return Ih(this,0)},33:function(){return this.ob[0].md},64:function(){return Rh(this,0)},65:function(){return Rh(this,1)},66:function(){return Rh(this,2)},67:P.prototype.gm,129:function(){return Fh(this, +0,2)},130:function(){return Fh(this,0,3)},131:function(){return Fh(this,0,1)},135:function(){return Fh(this,0,0)}},gh={96:P.prototype.Zl,97:P.prototype.$l,98:P.prototype.am,99:P.prototype.bm},ih={96:P.prototype.pl,97:P.prototype.ql,100:P.prototype.rl,112:P.prototype.Fl,113:P.prototype.Gl,128:P.prototype.Xl,132:function(){return this.Hb[0]},133:function(){return this.Hb[1]},134:function(){return this.Hb[2]},136:function(){return this.Hb[3]},137:function(){return Fh(this,1,2)},138:function(){return Fh(this, +1,3)},139:function(){return Fh(this,1,1)},140:function(){return this.Hb[4]},141:function(){return this.Hb[5]},142:function(){return this.Hb[6]},143:function(){return Fh(this,1,0)},160:function(){return Ih(this,1)},161:function(){return this.ob[1].md},192:function(){return xh(this,1,0)},194:function(){return zh(this,1,0)},196:function(){return xh(this,1,1)},198:function(){return zh(this,1,1)},200:function(){return xh(this,1,2)},202:function(){return zh(this,1,2)},204:function(){return xh(this,1,3)}, +206:function(){return zh(this,1,3)},208:function(){return Bh(this,1)}},fh={0:function(a,b){yh(this,0,0,b)},1:function(a,b){Ah(this,0,0,b)},2:function(a,b){yh(this,0,1,b)},3:function(a,b){Ah(this,0,1,b)},4:function(a,b){yh(this,0,2,b)},5:function(a,b){Ah(this,0,2,b)},6:function(a,b){yh(this,0,3,b)},7:function(a,b){Ah(this,0,3,b)},8:function(a,b){this.va[0].Ug=b},9:function(a,b){Ch(this,0,b)},10:function(a,b){Dh(this,0,b)},11:function(a,b){this.va[0].Ja[b&3].mode=b},12:function(){this.va[0].xb=0},13:function(){for(var a= +this.va[0],b=0;b<a.Ja.length;b++)th(a,b)},32:function(a,b){Jh(this,0,b)},33:function(a,b){Lh(this,0,b)},64:function(a,b){Uh(this,0,b)},65:function(a,b){Uh(this,1,b)},66:function(a,b){Uh(this,2,b)},67:P.prototype.qn,129:function(a,b){this.va[0].Ja[2].zc=b},130:function(a,b){this.va[0].Ja[3].zc=b},131:function(a,b){this.va[0].Ja[1].zc=b},135:function(a,b){this.va[0].Ja[0].zc=b}},hh={96:P.prototype.jn,97:P.prototype.kn,98:P.prototype.ln,99:P.prototype.mn,160:P.prototype.hn},jh={96:P.prototype.Dm,97:P.prototype.Em, +100:P.prototype.Cm,112:P.prototype.Rm,113:P.prototype.Sm,128:P.prototype.fn,132:function(a,b){this.Hb[0]=b},133:function(a,b){this.Hb[1]=b},134:function(a,b){this.Hb[2]=b},136:function(a,b){this.Hb[3]=b},137:function(a,b){this.va[1].Ja[2].zc=b},138:function(a,b){this.va[1].Ja[3].zc=b},139:function(a,b){this.va[1].Ja[1].zc=b},140:function(a,b){this.Hb[4]=b},141:function(a,b){this.Hb[5]=b},142:function(a,b){this.Hb[6]=b},143:function(a,b){this.va[1].Ja[0].zc=b},160:function(a,b){Jh(this,1,b)},161:function(a, +b){Lh(this,1,b)},192:function(a,b){yh(this,1,0,b)},194:function(a,b){Ah(this,1,0,b)},196:function(a,b){yh(this,1,1,b)},198:function(a,b){Ah(this,1,1,b)},200:function(a,b){yh(this,1,2,b)},202:function(a,b){Ah(this,1,2,b)},204:function(a,b){yh(this,1,3,b)},206:function(a,b){Ah(this,1,3,b)},208:function(a,b){this.va[1].Ug=b},210:function(a,b){Ch(this,1,b)},212:function(a,b){Dh(this,1,b)},214:function(a,b){this.va[1].Ja[b&3].mode=b},216:function(){this.va[1].xb=0},218:function(){for(var a=this.va[1], +b=0;b<a.Ja.length;b++)th(a,b)}};u(function(){for(var a=B(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new P(d);A(d,c);kh(d)}});function bi(a){v.call(this,"ROM",a,bi);this.hb=null;this.Vi=a.addr;this.Kg=a.size;this.Zk=a.alias;this.Cf=a.file;this.uj=a.notify;if(this.Cf){a=this.Cf;var b=fa(this.Cf);"json"!=b&&"hex"!=b&&(a=la()+"/api/v1/dump?file="+this.Cf+"&format=bytes&decimal=true");p(a,!0,null,this,bi.prototype.xm)}}y(v,bi); +bi.prototype.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;ci(this)};bi.prototype.Sb=function(){this.Sg&&(this.Ha&&this.Ha.Xn(this.Vi,this.Kg,this.Sg),delete this.Sg);return!0};bi.prototype.Jb=function(){return!0}; +bi.prototype.xm=function(a,b,c){if(c)this.xa("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.hb=e;else if(f)for(this.hb=Array(4*f.length),c=b=0;b<f.length;b++)this.hb[c++]=f[b]&255,this.hb[c++]=f[b]>>8&255,this.hb[c++]=f[b]>>16&255,this.hb[c++]=f[b]>>24&255;else this.hb=d;this.Sg=d.symbols;if(!this.hb.length){t("Empty ROM: "+a);return}if(1==this.hb.length){t(this.hb[0]);return}}catch(l){this.xa("ROM data error: "+ +l.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.hb=Array(a.length),d=0;d<a.length;d++)this.hb[d]=parseInt(a[d],16);ci(this)}};function ci(a){if(!Ea(a))if(!a.Cf)a.Oa();else if(a.hb&&a.ma){if(a.hb.length!=a.Kg)Fa(a,"ROM size (0x"+h(a.hb.length)+") does not match specified size (0x"+h(a.Kg)+")");else if(di(a,a.Vi)&&di(a,a.Zk)){if(a.uj){var b=Ba(a.uj,a.id);b&&("ega"==b.Da&&ei(b,a.hb,[8752,12640],8),b.Oa())}delete a.hb}a.Oa()}} +function di(a,b){if(null==b)return!0;if(La(a.ma,b,a.Kg,!0)){for(var c=0;c<a.hb.length;c++)Ra(a.ma,b+c,a.hb[c]);return!0}return!1}u(function(){for(var a=B(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new bi(d);A(d,c)}});function fi(a){v.call(this,"RAM",a,fi);this.Of=a.addr;this.gd=a.size;this.hl=a.test;this.el=!!this.gd;this.bg=!1}y(v,fi);fi.prototype.gc=function(a,b,c){this.ma=b;this.ja=c;this.Fa=a;this.ga=C(a,"ChipSet");this.Oa()}; +fi.prototype.Sb=function(a,b){b||this.reset();return!0};fi.prototype.Jb=function(){return!0}; +fi.prototype.reset=function(){if(!this.Of&&!this.el&&this.ga){var a=1024*oh(this.ga);this.gd&&a!=this.gd&&(Na(this.ma,this.Of,this.gd),this.bg=!1);this.gd=a}!this.bg&&this.gd&&La(this.ma,this.Of,this.gd)&&(this.bg=!0,this.status(Math.floor(this.gd/1024)+"Kb"));if(this.bg){if(this.hl||Sa(this.ma,1138,4660),this.ga&&(a=this.ga,a.ka)){var b=1048576>this.Of?21:23,c=a.ka[b]|a.ka[b+1]<<8,c=c+(this.gd>>10);a.ka[b]=c&255;a.ka[b+1]=c>>8;sh(a)}}else t("No RAM allocated")}; +u(function(){for(var a=B(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new fi(d);A(d,c)}});function gi(a){v.call(this,"Keyboard",a,gi);this.Rg={};this.pm=250;this.qm=100;this.Oa()}y(v,gi); +var hi={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,backspace:14,tab:15,q:16,w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,squote:40,bquote:41,lshift:42,bslash:43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,rshift:54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,home:71,"up-arrow":72,"page-up":73,"num-minus":74, +"left-arrow":75,center:76,"right-arrow":77,"num-plus":78,end:79,"down-arrow":80,"page-down":81,ins:82,del:83},ii={tab:9,esc:27,rshift:224,lshift:240,ctrl:241,alt:242,"caps-lock":244,f1:336,f2:337,f3:338,f4:339,f5:340,f6:341,f7:342,f8:343,f9:344,f10:345,"left-arrow":261,"up-arrow":262,"right-arrow":263,"down-arrow":264,"ctrl-c":3,"ctrl-break":254,"ctrl-alt-del":255},S=[];S[32]=57;S[49]=2;S[33]=61442;S[50]=3;S[64]=61443;S[51]=4;S[35]=61444;S[52]=5;S[36]=61445;S[53]=6;S[37]=61446;S[54]=7;S[94]=61447; S[55]=8;S[38]=61448;S[56]=9;S[42]=61449;S[57]=10;S[40]=61450;S[48]=11;S[41]=61451;S[45]=12;S[95]=61452;S[61]=13;S[43]=61453;S[113]=16;S[81]=61456;S[119]=17;S[87]=61457;S[101]=18;S[69]=61458;S[114]=19;S[82]=61459;S[116]=20;S[84]=61460;S[121]=21;S[89]=61461;S[117]=22;S[85]=61462;S[105]=23;S[73]=61463;S[111]=24;S[79]=61464;S[112]=25;S[80]=61465;S[91]=26;S[123]=61466;S[93]=27;S[125]=61467;S[97]=30;S[65]=61470;S[115]=31;S[83]=61471;S[100]=32;S[68]=61472;S[102]=33;S[70]=61473;S[103]=34;S[71]=61474; S[104]=35;S[72]=61475;S[106]=36;S[74]=61476;S[107]=37;S[75]=61477;S[108]=38;S[76]=61478;S[59]=39;S[58]=61479;S[39]=40;S[34]=61480;S[96]=41;S[126]=61481;S[92]=43;S[124]=61483;S[122]=44;S[90]=61484;S[120]=45;S[88]=61485;S[99]=46;S[67]=61486;S[118]=47;S[86]=61487;S[98]=48;S[66]=61488;S[110]=49;S[78]=61489;S[109]=50;S[77]=61490;S[44]=51;S[60]=61491;S[46]=52;S[62]=61492;S[47]=53;S[63]=61493;S[8]=14;S[9]=15;S[13]=28;S[27]=1;S[240]=42;S[224]=54;S[241]=29;S[242]=56;S[244]=58;S[336]=59;S[337]=60;S[338]=61; -S[339]=62;S[340]=63;S[341]=64;S[342]=65;S[343]=66;S[344]=67;S[345]=68;S[261]=75;S[262]=72;S[263]=77;S[264]=80;S[254]=61766;S[255]=15921491;g=li.prototype; -g.sb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.oa[a])switch(c){case "kbd":return this.oa[a]=d,d.onkeydown=function(a){return oi(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.wa&32?e.wa&=-33:b=e.wa&12?!1:!pi(e,a);return b},d.onkeyup=function(a){return oi(e,a,!1)},!0;default:if(void 0!==ni[c]&&"button"==b)return this.oa[a]=d,d.onclick=function(a,b,c){return function(){a.ja&&a.ja.Ae();return!pi(a,c)}}(this,c,ni[c]),!0;if(void 0!==mi[c])return this.oa[a]= -d,b=function(a,b,c){return function(){qi(a,c)}}(this,c,mi[c]),c=function(a,b,c){return function(){qi(a,c)}}(this,c,mi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};g.dc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ga=d;this.Ea=a;this.ga=D(a,"ChipSet")};g.Ma=function(){this.bl=(this.kl=oa("iOS"))||oa("Android");return v.prototype.Ma.call(this)};function ci(a){a.cc=[170];a.ga&&R(a.ga,1,4)} -function ai(a,b){var c=0;a.cc.length&&(c=a.cc[0],b&&di(a));return c}function di(a,b){0<a.cc.length&&(b?a.cc=[]:(a.cc.shift(),0<a.cc.length&&a.ga&&R(a.ga,1)))}g.Rb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};g.Ib=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.ud();this.wa=0;this.cc=[];if(this.Nc)for(var a in this.Nc)null!==a.match(/^[0-9]+$/)||this.Nc[a]&&clearTimeout(this.Nc[a]);this.Nc=[];this.Dk=this.ce=0}; -g.save=function(){var a=new H(this);a.set(0,this.Fi());return a.data()};g.restore=function(a){return this.ud(a[0])};g.ud=function(a){var b=0;void 0===a&&(a=[]);this.hh=a[b++];this.jh=a[b];return!0};g.Fi=function(){var a=0,b=[];b[a++]=this.hh;b[a]=this.jh;return b}; -function qi(a,b){var c=b&127,d=c==b;if(a.cc)if(20>a.cc.length){if(!(!d&&!a.Ng[c]||d&&a.Ng[c])){a.Ng[c]=d;a.cc.push(b);1==a.cc.length&&a.ga&&R(a.ga,1);for(var e in mi)if(mi[e]==c){(c=a.oa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.cc.length&&a.cc.push(255)}function ri(a,b){var c=b?a.mm:a.lm;a.ja&&a.ja.Ic&&(c/=a.ja.Ic);return c}function si(a,b){!a.ce||void 0!==b&&b==a.ce||(clearTimeout(a.Nc[a.ce]),ti(a,a.ce,!1))} -function oi(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Dk=f);240==f+224?(a.wa&=-2,c&&(a.wa|=1),f+=224,e=!1):241==f+224?(a.wa&=-5,c&&(a.wa|=4),f+=224,e=!1):242==f+224?(a.wa&=-9,c&&(a.wa|=8),f+=224,e=!1):244==f+224?(a.wa&=-17,c&&(a.wa|=16),f+=224,d=pi(a,f)):91==f?(a.wa&=-33,c&&(a.wa|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.wa&12)&&(f=254),d=c?!pi(a,f):!1):void 0!==S[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.wa&=-33,a.bl||f!=a.Dk||si(a));void 0===d&&(d=!ti(a,f,c));return d} -function pi(a,b,c){var d=!1;si(a,b);ti(a,b,!0)&&(c?ti(a,b,!1):(c=!1,a.Nc[b]&&(clearTimeout(a.Nc[b]),c=!0),c=ri(a,c),a.Nc[a.ce=b]=setTimeout(function(a){return function(){ti(a,b,!1)}}(a),c)),d=!0);return d} -function ti(a,b,c){var d=!1;c||(a.Nc[b]=null,a.ce==b&&(a.ce=0));var e=S[b];void 0===e&&1<=b&&26>=b&&(e=S[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.wa&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.wa&17||(d=42):224==f?a.wa&18||(d=54):241==f?a.wa&4||(d=29):242==f&&(a.wa&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;c<b.length;c++)qi(a,b[c]);d=!0}return d} -u(function(){for(var a=B(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new li(d);A(d,c)}}); -function T(a,b,c,d){v.call(this,"Video",a,T);this.Ca=a.model;this.zc=0;"ega"==this.Ca&&(this.Kk=a.switches,this.zc=a.memory||0);this.Kc=a.mode;if(void 0===this.Kc||void 0===U[this.Kc])this.Kc=ui;this.qg=a.charCols;this.Fh=a.charRows;if(void 0===this.qg||void 0===this.Fh)this.qg=U[this.Kc][0],this.Fh=U[this.Kc][1];this.Sc=a.screenWidth;this.rd=a.screenHeight;this.cl=a.scale;this.$k=12<=Math.round(this.Sc/this.qg);this.el=a.touchScreen;this.pb=b;this.Ac=c;this.Pk=d;this.Wa=this.$b=0;this.gd=[];this.Oc= -Array(16);this.kh=!1;var e=this;this.pb&&(this.pb.onfocus=function(){e.kh=!0},this.pb.onblur=function(){e.kh=!1});if(a=a.fontROM)"json"!=fa(a)&&(a=la()+"/api/v1/dump?file="+a+"&format=bytes"),p(a,!0,null,this,this.um)}y(v,T); -var vi={2:{Hh:15700,Gh:208,wi:85,xi:96},3:{Hh:18432,Gh:364,wi:85,xi:96},4:{Hh:21850,Gh:364,wi:85,xi:96}},wi={6:[1,3,!0],7:[2,3,!0],8:[5,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[5,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},ui=7,U=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];U[ui]=[80,25,1,0,1];U[13]=[320,200,16];U[14]=[640,200,16];U[15]=[640,350,16];U[16]=[640,350,16];U[0]=U[1];U[2]=U[3];U[5]=U[4];var xi=Array(5);xi[0]=[0,0,0,255];xi[1]=[127,192,127,255]; -xi[2]=[127,192,127,255];xi[3]=[127,255,127,255];xi[4]=[127,255,127,255];var yi=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],W=Array(16);W[0]=[0,0,0,255];W[1]=[0,0,170,255];W[2]=[0,170,0,255];W[3]=[0,170,170,255];W[4]=[170,0,0,255];W[5]=[170,0,170,255];W[6]=[170,85,0,255];W[7]=[170,170,170,255];W[8]=[85,85,85,255];W[9]=[85,85,255,255];W[10]=[85,255,85,255];W[11]=[85,255,255,255];W[12]=[255,85,85,255];W[13]=[255,85,255,255];W[14]=[255,255,85,255];W[15]=[255,255,255,255]; -var zi=[2,4,6],Ai=[3,5,7],Bi=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Ci=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],X=[0];X[128]=1;X[32768]=2;X[32896]=3;X[8388608]=4;X[8388736]=5;X[8421376]=6;X[8421504]=7;X[2147483648]=8;X[2147483776]=9;X[2147516416]=10;X[2147516544]=11;X[2155872256]=12;X[2155872384]=13;X[2155905024]=14;X[2155905152]=15; -function Di(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=Ei[b],f=a.xd||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(Fi)];this.fg=b;this.Wa=e[2];this.$b=e[3];this.zc=d||e[4];65536<=this.zc&&720896<=this.Wa&&(this.$b=Math.min(this.zc>>2,32768));this.Wb=c[0];this.ec=c[1];this.Se=c[2];this.Bf=c[3];this.qc=c[4]&255;this.eg=c[4]>>8&255;this.Tb=c[5];this.zh=Fi;if(5==b){this.zh=Gi;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,this.zc,Array(this.zc>>2),771,0,4294967295, -0,4294967295,0,4294967295,0]);this.sd=b[0];this.Xd=b[1];this.Gd=b[2];this.Gi=b[3];this.kg=b[4];this.ph=b[5];this.te=b[6];this.If=b[7];this.sh=b[8];this.th=b[9];this.se=b[10];this.he=b[11];this.ib=b[12];d=this.zc>>2;if((this.Jd=b[14])&&this.Jd.length<d){for(var e=this.Jd,l=0,k=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)k[l]=q,l+=2;l==d&&(l=1)}this.Jd=k}this.Fg(b[15]);this.ri=b[16];this.Ra=b[17];this.Jc=b[18];this.Ua=b[19];this.tg=b[20];this.zd=b[21];this.$d=b[22];this.Bh=b[23];this.Ch= -b[24]}f=vi[f]||vi[3];this.Dh=a.ja.ad/f.Hh|0;this.om=this.Dh*f.wi/100|0;this.yj=this.Dh*f.Gh;this.qm=this.yj*f.xi/100|0;this.Ih=null==c[7]?0:c[7]}}var Fi=18,Gi=25;function Hi(a){return this.tc(a)|this.tc(a+1)<<8}function Ii(a,b){this.vc(a,b&255);this.vc(a+1,b>>8&255)}var Y=[,,function(a){a+=this.offset;return(this.ea.ib=this.la[a])>>this.ea.ri&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.la[b]>>8:this.la[b])&255}]; -Y[16]=function(a){a+=this.offset;a=this.la[a];for(var b=this.ea.Bh&this.ea.Ch,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.la[c]&~this.ea.Ra|(b|b<<8|b<<16|b<<24)&this.ea.Ra;d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Jc|b<<8-this.ea.Jc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.zd|this.ea.$d;d=d&this.ea.Ra|this.la[c]&~this.ea.Ra;d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Jc|b<<8-this.ea.Jc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.zd|this.ea.$d;d&=this.ea.ib;d=d&this.ea.Ra|this.la[c]&~this.ea.Ra;d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Jc|b<<8-this.ea.Jc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.zd|this.ea.$d;d|=this.ea.ib;d=d&this.ea.Ra|this.la[c]&~this.ea.Ra;d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Jc|b<<8-this.ea.Jc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.zd|this.ea.$d;d^=this.ea.ib;d=d&this.ea.Ra|this.la[c]&~this.ea.Ra;d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.Ra&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.la[d]&~c;c=c&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[d]!=c&&(this.la[d]=c,this.Na=!0)}; -Y[4096]=function(a){a+=this.offset;var b=this.la[a]&~this.ea.Ra|this.ea.ib&this.ea.Ra;this.la[a]!=b&&(this.la[a]=b,this.Na=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=Ci[b&15],d=d&this.ea.Ra|this.la[c]&~this.ea.Ra,d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=Ci[b&15],d=d&this.ea.ib,d=d&this.ea.Ra|this.la[c]&~this.ea.Ra,d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -Y[40960]=function(a,b){var c=a+this.offset,d=Ci[b&15],d=d|this.ea.ib,d=d&this.ea.Ra|this.la[c]&~this.ea.Ra,d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=Ci[b&15],d=d^this.ea.ib,d=d&this.ea.Ra|this.la[c]&~this.ea.Ra,d=d&this.ea.Ua|this.ea.ib&~this.ea.Ua;this.la[c]!=d&&(this.la[c]=d,this.Na=!0)}; -function Ji(a){var b=[];if(void 0!==a.fg){b[0]=a.Wb;b[1]=a.ec;b[2]=a.Se;b[3]=a.Bf;b[4]=a.qc|a.eg<<8;b[5]=a.Tb;if(5==a.fg){var c=[];c[0]=a.sd;c[1]=a.Xd;c[2]=a.Gd;c[3]=a.Gi;c[4]=a.kg;c[5]=a.ph;c[6]=a.te;c[7]=a.If;c[8]=a.sh;c[9]=a.th;c[10]=a.se;c[11]=a.he;c[12]=a.ib;c[13]=a.zc;var d;a:if(d=a.Jd){var e=0,f=[];if(void 0!==d[0])for(var l=0;2>l;l++)for(var k=l;k<d.length;){for(var m=d[k],n=k+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-k>>1;f[e++]=m;k=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=a.yh;c[16]= -a.ri;c[17]=a.Ra;c[18]=a.Jc;c[19]=a.Ua;c[20]=a.tg;c[21]=a.zd;c[22]=a.$d;c[23]=a.Bh;c[24]=a.Ch;b[6]=c}b[7]=a.Ih}return b}Di.prototype.Fg=function(a){if(null!=a&&a!=this.yh){var b=a&255,c=Y[b];c||b&1&&(c=Y[1]);var b=a&65280,d=Y[b];d||b&256&&(d=Y[256]);this.Ke||(this.Ke=[null,Hi,null,Ii]);this.Ke[0]=c;this.Ke[2]=d;this.yh=a}};var Ei=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];g=T.prototype; -g.dc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ga=d;Za(b,this,Ki);ab(b,this,Li);"ega"==this.Ca&&(Za(b,this,Mi),ab(b,this,Ni));(this.Za=D(a,"Keyboard"))&&this.pb&&this.Za.sb("input",this.Pk?"textarea":"canvas","kbd",this.Pk||this.pb);this.Mf=9;(this.ga=D(a,"ChipSet"))&&this.Kk&&(this.Mf=dh(this.Kk,this.Mf));this.Za&&this.el&&Oi(this)};g.sb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.oa[c]=d,d.onclick=function(){hb(e,!0)},!0}return!1};g.Ae=function(){this.pb&&this.pb.focus()}; -function Oi(a){var b=a.pb;b&&!a.gh&&(b.addEventListener("touchstart",function(b){Pi(a,b)},!1),b.addEventListener("touchmove",function(b){Pi(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.gh=!0)} -function Pi(a,b){a.kh&&b.preventDefault();var c=0,d=0,e=a.pb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.Sc/a.pb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.Sc/3)|0;d=a.rd/a.pb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.rd/3)|0;1!=d?d?pi(a.Za,264,!0):pi(a.Za,262,!0):1!=c&&(c?pi(a.Za,263,!0):pi(a.Za,261,!0))}g.Rb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0}; -g.Ib=function(a){return a&&this.save?this.save():!0}; -g.reset=function(){var a=!0,b=0;this.ga&&(b=uh(this.ga));var c=!1;if(this.Ca)switch(this.Ca){case "ega":var c=!0,d=wi[this.Mf];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.xd!==b&&(this.xd=b,a=!0);this.ya=null;this.yc=this.Vg=new Di(this,1);this.Mb=this.Uf=new Di(this,3);c?(this.ia=new Di(this,5,null,this.zc),Qi(this)):this.ia=new Di;Ri(this);this.wd=null;this.Kc=3==b?ui:3;this.Qd=this.rc=-1;this.Pd=0;Si(this,this.Kc);if(this.ya.Wa&&a){a=this.ya.Wa+this.Wg;for(b=this.ya.Wa;b<a;b+= -2)d=Math.floor(65536*Math.random()),4==this.xd?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),Xa(this.ma,b,c|d<<8);hb(this,!0)}};function Qi(a){a.ia.kg&1?(a.yc=a.Vg,a.Mb=a.ia):(a.yc=a.ia,a.Mb=a.Uf)}g.save=function(){var a=new H(this);a.set(0,Ji(this.Vg));a.set(1,Ji(this.Uf));a.set(2,[this.xd,this.Kc,this.wd]);a.set(3,Ji(this.ia));return a.data()}; -g.restore=function(a){var b=a[2];this.xd=b[0];this.Kc=b[1];this.wd=b[2];this.ya=null;this.yc=this.Vg=new Di(this,1,a[0]);this.Mb=this.Uf=new Di(this,3,a[1]);this.ia=new Di(this,5,a[3],this.zc);this.ia.Wb&&Qi(this);Ri(this);if(!Ti(this))return!1;Ui(this);return!0}; -g.um=function(a,b,c){if(c)C(this,"Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){this.error("Empty font ROM image: "+a);return}if(1==d.length){this.error(d[0]);return}if(8192==d.length)ji(this,d,[0,6144]);else{C(this,"Unrecognized font data length ("+d.length+")");return}}catch(e){C(this,"Font ROM data error: "+e.message);return}this.Ma()}}; -function Vi(a,b){if(1==b)return a.Oc[0]=W[0],a.Oc[1]=W[7],a.Oc;if(2==b){var c=a.ya.Se;if(a.ya===a.ia){var d=a.ia.Gd[0],c=d&7;d&16&&(c|=8);18!=a.ia.Gd[1]&&(c|=32)}a.Oc[0]=W[c&15];c=c&32?Ai:zi;for(d=0;d<c.length;d++)a.Oc[d+1]=W[c[d]];return a.Oc}if(a.Mb===a.Uf)return W;c=null!=a.ia.Gd[15]?a.ia.Gd:Bi;for(d=0;d<a.Oc.length;d++){var e=c[d]||0;a.Oc[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.Oc}function ji(a,b,c,d){a.Jf=b;a.Mg=c;a.Ud=d} -function Ri(a){var b=!1;if(window&&a.Jf){var c=a.Ud?0:2048,d=a.Ud?a.Ud:9;Wi(a,1,a.Mg[0],c,d,14,a.Jf,xi,yi)&&(b=!0);c=Vi(a);d=a.Ud?a.Ud:8;Wi(a,3,a.Mg[1],0,d,8,a.Jf,c)&&(b=!0);a.Ud&&Wi(a,5,a.Mg[0],0,a.Ud,14,a.Jf,c)&&(b=!0)}return b}function Wi(a,b,c,d,e,f,l,k,m){var n=!1;Xi(a,b,c,d,e,f,l,k,m)&&(n=!0);a.$k&&Xi(a,b<<1,c,d,e,f,l,k,m)&&(n=!0);return n} -function Xi(a,b,c,d,e,f,l,k,m){var n=!1,q=b&1?0:1,s=a.gd[b];s||(s={Ub:e<<q,Vb:f<<q,ge:Array(k.length),Ni:k.slice(),Ge:m,Kg:Array(k.length)});for(m=0;m<k.length;m++){var r=k[m],x=s.ge[m]?s.Ni[m]:[];if(r[0]!==x[0]||r[1]!==x[1]||r[2]!==x[2]){var n=s,x=m,L=q,V=c,ca=d,da=e,gb=f,mc=l,kd=[0,0,0,0],nc=window.document.createElement("canvas");nc.width=n.Ub<<4;nc.height=n.Vb<<4;for(var Rh=nc.getContext("2d"),ua=void 0,rb=void 0,Sa=void 0,oc=8>gb||!ca?gb:8,ld=Rh.createImageData(n.Ub,n.Vb),ua=0;256>ua;ua++){for(Sa= -0;Sa<gb;Sa++)for(var Uj=n.Ge&&x&1&&Sa>=gb-2,Vj=mc[Sa<oc?V+ua*oc+Sa:ca+ua*oc+Sa-oc],md=0;md<=L;md++)for(rb=0;rb<da;rb++){var Sh=rb<<L,Th=(Sa<<L)+md,Uh=Uj||Vj&128>>(8<=rb&&176<=ua&&223>=ua?7:rb)?r:kd;Yi(ld,Sh,Th,Uh);L&&Yi(ld,Sh+1,Th,Uh)}Rh.putImageData(ld,(ua&15)*n.Ub,(ua>>4)*n.Vb)}n.ge[x]="#"+aa(r[0])+aa(r[1])+aa(r[2]);n.Ni[x]=r;n.Kg[x]=nc;n=!0}}a.gd[b]=s;return n}function Zi(a){0<a.Pd||0<=a.rc?0>a.Qd&&(a.Qd=0):a.Qd=-1} -function Ui(a){if(a.zb){for(var b=10;15>=b;b++)if(null==a.ya.Tb[b])return;var c=a.ya.Tb[10],b=c&31,d=a.ya.Tb[11]&31,e=a.ya.Tb[9]&31,f=!1;a.ya===a.ia&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)$i(a);else{c=a.ya.Tb[15]+((a.ya.Tb[14]&63)<<8);a.rc!=c&&($i(a),a.rc=c);d=d-b+1;if(a.Rk!=b||a.cj!=d)a.Rk=b,a.cj=d;a.qd=e+1;Zi(a)}}} -function $i(a){if(0<=a.rc){if(void 0!==a.Kb){var b=a.Kb[a.rc];if(b&131072){var b=b&-131073,c=a.rc%a.jb,d=Math.floor(a.rc/a.jb);a.zb&&a.gd[a.zb]&&(a.ne&&aj(a,c,d,b,a.ne),aj(a,c,d,b));a.Kb[a.rc]=b}}a.rc=-1}} -function bj(a){var b;a=a.ya;var c=a.he[5];if(null!=c){b=2;var d=512,e=a.he[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.Jc=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}g.Dd=function(a){var b=this.ya;null!=a&&b&&a!=b.yh&&(b.Fg(a),this.ma.Fg(b.Wa,b.$b,b.Ke))}; -function Ti(a,b){var c,d=a.wd,e=a.ya;if(e)if(1==e.fg)d=ui;else if(5==e.fg){var d=null,f=e.zc>>2,l=32768<f?32768:f,k=e.he[6];if(null!=k){switch(k&12){case 0:e.Wa=655360;e.$b=f;d=255;break;case 4:e.Wa=655360;e.$b=f;d=3==a.xd?15:16;break;case 8:e.Wa=720896;e.$b=l;d=ui;break;case 12:e.Wa=753664,e.$b=l,d=3==a.xd?2:3}c=e.If[1]&8;f=e.Tb[6]|(e.Tb[7]&1)<<8;255!=d&&(k&1?753664==e.Wa?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=bj(a)}}else e.ec&8&&(e.ec&2?(d=e.ec&16?6:5,e.ec&4||(d-=1)):(d=e.ec&1?3:1,e.ec&4&&(d-= -1)));else a.wd=null,null==d&&(d=a.Kc);if(!Si(a,d,b))return!1;a.Dd(c);return!0} -function Si(a,b,c){if(null!=b&&(b!=a.wd||c)){a.Wk=0;a.wd=b;b=a.ya||(b==ui?a.yc:a.Mb);if(b!=a.ya||b.Wa!=a.Wa||b.$b!=a.$b){$i(a);if(a.Wa){if(!Ta(a.ma,a.Wa,a.$b))return!1;a.ya&&(a.ya.Wb=!1)}a.ya=b;b.Wb=!0;a.Wa=b.Wa;a.$b=b.$b;if(!Qa(a.ma,b.Wa,b.$b,!1,b===a.ia?b:null))return!1}a.zb=0;a.jb=a.qg;a.Yb=a.Fh;a.Ah=U[ui][2];b=0;var d=U[a.wd];d&&(a.jb=d[0],a.Yb=d[1],a.Ah=d[2],b=d[3]||0,a.zb=d[4],4==a.xd&&a.ya===a.ia&&3==a.zb&&(7==a.ia.Tb[9]?a.Yb=43:a.zb=5));a.vj=a.jb*a.Yb;a.ng=a.vj/a.Ah;a.Wg=(a.ng<<1)+b;a.aj= -b?a.Wg+b>>1:0;13<=a.wd&&(a.ng<<=1);a.gd.length&&(a.Tc=Math.floor(a.Sc/a.jb),a.Uc=Math.floor(a.rd/a.Yb),a.zb?(b=a.gd[a.zb],d=a.gd[a.zb<<1],a.cl&&80==a.jb?d&&a.Tc>=3*d.Ub>>2&&(a.zb<<=1,b=d):(d&&a.Tc>=d.Ub&&(a.zb<<=1,b=d),b&&(a.Tc=b.Ub,a.Uc=b.Vb)),a.Ve=a.We=0,b&&(a.Ve=a.jb*b.Ub,a.We=a.Yb*b.Vb)):(a.Tc=a.Uc=1,a.Ve=a.jb,a.We=a.Yb),a.hg=a.Ac.createImageData(a.Ve,a.We),a.me=window.document.createElement("canvas"),a.me.width=a.Ve,a.me.height=a.We,a.ne=a.me.getContext("2d"),a.Ji=a.Ki=0,a.Yg=a.Sc,a.Zg=a.rd, -b=a.Sc-a.jb*a.Tc,d=a.rd-a.Yb*a.Uc,0<b&&(a.Ji=b>>1,a.Yg-=b),0<d&&(a.Ki=d>>1,a.Zg-=d),b||d)&&(a.Ac.fillStyle=a.pb.style.backgroundColor,a.Ac.fillRect(0,0,a.Sc,a.rd));!1!==c?hb(a,!0):cj(a,!0)}return!0}function Yi(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function cj(a,b){var c;if(b){if(c=a.ng,void 0===a.Kb||a.Kb.length!=c)a.Kb=Array(c)}else{if(void 0===a.Kb)return;c=a.Kb.length}for(var d=0;d<c;d++)a.Kb[d]=-1;a.Pd=-1} -function aj(a,b,c,d,e){var f=d&255,l=d>>8;d=l&15;var k=a.gd[a.zb];k.Ge&&(d=k.Ge[d]);var m=l>>4&15;k.Ge&&(m=k.Ge[m]);e?(b*=k.Ub,c*=k.Vb,e.fillStyle=k.ge[m],e.fillRect(b,c,k.Ub,k.Vb)):(b=b*a.Tc+a.Ji,c=c*a.Uc+a.Ki,a.Ac.fillStyle=k.ge[m],a.Ac.fillRect(b,c,a.Tc,a.Uc));l&256&&(m=(f&15)*k.Ub,f=(f>>4)*k.Vb,e?e.drawImage(k.Kg[d],m,f,k.Ub,k.Vb,b,c,k.Ub,k.Vb):a.Ac.drawImage(k.Kg[d],m,f,k.Ub,k.Vb,b,c,a.Tc,a.Uc));l&512&&(f=a.Rk,l=a.cj,e?(a.qd&&a.qd!==k.Vb&&(f=Math.floor(f*k.Vb/a.qd),l=Math.floor(l*k.Vb/a.qd)), -e.fillStyle=k.ge[d],e.fillRect(b,c+f,k.Ub,l)):(a.qd&&a.qd!==a.Uc&&(f=Math.floor(f*a.Uc/a.qd),l=Math.floor(l*a.Uc/a.qd)),a.Ac.fillStyle=k.ge[d],a.Ac.fillRect(b,c+f,a.Tc,l)))} -function hb(a,b){if(a.yb){var c=!1;a.ya&&(a.ya===a.ia?a.ia.Xd&32&&(c=!0):a.ya.ec&8&&(c=!0));if(c||b){if(b)cj(a,!0);else if(void 0===a.Kb)return;var d=!1;!(b||++a.Wk&15)&&0<=a.Qd&&(a.Qd++,d=!0);var e=0,f=a.vj,c=a.ya.Wa,l=c+a.ya.$b,k=(a.ya.Tb[12]<<8)+a.ya.Tb[13];a.zb&&(k<<=1);var c=c+k,m=a.Wg;c+m>l&&(m=l-c,0>m&&(m=0));l=c+m;if(k=!b){for(var k=a.ma,n=!0,q=c>>k.Hb;0<m&&q<k.xa.length;)k.xa[q].Na&&(k.xa[q].Na=n=!1,k.xa[q].fj=!0),m-=k.lc,q++;k=n}if(k){if(!d)return;if(!a.Pd){if(0>a.rc)return;e=a.rc;f=e+1}}if(a.zb){if(a.gd[a.zb]){d= -0;k=a.Pd=0;m=1048575;a.ya.ec&32&&(k=32768,m&=~k,a.Qd&2||(m&=-65537));for(c+=e<<1;c<l&&e<f;)n=Va(a.ma,c),n|=65536,n&k&&(a.Pd++,n&=m),e==a.rc&&(n|=a.Qd&1?131072:0),q=a.Kb[e],q!=n&&(aj(a,e%a.jb,Math.floor(e/a.jb),n,a.ne),a.Kb[e]=n,d++),c+=2,e++;d&&a.ne&&a.Ac.drawImage(a.me,0,0,a.Ve,a.We,a.Ji,a.Ki,a.Yg,a.Zg);Zi(a)}}else if(a.aj){for(var f=l,s,r,e=c,l=a.Pd=0,d=a.Ah,k=16==d?65536:196608,m=16==d?1:2,n=Vi(a,m),x=q=0,L=a.jb,V=0,ca=a.Yb,da=0;e<f;){s=Va(a.ma,e);r=a.Kb[l];if(r===s)q+=d;else{a.Kb[l]=s;s=s>>8| -(s&255)<<8;r=k;var gb=16;q<L&&(L=q);for(var mc=0;mc<d;mc++){var kd=(s&(r>>=m))>>(gb-=m);Yi(a.hg,q++,x,n[kd])}q>V&&(V=q);x<ca&&(ca=x);x>=da&&(da=x+1)}e+=2;l++;if(q>=a.jb){q=0;x+=2;if(x>a.Yb)break;x==a.Yb&&(x=1,e=c+a.aj)}}L<a.jb&&(a.ne.putImageData(a.hg,0,0,L,ca,V-L,da-ca),a.Ac.drawImage(a.me,0,0,a.jb,a.Yb,0,0,a.Sc,a.rd))}else{f=l;e=a.Pd=0;l=Vi(a);d=a.ya.Jd;m=k=0;n=a.jb;q=0;x=a.Yb;for(L=0;c<f;){V=c++-a.Wa;V=d[V];ca=a.Kb[e];if(ca===V)k+=8;else{a.Kb[e]=V;k<n&&(n=k);for(ca=0;8>ca;ca++)da=V&2155905152, -0>da&&(da=-da),da=X[da]||0,Yi(a.hg,k++,m,l[da]),V<<=1;k>q&&(q=k);m<x&&(x=m);m>=L&&(L=m+1)}e++;if(k>=a.jb&&(k=0,++m>a.Yb))break}n<a.jb&&(a.ne.putImageData(a.hg,0,0,n,x,q-n,L-x),a.Ac.drawImage(a.me,0,0,a.jb,a.Yb,0,0,a.Sc,a.rd))}}}}g.Ql=function(){return this.yc.qc};g.$m=function(a,b){var c=this.yc;c.eg=c.qc;c.qc=b&31};g.Pl=function(){return dj(this.yc)};g.Zm=function(a,b){ej(this,this.yc,b)};g.Rl=function(){return this.yc.ec};g.an=function(a,b){this.yc.ec=b;Ti(this,!1)}; -g.Sl=function(){return fj(this,this.yc)};g.Bk=function(a,b){this.ia.ph=this.ia.ph&-4|b&3};g.rj=function(){var a=this.ia.sd?this.ia.Gd[this.ia.Xd&31]:this.ia.Xd;this.ia.sd=!this.ia.sd;return a};g.Ak=function(a,b){var c=this.ia.Xd&32;if(this.ia.sd){var d=this.ia.Xd&31;if(16<=d||!c)this.ia.Gd[d]=b;this.ia.sd=!1}else this.ia.Xd=b,this.ia.sd=!0,b&32&&!c&&Ri(this)&&hb(this,!0)};g.bm=function(){var a=3-((this.ia.kg&12)>>2),a=this.ia.Gi&-17|(this.Mf&1<<a)<<4-a;return this.ia.Gi=a}; -g.cn=function(a,b){this.ia.kg=b;Qi(this)};g.am=function(){return this.ia.te};g.kn=function(a,b){this.ia.te=b};g.$l=function(){return this.ia.If[this.ia.te]};g.jn=function(a,b){this.ia.If[this.ia.te]=b;2==this.ia.te&&(this.ia.Ra=Ci[b&15])};g.Il=function(){return this.ia.sh};g.Um=function(a,b){this.ia.sh=b};g.Jl=function(){return this.ia.th};g.Vm=function(a,b){this.ia.th=b};g.Hl=function(){return this.ia.se};g.Tm=function(a,b){this.ia.se=b};g.Gl=function(){return this.ia.he[this.ia.se]}; -g.Sm=function(a,b){this.ia.he[this.ia.se]=b;switch(this.ia.se){case 0:this.ia.tg=Ci[b&15];this.ia.$d=this.ia.tg&~this.ia.zd;break;case 1:this.ia.zd=~Ci[b&15];this.ia.$d=this.ia.tg&~this.ia.zd;break;case 2:this.ia.Bh=Ci[b&15]&2155905152;break;case 3:case 5:this.Dd(bj(this));break;case 4:this.ia.ri=(b&3)<<3;break;case 6:Ti(this,!1);break;case 7:this.ia.Ch=Ci[b&15^15]&2155905152;break;case 8:this.ia.Ua=b|b<<8|b<<16|b<<24}};g.yl=function(){return this.Mb.qc}; -g.Lm=function(a,b){var c=this.Mb;c.eg=c.qc;c.qc=b&31};g.xl=function(){return dj(this.Mb)};g.Km=function(a,b){ej(this,this.Mb,b)};g.zl=function(){return this.Mb.ec};g.Mm=function(a,b){this.Mb.ec=b;Ti(this,!1)};g.wl=function(){return this.Mb.Se};g.Jm=function(a,b){this.Mb.Se!==b&&(this.Mb.Se=b,cj(this,!1))};g.Al=function(){return fj(this,this.Mb)};function dj(a){var b;a.qc<a.zh&&(b=a.Tb[a.qc]);return b}function ej(a,b,c){b.qc<b.zh&&(b.Tb[b.qc]=c,9==b.qc&&8!=b.eg&&Ti(a,!0),Ui(a))} -function fj(a,b){var c=0,d=qb(a.ja),e=d-b.Ih;0>e&&(e=0);e%b.Dh>b.om&&(c|=1);e%=b.yj;e>b.qm&&(c|=8);b.Ih=d-e;b===a.ia?(c|=b.Bf&48^48,b.sd=!1):c=(b.Bf^=9)|240;return b.Bf=c} -var Ki={948:T.prototype.Ql,949:T.prototype.Pl,952:T.prototype.Rl,954:T.prototype.Sl,980:T.prototype.yl,981:T.prototype.xl,984:T.prototype.zl,985:T.prototype.wl,986:T.prototype.Al},Li={948:T.prototype.$m,949:T.prototype.Zm,952:T.prototype.an,980:T.prototype.Lm,981:T.prototype.Km,984:T.prototype.Mm,985:T.prototype.Jm},Mi={960:T.prototype.rj,961:T.prototype.rj,962:T.prototype.bm,964:T.prototype.am,965:T.prototype.$l,970:T.prototype.Jl,972:T.prototype.Il,974:T.prototype.Hl,975:T.prototype.Gl},Ni={954:T.prototype.Bk, -960:T.prototype.Ak,961:T.prototype.Ak,962:T.prototype.cn,964:T.prototype.kn,965:T.prototype.jn,970:T.prototype.Vm,972:T.prototype.Um,974:T.prototype.Tm,975:T.prototype.Sm,986:T.prototype.Bk}; +S[339]=62;S[340]=63;S[341]=64;S[342]=65;S[343]=66;S[344]=67;S[345]=68;S[261]=75;S[262]=72;S[263]=77;S[264]=80;S[254]=61766;S[255]=15921491;g=gi.prototype; +g.tb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.oa[a])switch(c){case "kbd":return this.oa[a]=d,d.onkeydown=function(a){return ji(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.wa&32?e.wa&=-33:b=e.wa&12?!1:!ki(e,a);return b},d.onkeyup=function(a){return ji(e,a,!1)},!0;default:if(void 0!==ii[c]&&"button"==b)return this.oa[a]=d,d.onclick=function(a,b,c){return function(){a.ja&&a.ja.Ce();return!ki(a,c)}}(this,c,ii[c]),!0;if(void 0!==hi[c])return this.oa[a]= +d,b=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]),c=function(a,b,c){return function(){li(a,c)}}(this,c,hi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.Fa=a;this.ga=C(a,"ChipSet")};g.Oa=function(){this.fl=(this.ol=oa("iOS"))||oa("Android");return v.prototype.Oa.call(this)};function Yh(a){a.fc=[170];a.ga&&R(a.ga,1,4)} +function Wh(a,b){var c=0;a.fc.length&&(c=a.fc[0],b&&Zh(a));return c}function Zh(a,b){0<a.fc.length&&(b?a.fc=[]:(a.fc.shift(),0<a.fc.length&&a.ga&&R(a.ga,1)))}g.Sb=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.wd();this.wa=0;this.fc=[];if(this.Pc)for(var a in this.Pc)null!==a.match(/^[0-9]+$/)||this.Pc[a]&&clearTimeout(this.Pc[a]);this.Pc=[];this.Hk=this.ee=0}; +g.save=function(){var a=new H(this);a.set(0,this.Ki());return a.data()};g.restore=function(a){return this.wd(a[0])};g.wd=function(a){var b=0;void 0===a&&(a=[]);this.mh=a[b++];this.oh=a[b];return!0};g.Ki=function(){var a=0,b=[];b[a++]=this.mh;b[a]=this.oh;return b}; +function li(a,b){var c=b&127,d=c==b;if(a.fc)if(20>a.fc.length){if(!(!d&&!a.Rg[c]||d&&a.Rg[c])){a.Rg[c]=d;a.fc.push(b);1==a.fc.length&&a.ga&&R(a.ga,1);for(var e in hi)if(hi[e]==c){(c=a.oa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.fc.length&&a.fc.push(255)}function mi(a,b){var c=b?a.qm:a.pm;a.ja&&a.ja.Lc&&(c/=a.ja.Lc);return c}function ni(a,b){!a.ee||void 0!==b&&b==a.ee||(clearTimeout(a.Pc[a.ee]),oi(a,a.ee,!1))} +function ji(a,b,c){var d,e=!c,f=b.keyCode;c&&(a.Hk=f);240==f+224?(a.wa&=-2,c&&(a.wa|=1),f+=224,e=!1):241==f+224?(a.wa&=-5,c&&(a.wa|=4),f+=224,e=!1):242==f+224?(a.wa&=-9,c&&(a.wa|=8),f+=224,e=!1):244==f+224?(a.wa&=-17,c&&(a.wa|=16),f+=224,d=ki(a,f)):91==f?(a.wa&=-33,c&&(a.wa|=32),e=!1,d=!0):9==f||27==f||8==f?(8==f&&4==(a.wa&12)&&(f=254),d=c?!ki(a,f):!1):void 0!==S[f+224]?f+=224:b.altKey||b.ctrlKey?65<=f&&90>=f&&(f+=32):d=!0;e&&(a.wa&=-33,a.fl||f!=a.Hk||ni(a));void 0===d&&(d=!oi(a,f,c));return d} +function ki(a,b,c){var d=!1;ni(a,b);oi(a,b,!0)&&(c?oi(a,b,!1):(c=!1,a.Pc[b]&&(clearTimeout(a.Pc[b]),c=!0),c=mi(a,c),a.Pc[a.ee=b]=setTimeout(function(a){return function(){oi(a,b,!1)}}(a),c)),d=!0);return d} +function oi(a,b,c){var d=!1;c||(a.Pc[b]=null,a.ee==b&&(a.ee=0));var e=S[b];void 0===e&&1<=b&&26>=b&&(e=S[b+64]&255|61696);if(void 0!==e){14==e&&12==(a.wa&12)&&(e=83);b=[];for(b.push(e&255|(c?0:128));e>>=8;){var d=0,f=e&255;240==f?a.wa&17||(d=42):224==f?a.wa&18||(d=54):241==f?a.wa&4||(d=29):242==f&&(a.wa&8||(d=56));d&&(c?b.unshift(d):b.push(d|128))}for(c=0;c<b.length;c++)li(a,b[c]);d=!0}return d} +u(function(){for(var a=B(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new gi(d);A(d,c)}}); +function T(a,b,c,d){v.call(this,"Video",a,T);this.Da=a.model;this.Bc=0;"ega"==this.Da&&(this.Ok=a.switches,this.Bc=a.memory||0);this.Nc=a.mode;if(void 0===this.Nc||void 0===U[this.Nc])this.Nc=pi;this.ug=a.charCols;this.Kh=a.charRows;if(void 0===this.ug||void 0===this.Kh)this.ug=U[this.Nc][0],this.Kh=U[this.Nc][1];this.Uc=a.screenWidth;this.td=a.screenHeight;this.gl=a.scale;this.dl=12<=Math.round(this.Uc/this.ug);this.il=a.touchScreen;this.qb=b;this.Cc=c;this.Tk=d;this.Ya=this.cc=0;this.jd=[];this.Qc= +Array(16);this.ph=!1;var e=this;this.qb&&(this.qb.onfocus=function(){e.ph=!0},this.qb.onblur=function(){e.ph=!1});if(a=a.fontROM)"json"!=fa(a)&&(a=la()+"/api/v1/dump?file="+a+"&format=bytes"),p(a,!0,null,this,this.ym)}y(v,T); +var qi={2:{Mh:15700,Lh:208,Bi:85,Ci:96},3:{Mh:18432,Lh:364,Bi:85,Ci:96},4:{Mh:21850,Lh:364,Bi:85,Ci:96}},ri={6:[1,3,!0],7:[2,3,!0],8:[5,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[5,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},pi=7,U=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];U[pi]=[80,25,1,0,1];U[13]=[320,200,16];U[14]=[640,200,16];U[15]=[640,350,16];U[16]=[640,350,16];U[0]=U[1];U[2]=U[3];U[5]=U[4];var si=Array(5);si[0]=[0,0,0,255];si[1]=[127,192,127,255]; +si[2]=[127,192,127,255];si[3]=[127,255,127,255];si[4]=[127,255,127,255];var ti=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],W=Array(16);W[0]=[0,0,0,255];W[1]=[0,0,170,255];W[2]=[0,170,0,255];W[3]=[0,170,170,255];W[4]=[170,0,0,255];W[5]=[170,0,170,255];W[6]=[170,85,0,255];W[7]=[170,170,170,255];W[8]=[85,85,85,255];W[9]=[85,85,255,255];W[10]=[85,255,85,255];W[11]=[85,255,255,255];W[12]=[255,85,85,255];W[13]=[255,85,255,255];W[14]=[255,255,85,255];W[15]=[255,255,255,255]; +var ui=[2,4,6],vi=[3,5,7],wi=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],xi=[0,255,65280,65535,16711680,16711935,16776960,16777215,4278190080,4278190335,4278255360,4278255615,4294901760,4294902015,4294967040,4294967295],X=[0];X[128]=1;X[32768]=2;X[32896]=3;X[8388608]=4;X[8388736]=5;X[8421376]=6;X[8421504]=7;X[2147483648]=8;X[2147483776]=9;X[2147516416]=10;X[2147516544]=11;X[2155872256]=12;X[2155872384]=13;X[2155905024]=14;X[2155905152]=15; +function yi(a,b,c,d){if(void 0!==b&&(!c||c.length)){var e=zi[b],f=a.zd||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(Ai)];this.jg=b;this.Ya=e[2];this.cc=e[3];this.Bc=d||e[4];65536<=this.Bc&&720896<=this.Ya&&(this.cc=Math.min(this.Bc>>2,32768));this.Xb=c[0];this.hc=c[1];this.Ve=c[2];this.Ff=c[3];this.sc=c[4]&255;this.ig=c[4]>>8&255;this.Ub=c[5];this.Eh=Ai;if(5==b){this.Eh=Bi;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,this.Bc,Array(this.Bc>>2),771,0,4294967295, +0,4294967295,0,4294967295,0]);this.ud=b[0];this.Zd=b[1];this.Id=b[2];this.Li=b[3];this.og=b[4];this.uh=b[5];this.ve=b[6];this.Mf=b[7];this.xh=b[8];this.yh=b[9];this.ue=b[10];this.je=b[11];this.kb=b[12];d=this.Bc>>2;if((this.Ld=b[14])&&this.Ld.length<d){for(var e=this.Ld,l=0,k=Array(d),m=0;m<e.length-1;){for(var n=e[m++],q=e[m++];n--;)k[l]=q,l+=2;l==d&&(l=1)}this.Ld=k}this.Jg(b[15]);this.wi=b[16];this.Ta=b[17];this.Mc=b[18];this.Wa=b[19];this.xg=b[20];this.Bd=b[21];this.be=b[22];this.Gh=b[23];this.Hh= +b[24]}f=qi[f]||qi[3];this.Ih=a.ja.cd/f.Mh|0;this.sm=this.Ih*f.Bi/100|0;this.Cj=this.Ih*f.Lh;this.um=this.Cj*f.Ci/100|0;this.Nh=null==c[7]?0:c[7]}}var Ai=18,Bi=25;function Ci(a){return this.vc(a)|this.vc(a+1)<<8}function Di(a,b){this.xc(a,b&255);this.xc(a+1,b>>8&255)}var Y=[,,function(a){a+=this.offset;return(this.ea.kb=this.la[a])>>this.ea.wi&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.la[b]>>8:this.la[b])&255}]; +Y[16]=function(a){a+=this.offset;a=this.la[a];for(var b=this.ea.Gh&this.ea.Hh,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.la[c]&~this.ea.Ta|(b|b<<8|b<<16|b<<24)&this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Bd|this.ea.be;d=d&this.ea.Ta|this.la[c]&~this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Bd|this.ea.be;d&=this.ea.kb;d=d&this.ea.Ta|this.la[c]&~this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Bd|this.ea.be;d|=this.ea.kb;d=d&this.ea.Ta|this.la[c]&~this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Mc|b<<8-this.ea.Mc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Bd|this.ea.be;d^=this.ea.kb;d=d&this.ea.Ta|this.la[c]&~this.ea.Ta;d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.Ta&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.la[d]&~c;c=c&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[d]!=c&&(this.la[d]=c,this.Qa=!0)}; +Y[4096]=function(a){a+=this.offset;var b=this.la[a]&~this.ea.Ta|this.ea.kb&this.ea.Ta;this.la[a]!=b&&(this.la[a]=b,this.Qa=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d&this.ea.Ta|this.la[c]&~this.ea.Ta,d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d&this.ea.kb,d=d&this.ea.Ta|this.la[c]&~this.ea.Ta,d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +Y[40960]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d|this.ea.kb,d=d&this.ea.Ta|this.la[c]&~this.ea.Ta,d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=xi[b&15],d=d^this.ea.kb,d=d&this.ea.Ta|this.la[c]&~this.ea.Ta,d=d&this.ea.Wa|this.ea.kb&~this.ea.Wa;this.la[c]!=d&&(this.la[c]=d,this.Qa=!0)}; +function Ei(a){var b=[];if(void 0!==a.jg){b[0]=a.Xb;b[1]=a.hc;b[2]=a.Ve;b[3]=a.Ff;b[4]=a.sc|a.ig<<8;b[5]=a.Ub;if(5==a.jg){var c=[];c[0]=a.ud;c[1]=a.Zd;c[2]=a.Id;c[3]=a.Li;c[4]=a.og;c[5]=a.uh;c[6]=a.ve;c[7]=a.Mf;c[8]=a.xh;c[9]=a.yh;c[10]=a.ue;c[11]=a.je;c[12]=a.kb;c[13]=a.Bc;var d;a:if(d=a.Ld){var e=0,f=[];if(void 0!==d[0])for(var l=0;2>l;l++)for(var k=l;k<d.length;){for(var m=d[k],n=k+2;n<d.length&&d[n]===m;)n+=2;f[e++]=n-k>>1;f[e++]=m;k=n}if(f.length<d.length){d=f;break a}}c[14]=d;c[15]=a.Dh;c[16]= +a.wi;c[17]=a.Ta;c[18]=a.Mc;c[19]=a.Wa;c[20]=a.xg;c[21]=a.Bd;c[22]=a.be;c[23]=a.Gh;c[24]=a.Hh;b[6]=c}b[7]=a.Nh}return b}yi.prototype.Jg=function(a){if(null!=a&&a!=this.Dh){var b=a&255,c=Y[b];c||b&1&&(c=Y[1]);var b=a&65280,d=Y[b];d||b&256&&(d=Y[256]);this.Ne||(this.Ne=[null,Ci,null,Di]);this.Ne[0]=c;this.Ne[2]=d;this.Dh=a}};var zi=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];g=T.prototype; +g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;Ua(b,this,Fi);Wa(b,this,Gi);"ega"==this.Da&&(Ua(b,this,Hi),Wa(b,this,Ii));(this.ab=C(a,"Keyboard"))&&this.qb&&this.ab.tb("input",this.Tk?"textarea":"canvas","kbd",this.Tk||this.qb);this.Qf=9;(this.ga=C(a,"ChipSet"))&&this.Ok&&(this.Qf=Zg(this.Ok,this.Qf));this.ab&&this.il&&Ji(this)};g.tb=function(a,b,c,d){var e=this;switch(c){case "refresh":return this.oa[c]=d,d.onclick=function(){bb(e,!0)},!0}return!1};g.Ce=function(){this.qb&&this.qb.focus()}; +function Ji(a){var b=a.qb;b&&!a.lh&&(b.addEventListener("touchstart",function(b){Ki(a,b)},!1),b.addEventListener("touchmove",function(b){Ki(a,b)},!0),b.addEventListener("touchend",function(){},!1),a.lh=!0)} +function Ki(a,b){a.ph&&b.preventDefault();var c=0,d=0,e=a.qb;do isNaN(e.offsetLeft)||(c+=e.offsetLeft,d+=e.offsetTop);while(e=e.offsetParent);c=a.Uc/a.qb.offsetWidth*(b.targetTouches[0].pageX-c)/(a.Uc/3)|0;d=a.td/a.qb.offsetHeight*(b.targetTouches[0].pageY-d)/(a.td/3)|0;1!=d?d?ki(a.ab,264,!0):ki(a.ab,262,!0):1!=c&&(c?ki(a.ab,263,!0):ki(a.ab,261,!0))}g.Sb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0}; +g.Jb=function(a){return a&&this.save?this.save():!0}; +g.reset=function(){var a=!0,b=0;this.ga&&(b=ph(this.ga));var c=!1;if(this.Da)switch(this.Da){case "ega":var c=!0,d=ri[this.Qf];d&&(b=d[0]);b||(b=4);break;case "mda":b=3;break;default:b=2}this.zd!==b&&(this.zd=b,a=!0);this.za=null;this.Ac=this.Zg=new yi(this,1);this.Nb=this.Yf=new yi(this,3);c?(this.ia=new yi(this,5,null,this.Bc),Li(this)):this.ia=new yi;Mi(this);this.yd=null;this.Nc=3==b?pi:3;this.Sd=this.tc=-1;this.Rd=0;Ni(this,this.Nc);if(this.za.Ya&&a){a=this.za.Ya+this.$g;for(b=this.za.Ya;b<a;b+= +2)d=Math.floor(65536*Math.random()),4==this.zd?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),Sa(this.ma,b,c|d<<8);bb(this,!0)}};function Li(a){a.ia.og&1?(a.Ac=a.Zg,a.Nb=a.ia):(a.Ac=a.ia,a.Nb=a.Yf)}g.save=function(){var a=new H(this);a.set(0,Ei(this.Zg));a.set(1,Ei(this.Yf));a.set(2,[this.zd,this.Nc,this.yd]);a.set(3,Ei(this.ia));return a.data()}; +g.restore=function(a){var b=a[2];this.zd=b[0];this.Nc=b[1];this.yd=b[2];this.za=null;this.Ac=this.Zg=new yi(this,1,a[0]);this.Nb=this.Yf=new yi(this,3,a[1]);this.ia=new yi(this,5,a[3],this.Bc);this.ia.Xb&&Li(this);Mi(this);if(!Oi(this))return!1;Pi(this);return!0}; +g.ym=function(a,b,c){if(c)this.xa("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){t("Empty font ROM image: "+a);return}if(1==d.length){t(d[0]);return}if(8192==d.length)ei(this,d,[0,6144]);else{this.xa("Unrecognized font data length ("+d.length+")");return}}catch(e){this.xa("Font ROM data error: "+e.message);return}this.Oa()}}; +function Qi(a,b){if(1==b)return a.Qc[0]=W[0],a.Qc[1]=W[7],a.Qc;if(2==b){var c=a.za.Ve;if(a.za===a.ia){var d=a.ia.Id[0],c=d&7;d&16&&(c|=8);18!=a.ia.Id[1]&&(c|=32)}a.Qc[0]=W[c&15];c=c&32?vi:ui;for(d=0;d<c.length;d++)a.Qc[d+1]=W[c[d]];return a.Qc}if(a.Nb===a.Yf)return W;c=null!=a.ia.Id[15]?a.ia.Id:wi;for(d=0;d<a.Qc.length;d++){var e=c[d]||0;a.Qc[d]=[(e&4?170:0)|(e&32?85:0),(e&2?170:0)|(e&16?85:0),(e&1?170:0)|(e&8?85:0),255]}return a.Qc}function ei(a,b,c,d){a.Nf=b;a.Qg=c;a.Wd=d} +function Mi(a){var b=!1;if(window&&a.Nf){var c=a.Wd?0:2048,d=a.Wd?a.Wd:9;Ri(a,1,a.Qg[0],c,d,14,a.Nf,si,ti)&&(b=!0);c=Qi(a);d=a.Wd?a.Wd:8;Ri(a,3,a.Qg[1],0,d,8,a.Nf,c)&&(b=!0);a.Wd&&Ri(a,5,a.Qg[0],0,a.Wd,14,a.Nf,c)&&(b=!0)}return b}function Ri(a,b,c,d,e,f,l,k,m){var n=!1;Si(a,b,c,d,e,f,l,k,m)&&(n=!0);a.dl&&Si(a,b<<1,c,d,e,f,l,k,m)&&(n=!0);return n} +function Si(a,b,c,d,e,f,l,k,m){var n=!1,q=b&1?0:1,s=a.jd[b];s||(s={Vb:e<<q,Wb:f<<q,ie:Array(k.length),Si:k.slice(),Ie:m,Og:Array(k.length)});for(m=0;m<k.length;m++){var r=k[m],x=s.ie[m]?s.Si[m]:[];if(r[0]!==x[0]||r[1]!==x[1]||r[2]!==x[2]){var n=s,x=m,L=q,V=c,ba=d,ca=e,eb=f,kc=l,hd=[0,0,0,0],lc=window.document.createElement("canvas");lc.width=n.Vb<<4;lc.height=n.Wb<<4;for(var Mh=lc.getContext("2d"),sa=void 0,qb=void 0,Qa=void 0,mc=8>eb||!ba?eb:8,id=Mh.createImageData(n.Vb,n.Wb),sa=0;256>sa;sa++){for(Qa= +0;Qa<eb;Qa++)for(var Oj=n.Ie&&x&1&&Qa>=eb-2,Pj=kc[Qa<mc?V+sa*mc+Qa:ba+sa*mc+Qa-mc],jd=0;jd<=L;jd++)for(qb=0;qb<ca;qb++){var Nh=qb<<L,Oh=(Qa<<L)+jd,Ph=Oj||Pj&128>>(8<=qb&&176<=sa&&223>=sa?7:qb)?r:hd;Ti(id,Nh,Oh,Ph);L&&Ti(id,Nh+1,Oh,Ph)}Mh.putImageData(id,(sa&15)*n.Vb,(sa>>4)*n.Wb)}n.ie[x]="#"+aa(r[0])+aa(r[1])+aa(r[2]);n.Si[x]=r;n.Og[x]=lc;n=!0}}a.jd[b]=s;return n}function Ui(a){0<a.Rd||0<=a.tc?0>a.Sd&&(a.Sd=0):a.Sd=-1} +function Pi(a){if(a.Ab){for(var b=10;15>=b;b++)if(null==a.za.Ub[b])return;var c=a.za.Ub[10],b=c&31,d=a.za.Ub[11]&31,e=a.za.Ub[9]&31,f=!1;a.za===a.ia&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Vi(a);else{c=a.za.Ub[15]+((a.za.Ub[14]&63)<<8);a.tc!=c&&(Vi(a),a.tc=c);d=d-b+1;if(a.Vk!=b||a.gj!=d)a.Vk=b,a.gj=d;a.sd=e+1;Ui(a)}}} +function Vi(a){if(0<=a.tc){if(void 0!==a.Lb){var b=a.Lb[a.tc];if(b&131072){var b=b&-131073,c=a.tc%a.lb,d=Math.floor(a.tc/a.lb);a.Ab&&a.jd[a.Ab]&&(a.pe&&Wi(a,c,d,b,a.pe),Wi(a,c,d,b));a.Lb[a.tc]=b}}a.tc=-1}} +function Xi(a){var b;a=a.za;var c=a.je[5];if(null!=c){b=2;var d=512,e=a.je[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.Mc=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}g.Fd=function(a){var b=this.za;null!=a&&b&&a!=b.Dh&&(b.Jg(a),this.ma.Jg(b.Ya,b.cc,b.Ne))}; +function Oi(a,b){var c,d=a.yd,e=a.za;if(e)if(1==e.jg)d=pi;else if(5==e.jg){var d=null,f=e.Bc>>2,l=32768<f?32768:f,k=e.je[6];if(null!=k){switch(k&12){case 0:e.Ya=655360;e.cc=f;d=255;break;case 4:e.Ya=655360;e.cc=f;d=3==a.zd?15:16;break;case 8:e.Ya=720896;e.cc=l;d=pi;break;case 12:e.Ya=753664,e.cc=l,d=3==a.zd?2:3}c=e.Mf[1]&8;f=e.Ub[6]|(e.Ub[7]&1)<<8;255!=d&&(k&1?753664==e.Ya?d=c?7-d:6:350>f&&(d=c?13:14):c&&(d-=2));c=Xi(a)}}else e.hc&8&&(e.hc&2?(d=e.hc&16?6:5,e.hc&4||(d-=1)):(d=e.hc&1?3:1,e.hc&4&&(d-= +1)));else a.yd=null,null==d&&(d=a.Nc);if(!Ni(a,d,b))return!1;a.Fd(c);return!0} +function Ni(a,b,c){if(null!=b&&(b!=a.yd||c)){a.$k=0;a.yd=b;b=a.za||(b==pi?a.Ac:a.Nb);if(b!=a.za||b.Ya!=a.Ya||b.cc!=a.cc){Vi(a);if(a.Ya){if(!Na(a.ma,a.Ya,a.cc))return!1;a.za&&(a.za.Xb=!1)}a.za=b;b.Xb=!0;a.Ya=b.Ya;a.cc=b.cc;if(!La(a.ma,b.Ya,b.cc,!1,b===a.ia?b:null))return!1}a.Ab=0;a.lb=a.ug;a.$b=a.Kh;a.Fh=U[pi][2];b=0;var d=U[a.yd];d&&(a.lb=d[0],a.$b=d[1],a.Fh=d[2],b=d[3]||0,a.Ab=d[4],4==a.zd&&a.za===a.ia&&3==a.Ab&&(7==a.ia.Ub[9]?a.$b=43:a.Ab=5));a.zj=a.lb*a.$b;a.rg=a.zj/a.Fh;a.$g=(a.rg<<1)+b;a.ej= +b?a.$g+b>>1:0;13<=a.yd&&(a.rg<<=1);a.jd.length&&(a.Vc=Math.floor(a.Uc/a.lb),a.Wc=Math.floor(a.td/a.$b),a.Ab?(b=a.jd[a.Ab],d=a.jd[a.Ab<<1],a.gl&&80==a.lb?d&&a.Vc>=3*d.Vb>>2&&(a.Ab<<=1,b=d):(d&&a.Vc>=d.Vb&&(a.Ab<<=1,b=d),b&&(a.Vc=b.Vb,a.Wc=b.Wb)),a.Ye=a.Ze=0,b&&(a.Ye=a.lb*b.Vb,a.Ze=a.$b*b.Wb)):(a.Vc=a.Wc=1,a.Ye=a.lb,a.Ze=a.$b),a.lg=a.Cc.createImageData(a.Ye,a.Ze),a.oe=window.document.createElement("canvas"),a.oe.width=a.Ye,a.oe.height=a.Ze,a.pe=a.oe.getContext("2d"),a.Oi=a.Pi=0,a.dh=a.Uc,a.eh=a.td, +b=a.Uc-a.lb*a.Vc,d=a.td-a.$b*a.Wc,0<b&&(a.Oi=b>>1,a.dh-=b),0<d&&(a.Pi=d>>1,a.eh-=d),b||d)&&(a.Cc.fillStyle=a.qb.style.backgroundColor,a.Cc.fillRect(0,0,a.Uc,a.td));!1!==c?bb(a,!0):Yi(a,!0)}return!0}function Ti(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Yi(a,b){var c;if(b){if(c=a.rg,void 0===a.Lb||a.Lb.length!=c)a.Lb=Array(c)}else{if(void 0===a.Lb)return;c=a.Lb.length}for(var d=0;d<c;d++)a.Lb[d]=-1;a.Rd=-1} +function Wi(a,b,c,d,e){var f=d&255,l=d>>8;d=l&15;var k=a.jd[a.Ab];k.Ie&&(d=k.Ie[d]);var m=l>>4&15;k.Ie&&(m=k.Ie[m]);e?(b*=k.Vb,c*=k.Wb,e.fillStyle=k.ie[m],e.fillRect(b,c,k.Vb,k.Wb)):(b=b*a.Vc+a.Oi,c=c*a.Wc+a.Pi,a.Cc.fillStyle=k.ie[m],a.Cc.fillRect(b,c,a.Vc,a.Wc));l&256&&(m=(f&15)*k.Vb,f=(f>>4)*k.Wb,e?e.drawImage(k.Og[d],m,f,k.Vb,k.Wb,b,c,k.Vb,k.Wb):a.Cc.drawImage(k.Og[d],m,f,k.Vb,k.Wb,b,c,a.Vc,a.Wc));l&512&&(f=a.Vk,l=a.gj,e?(a.sd&&a.sd!==k.Wb&&(f=Math.floor(f*k.Wb/a.sd),l=Math.floor(l*k.Wb/a.sd)), +e.fillStyle=k.ie[d],e.fillRect(b,c+f,k.Vb,l)):(a.sd&&a.sd!==a.Wc&&(f=Math.floor(f*a.Wc/a.sd),l=Math.floor(l*a.Wc/a.sd)),a.Cc.fillStyle=k.ie[d],a.Cc.fillRect(b,c+f,a.Vc,l)))} +function bb(a,b){if(a.zb){var c=!1;a.za&&(a.za===a.ia?a.ia.Zd&32&&(c=!0):a.za.hc&8&&(c=!0));if(c||b){if(b)Yi(a,!0);else if(void 0===a.Lb)return;var d=!1;!(b||++a.$k&15)&&0<=a.Sd&&(a.Sd++,d=!0);var e=0,f=a.zj,c=a.za.Ya,l=c+a.za.cc,k=(a.za.Ub[12]<<8)+a.za.Ub[13];a.Ab&&(k<<=1);var c=c+k,m=a.$g;c+m>l&&(m=l-c,0>m&&(m=0));l=c+m;if(k=!b){for(var k=a.ma,n=!0,q=c>>k.Ib;0<m&&q<k.ya.length;)k.ya[q].Qa&&(k.ya[q].Qa=n=!1,k.ya[q].jj=!0),m-=k.nc,q++;k=n}if(k){if(!d)return;if(!a.Rd){if(0>a.tc)return;e=a.tc;f=e+1}}if(a.Ab){if(a.jd[a.Ab]){d= +0;k=a.Rd=0;m=1048575;a.za.hc&32&&(k=32768,m&=~k,a.Sd&2||(m&=-65537));for(c+=e<<1;c<l&&e<f;)n=Pa(a.ma,c),n|=65536,n&k&&(a.Rd++,n&=m),e==a.tc&&(n|=a.Sd&1?131072:0),q=a.Lb[e],q!=n&&(Wi(a,e%a.lb,Math.floor(e/a.lb),n,a.pe),a.Lb[e]=n,d++),c+=2,e++;d&&a.pe&&a.Cc.drawImage(a.oe,0,0,a.Ye,a.Ze,a.Oi,a.Pi,a.dh,a.eh);Ui(a)}}else if(a.ej){for(var f=l,s,r,e=c,l=a.Rd=0,d=a.Fh,k=16==d?65536:196608,m=16==d?1:2,n=Qi(a,m),x=q=0,L=a.lb,V=0,ba=a.$b,ca=0;e<f;){s=Pa(a.ma,e);r=a.Lb[l];if(r===s)q+=d;else{a.Lb[l]=s;s=s>>8| +(s&255)<<8;r=k;var eb=16;q<L&&(L=q);for(var kc=0;kc<d;kc++){var hd=(s&(r>>=m))>>(eb-=m);Ti(a.lg,q++,x,n[hd])}q>V&&(V=q);x<ba&&(ba=x);x>=ca&&(ca=x+1)}e+=2;l++;if(q>=a.lb){q=0;x+=2;if(x>a.$b)break;x==a.$b&&(x=1,e=c+a.ej)}}L<a.lb&&(a.pe.putImageData(a.lg,0,0,L,ba,V-L,ca-ba),a.Cc.drawImage(a.oe,0,0,a.lb,a.$b,0,0,a.Uc,a.td))}else{f=l;e=a.Rd=0;l=Qi(a);d=a.za.Ld;m=k=0;n=a.lb;q=0;x=a.$b;for(L=0;c<f;){V=c++-a.Ya;V=d[V];ba=a.Lb[e];if(ba===V)k+=8;else{a.Lb[e]=V;k<n&&(n=k);for(ba=0;8>ba;ba++)ca=V&2155905152, +0>ca&&(ca=-ca),ca=X[ca]||0,Ti(a.lg,k++,m,l[ca]),V<<=1;k>q&&(q=k);m<x&&(x=m);m>=L&&(L=m+1)}e++;if(k>=a.lb&&(k=0,++m>a.$b))break}n<a.lb&&(a.pe.putImageData(a.lg,0,0,n,x,q-n,L-x),a.Cc.drawImage(a.oe,0,0,a.lb,a.$b,0,0,a.Uc,a.td))}}}}g.Ul=function(){return this.Ac.sc};g.dn=function(a,b){var c=this.Ac;c.ig=c.sc;c.sc=b&31};g.Tl=function(){return Zi(this.Ac)};g.cn=function(a,b){$i(this,this.Ac,b)};g.Vl=function(){return this.Ac.hc};g.en=function(a,b){this.Ac.hc=b;Oi(this,!1)}; +g.Wl=function(){return aj(this,this.Ac)};g.Fk=function(a,b){this.ia.uh=this.ia.uh&-4|b&3};g.vj=function(){var a=this.ia.ud?this.ia.Id[this.ia.Zd&31]:this.ia.Zd;this.ia.ud=!this.ia.ud;return a};g.Ek=function(a,b){var c=this.ia.Zd&32;if(this.ia.ud){var d=this.ia.Zd&31;if(16<=d||!c)this.ia.Id[d]=b;this.ia.ud=!1}else this.ia.Zd=b,this.ia.ud=!0,b&32&&!c&&Mi(this)&&bb(this,!0)};g.fm=function(){var a=3-((this.ia.og&12)>>2),a=this.ia.Li&-17|(this.Qf&1<<a)<<4-a;return this.ia.Li=a}; +g.gn=function(a,b){this.ia.og=b;Li(this)};g.em=function(){return this.ia.ve};g.on=function(a,b){this.ia.ve=b};g.dm=function(){return this.ia.Mf[this.ia.ve]};g.nn=function(a,b){this.ia.Mf[this.ia.ve]=b;2==this.ia.ve&&(this.ia.Ta=xi[b&15])};g.Ml=function(){return this.ia.xh};g.Ym=function(a,b){this.ia.xh=b};g.Nl=function(){return this.ia.yh};g.Zm=function(a,b){this.ia.yh=b};g.Ll=function(){return this.ia.ue};g.Xm=function(a,b){this.ia.ue=b};g.Kl=function(){return this.ia.je[this.ia.ue]}; +g.Wm=function(a,b){this.ia.je[this.ia.ue]=b;switch(this.ia.ue){case 0:this.ia.xg=xi[b&15];this.ia.be=this.ia.xg&~this.ia.Bd;break;case 1:this.ia.Bd=~xi[b&15];this.ia.be=this.ia.xg&~this.ia.Bd;break;case 2:this.ia.Gh=xi[b&15]&2155905152;break;case 3:case 5:this.Fd(Xi(this));break;case 4:this.ia.wi=(b&3)<<3;break;case 6:Oi(this,!1);break;case 7:this.ia.Hh=xi[b&15^15]&2155905152;break;case 8:this.ia.Wa=b|b<<8|b<<16|b<<24}};g.Cl=function(){return this.Nb.sc}; +g.Pm=function(a,b){var c=this.Nb;c.ig=c.sc;c.sc=b&31};g.Bl=function(){return Zi(this.Nb)};g.Om=function(a,b){$i(this,this.Nb,b)};g.Dl=function(){return this.Nb.hc};g.Qm=function(a,b){this.Nb.hc=b;Oi(this,!1)};g.Al=function(){return this.Nb.Ve};g.Nm=function(a,b){this.Nb.Ve!==b&&(this.Nb.Ve=b,Yi(this,!1))};g.El=function(){return aj(this,this.Nb)};function Zi(a){var b;a.sc<a.Eh&&(b=a.Ub[a.sc]);return b}function $i(a,b,c){b.sc<b.Eh&&(b.Ub[b.sc]=c,9==b.sc&&8!=b.ig&&Oi(a,!0),Pi(a))} +function aj(a,b){var c=0,d=lb(a.ja),e=d-b.Nh;0>e&&(e=0);e%b.Ih>b.sm&&(c|=1);e%=b.Cj;e>b.um&&(c|=8);b.Nh=d-e;b===a.ia?(c|=b.Ff&48^48,b.ud=!1):c=(b.Ff^=9)|240;return b.Ff=c} +var Fi={948:T.prototype.Ul,949:T.prototype.Tl,952:T.prototype.Vl,954:T.prototype.Wl,980:T.prototype.Cl,981:T.prototype.Bl,984:T.prototype.Dl,985:T.prototype.Al,986:T.prototype.El},Gi={948:T.prototype.dn,949:T.prototype.cn,952:T.prototype.en,980:T.prototype.Pm,981:T.prototype.Om,984:T.prototype.Qm,985:T.prototype.Nm},Hi={960:T.prototype.vj,961:T.prototype.vj,962:T.prototype.fm,964:T.prototype.em,965:T.prototype.dm,970:T.prototype.Nl,972:T.prototype.Ml,974:T.prototype.Ll,975:T.prototype.Kl},Ii={954:T.prototype.Fk, +960:T.prototype.Ek,961:T.prototype.Ek,962:T.prototype.gn,964:T.prototype.on,965:T.prototype.nn,970:T.prototype.Zm,972:T.prototype.Ym,974:T.prototype.Xm,975:T.prototype.Wm,986:T.prototype.Fk}; u(function(){for(var a=B(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=z(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing <canvas> support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new T(d,e,f);A(d,c)}}); -function Z(a){this.oj=a.adapter;switch(this.oj){case 1:this.yi=1016;this.mf=4;break;case 2:this.yi=760;this.mf=3;break;default:t("Unrecognized serial adapter #"+this.oj);return}this.od=null;v.call(this,"SerialPort",a,Z);var b=a.binding,c;a=gj;b&&(void 0===c&&(c="Panel"),(c=Fa(c,this.id))&&(b=c.oa[b])&&this.sb(null,null,a,b))}y(v,Z);var gj="buffer";g=Z.prototype;g.Ri=function(a,b){return a==this.vh?(this.sj=b,this):null}; -g.sb=function(a,b,c,d){var e=this;switch(c){case gj:return this.oa[c]=this.od=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),hj(e,[b]))},d.onkeypress=function(a){a=a||window.event;hj(e,[a.which||a.keyCode])},!0}return!1};g.dc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ga=d;this.ga=D(a,"ChipSet");Za(b,this,ij,this.yi);ab(b,this,jj,this.yi);this.Ma()}; -g.Rb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};g.Ib=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.ud()};g.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.Sg;c[b++]=this.Wi;c[b++]=this.fe;c[b++]=this.Nf;c[b++]=this.jd;c[b++]=this.Md;c[b++]=this.Fc;c[b++]=this.kc;c[b++]=this.Ui;c[b]=this.He;a.set(0,c);return a.data()};g.restore=function(a){return this.ud(a[0])}; -g.ud=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.Sg=a[b++];this.Wi=a[b++];this.fe=a[b++];this.Nf=a[b++];this.jd=a[b++];this.Md=a[b++];this.Fc=a[b++];this.kc=a[b++];this.Ui=a[b++];this.He=a[b];return!0};function hj(a,b){a.He=a.He.concat(b);kj(a)}function kj(a){0<a.He.length&&!(a.kc&1)&&(a.Sg=a.He.shift(),a.kc|=1);var b=-1;a.kc&1&&a.Nf&1&&(b=4);0<=b?(a.jd&=-8,a.jd|=b,a.ga&&a.mf&&R(a.ga,a.mf)):(a.jd|=1,a.ga&&a.mf&&Vh(a.ga,a.mf))} -g.Zl=function(){var a=this.Md&128?this.fe&255:this.Sg;this.kc&=-2;kj(this);return a};g.Kl=function(){return this.Md&128?this.fe>>8:this.Nf};g.Ll=function(){return this.jd};g.Ml=function(){return this.Md};g.Ol=function(){return this.Fc};g.Nl=function(){return this.kc};g.Ul=function(){return this.Ui}; -g.ln=function(a,b){if(this.Md&128)this.fe=this.fe&-256|b;else{this.Wi=b;this.kc&=-97;var c;this.od?(13!=b&&(8==b?this.od.value=this.od.value.slice(0,-1):(this.od.value+=String.fromCharCode(b),this.od.scrollTop=this.od.scrollHeight)),c=!0):c=!1;c&&(this.kc|=96)}};g.Wm=function(a,b){this.Md&128?this.fe=this.fe&255|b<<8:this.Nf=b};g.Xm=function(a,b){this.Md=b}; -g.Ym=function(a,b){var c=this.Fc;this.Fc=b;if(this.sj&&(c^b)&3){var c=this.sj,d=this.Fc,e=3==(d&3);if(e){if(!c.Wb){var f=!1;c.Fc&2||(c.reset(),f=!0);c.Fc&1||(f=!0);f&&hj(c.Te,[77]);lj(c,c.pb);c.Wb=e}}else c.Wb&&(mj(c.pb),c.Wb=e);c.Fc=d}};var ij={0:Z.prototype.Zl,1:Z.prototype.Kl,2:Z.prototype.Ll,3:Z.prototype.Ml,4:Z.prototype.Ol,5:Z.prototype.Nl,6:Z.prototype.Ul},jj={0:Z.prototype.ln,1:Z.prototype.Wm,3:Z.prototype.Xm,4:Z.prototype.Ym}; -u(function(){for(var a=B(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Z(d);A(d,c)}});function nj(a){v.call(this,"Mouse",a,nj);if(this.uh=a.serial)this.Bi="SerialPort";this.Wb=!1;this.Ma()}y(v,nj);g=nj.prototype;g.dc=function(a,b,c,d){this.Ea=a;this.ma=b;this.ja=c;this.Ga=d}; -g.Rb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Bi&&!this.Te){for(var c=null;(c=D(this.Ea,this.Bi,c))&&(!c.Ri||!(this.Te=c.Ri(this.uh,this))););if(this.Te){if(c=D(this.Ea,"Video"))this.pb=c.pb}else t(this.id+": "+this.Bi+" "+this.uh+" unavailable")}this.Wb?lj(this,this.pb):mj(this.pb)}return!0};g.Ib=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.ud()};g.save=function(){var a=new H(this);a.set(0,this.Fi());return a.data()}; -g.restore=function(a){return this.ud(a[0])};g.ud=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.Wb=a[b++];this.Cf=a[b++];this.Df=a[b++];this.Ce=a[b++];this.De=a[b++];this.Zf=a[b++];this.$f=a[b++];this.Fc=a[b];return!0};g.Fi=function(){var a=0,b=[];b[a++]=this.Wb;b[a++]=this.Cf;b[a++]=this.Df;b[a++]=this.Ce;b[a++]=this.De;b[a++]=this.Zf;b[a++]=this.$f;b[a]=this.Fc;return b}; -function lj(a,b){b&&(a.gh||(b.addEventListener("mousemove",function(b){if(a.Wb&&a.ja&&a.ja.pc){if(0>a.Cf||0>a.Df)a.Cf=b.clientX,a.Df=b.clientY;a.Ce=b.clientX-a.Cf;a.De=b.clientY-a.Df;(a.Ce||a.De)&&oj(a);a.Cf=b.clientX;a.Df=b.clientY}},!1),b.addEventListener("mousedown",function(b){pj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){pj(a,b.button,!1)},!1),a.gh=!0),b.style.cursor="none")}function mj(a){a&&(a.style.cursor="auto")} -function pj(a,b,c){if(a.Wb&&a.ja&&a.ja.pc)switch(b){case 0:a.Zf!=c&&(a.Zf=c,oj(a));break;case 2:a.$f!=c&&(a.$f=c,oj(a))}}function oj(a){hj(a.Te,[64|(a.Zf?32:0)|(a.$f?16:0)|(a.De&192)>>4|(a.Ce&192)>>6,a.Ce&63,a.De&63]);a.Ce=a.De=0}u(function(){for(var a=B(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new nj(d);A(d,c)}}); -function qj(a,b,c){v.call(this,"Disk",{id:a.gg+".disk"+rj++},qj);this.ea=a;this.Ea=a.Ea;this.Ga=a.Ga;this.La=b;this.mode=c;this.dd=b.name;this.fc=b.fc;this.gc=b.gc;this.Lc=b.Lc;this.xb=b.xb;this.pe=b.pe;this.mh=this.Wc=!1;this.create();this.Hd=[];this.Ff=[];this.fd=null;this.uj=0;this.oh=!1;this.Ma()}var rj=0;y(v,qj);g=qj.prototype;g.dc=function(a,b,c,d){this.Ga=d};g.Rb=function(a,b){b||this.mh&&!this.Wc&&this.load(this.dd,this.ye);return!0}; -g.Ib=function(a,b){if(this.Wc){var c,d=0;if(this.oh&&!ma("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=sj(this,!1);)if(d=c[0]){C(this,'Unable to save "'+this.dd+'" (error '+d+")");break}b&&this.Wc&&(c="action=close&volume="+this.ye,c+="&machine="+this.ea.re(),c+="&user="+this.ea.td(),p(la()+"/api/v1/disk?"+c,!0),this.Wc=!1);d||C(this,this.dd+" saved")}return!0}; -g.create=function(){this.Eb=[];if("preload"!=this.mode){for(var a=Array(this.fc),b=0;b<a.length;b++){for(var c=Array(this.gc),d=0;d<c.length;d++){for(var e=Array(this.Lc),f=1;f<=e.length;f++)e[f-1]=tj(null,b,d,f,this.xb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.Eb=a}this.Xf=0}; -g.load=function(a,b,c){var d=b;this.dd=a;this.ye=b;this.mj=c;0>b.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.fc+":"+this.gc+":"+this.Lc+":"+this.xb,a+="&machine="+this.ea.re(),a+="&user="+this.ea.td(),d=la()+"/api/v1/disk?"+a,this.mh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"): --1!==b.indexOf("/",b.length-1)&&(c="dir"),d=la()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.pe?"":d)+"&format=json"));p(d,!0,null,this,this.rm,b)}; -g.rm=function(a,b,c,d){var e=null;this.qe=!1;var f=0>c&&this.Ea&&!this.Ea.yb;if(this.mh)c?C(this,'Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Wc=!0,e=this);else if(c)C(this,'Unable to load disk "'+this.dd+'" (error '+c+")",f);else try{if(0<ea(a,!0).toLowerCase().indexOf("-readonly"))this.qe=!0;else{var l=b.indexOf("\n");0<l&&1024>l&&0<b.substring(0,l).indexOf("write-protected")&&(this.qe=!0)}var k;k="<"==b.substr(0,1)?["Missing disk image: "+this.dd]:0>b.indexOf("0x")&&'["'!= -b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(k.length)if(1==k.length)this.error(k[0]);else{for(b=a=0;b<k.length;b++)for(c=0;c<k[b].length;c++)for(d=0;d<k[b][c].length;d++){var m=k[b][c][d],n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var s=m.data;if(void 0===s){var r=m.bytes;if(void 0!==r&&r.length){for(var f=n<<2,x=r.length;x<f;x++)r[x]=q;this.fill(m,r,0)}else s=[],q=m.pattern=q|q<<8|q<<16|q<< -24,m.data=s;delete m.bytes}tj(m,b,c);for(f=0;f<s.length;f++)a=a+s[f]&4294967295}this.Eb=k;this.Xf=a;e=this}else this.error("Empty disk image: "+this.dd)}catch(L){this.error("Disk image error: "+L.message)}this.mj&&this.mj.call(this.ea,this.La,e,this.dd,this.ye)};function tj(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.hl=b;a.jl=c;a.Dc=a.mc=0;a.Na=!1;return a} -g.sm=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],l=d[2],k=d[3];a=d[4];b=JSON.parse(b);for(var m=0;k--;){var n=this.seek(e,f,l,!0);if(!n)break;this.fill(n,b,m);m+=n.length;l++}}(d=d[5])&&d(c,a)};function uj(a,b,c,d,e,f){if(a.Wc){var l;l="action=read&volume="+a.ye;l+="&chs="+a.fc+":"+a.gc+":"+a.Lc+":"+a.xb;l=l+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ea.re());l+="&user="+a.ea.td();p(la()+"/api/v1/disk?"+l,!0,null,a,a.sm,[b,c,d,e,!0,f])}else f&&f(-1,!1)} -function vj(a,b,c){b.Na=!0;var d=a.Hd.indexOf(b);0<=d&&(a.Hd.splice(d,1),a.Ff.splice(d,1));a.Hd.push(b);a.Ff.push(ia());c&&wj(a)}function wj(a){if(a.Hd.length){var b=a.Ff[0]+2E3;a.fd&&a.uj<b&&(clearTimeout(a.fd),a.fd=null);if(!a.fd){var c=ia(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.fd=setTimeout(function(){sj(a,!0)},b);a.uj=c+b}}else a.fd&&(clearTimeout(a.fd),a.fd=null)} -function sj(a,b){b&&(a.fd=null);var c=a.Hd[0];if(c){for(var d=c.hl,e=c.jl,c=c.sector,f=0,l=[],k=c-1;k<a.Eb[d][e].length;k++){var m=a.Eb[d][e][k];if(!m.Na)break;var n=a.Hd.indexOf(m);a.Hd.splice(n,1);a.Ff.splice(n,1);l=l.concat(xj(m));m.Na=!1;f++}a.Wc?(k={},a.oh=!0,k.action="write",k.volume=a.ye,k.chs=a.fc+":"+a.gc+":"+a.Lc+":"+a.xb,k.addr=d+":"+e+":"+c+":"+f,k.machine=a.ea.re(),k.user=a.ea.td(),k.data=JSON.stringify(l),d=p(la()+"/api/v1/disk",b,k,a,a.xm,[d,e,c,f,b])):d=!1;return b||d}return!1} -g.xm=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.oh=!1;if(0<=a&&a<this.Eb.length&&0<=b&&b<this.Eb[a].length)for(e-=1;0<f--&&0<=e&&e<this.Eb[a][b].length;e++){var l=this.Eb[a][b][e];c?vj(this,l,!1):l.Na||(l.Dc=l.mc=0)}d&&wj(this)}; -g.seek=function(a,b,c,d,e){var f=null,l=this.La,k=this.Eb[a];if(k){var m=k[b];if(!m&&l.Me&&b<l.gc)for(m=k[b]=Array(l.ld),k=0;k<m.length;k++)m[k]=tj(null,a,b,k+1,l.Va,0);if(m){for(k=0;k<m.length;k++)if(m[k].sector==c){f=m[k];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++k<m.length;)null===m[k].pattern&&d++;uj(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&l.Me&&9==l.Pa&&(f=m[k]=tj(null,a,b,l.Pa,l.Va,0))}}e&&e(f,!1);return f}; -g.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function xj(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var l=f<e.length?e[f]:a;c[d++]=l&255;c[d++]=l>>8&255;c[d++]=l>>16&255;c[d++]=l>>24&255}return c}function yj(a,b){var c=-1;if(b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c} -g.write=function(a,b,c){if(this.qe)return!1;if(b<a.length){if(c!=yj(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var l=d.length;l<=f;l++)d[l]=e;a.mc?f<a.Dc?(a.mc+=a.Dc-f,a.Dc=f):f>=a.Dc+a.mc&&(a.mc+=f-(a.Dc+a.mc)+1):(a.Dc=f,a.mc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Wc&&vj(this,a,!0)}return!0}return null}; -g.save=function(){var a=0,b=[];b[a++]=[this.ye,this.Xf];if(!this.Wc&&!this.qe)for(var c=this.Eb,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var l=c[d][e][f];if(l.mc){for(var k=[],m=0,n=l.Dc,q=l.Dc+l.mc;n<q;)k[m++]=l.data[n++];b[a++]=[d,e,f,l.Dc,k]}}return b}; -g.restore=function(a){var b=0,c="unsupported restore format";if(this.Eb.length&&a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&e[1]!=this.Xf&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.Xf+")",b=-1);for(;d<a.length&&0<=b;){var f=0,l=a[d++],k=l[f++],m=l[f++],n=l[f++];if(k>=this.Eb.length||m>=this.Eb[k].length||n>=this.Eb[k][m].length){c="sector "+k+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.qe){c="unable to modify write-protected disk";b=-1;break}e= -l[f++];f=l[f++];l=e+f.length;k=this.Eb[k][m][n];for(m=k.data.length;m<e;)k.data[m++]=k.pattern;m=0;k.Dc=e;for(k.mc=f.length;e<l;)k.data[e++]=f[m++];b++}}0>b&&C(this,"unable to restore disk '"+this.dd+": "+c);return b}; -function zj(a){v.call(this,"FDC",a,zj);this.dmaRead=this.$g;this.dmaWrite=this.ah;this.dmaFormat=this.Xk;this.be=null;if(a.autoMount&&(this.be=a.autoMount,"string"==typeof this.be))try{this.be=eval("("+a.autoMount+")")}catch(b){this.error("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.be=null}this.ac=[];this.Xc();this.Le()||this.Ma()}y(v,zj); -var Aj={3:{nd:3,Sd:0,name:"SPECIFY"},4:{nd:2,Sd:1,name:"DRIVE_STATUS"},5:{nd:9,Sd:7,name:"WRITE_DATA"},6:{nd:9,Sd:7,name:"READ_DATA"},7:{nd:2,Sd:0,name:"RECALIBRATE"},8:{nd:1,Sd:2,name:"INT_STATUS"},13:{nd:6,Sd:7,name:"FORMAT"},15:{nd:3,Sd:0,name:"SEEK"}};g=zj.prototype; -g.sb=function(a,b,c,d){switch(c){case "listDisks":return this.oa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.oa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){a.error("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d='<a href="'+m+'" target="_blank">'+d+"</a>"); -c.innerHTML=d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.oa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||Bj(a,c)}}(this,d),!0;case "loadDrive":return this.oa[c]=d,d.onclick=function(a){return function(){var b,c=a.oa.listDisks,d=a.oa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.sa.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=ea(d); -Ga(a,"Attempting to load "+d+' as "'+c+'"')}for(;Cj(a,b,c,d,!1)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var m=a,n=d,q=void 0,q=0;q<m.ac.length;q++)if(m.ac[q][1]==n){m.ac.splice(q,1);break}Dj(a,b,!1,!0)}}else Dj(a,b);else C(a,"Nothing to load")}}(this),!0}return!1};g.dc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ga=d;this.Ea=a;this.ga=D(a,"ChipSet");Za(b,this,Ej);ab(b,this,Fj)}; -g.Rb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ea.nh){this.ac=[];for(var c=0;c<this.sa.length;c++)Dj(this,c,!0);this.Le(!0)}}else if(!this.restore(a))return!1;if(this.ga){this.rg=Ah(this.ga);for(c=0;c<this.rg;c++){var d=this.sa[c];d.Xi=wh(this.ga,c);2==d.Xi&&(d.fc=80)}if(d=this.oa.listDrives){for(;d.firstChild;)d.removeChild(d.firstChild);d.innerHTML="";for(c=0;c<this.rg;c++){var e=window.document.createElement("option");e.value=c;e.innerHTML=String.fromCharCode(65+c)+":";d.appendChild(e)}0< -this.rg&&(d.value="0",Bj(this,0))}}}return!0};g.Ib=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.Xc()};g.save=function(){var a=new H(this);a.set(0,this.Ci());return a.data()};g.restore=function(a){return this.Xc(a[0])}; -g.Xc=function(a){var b=0,c=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.hb=a[b++];b++;this.ta=a[b++];this.Jb=a[b++];this.eb=a[b++];this.Sa=a[b++];this.xe=a[b++];var d=a[b++],e=a[b++];null!=e&&(this.ac=e);void 0===this.sa&&(this.rg=0,this.sa=Array(4));for(e=0;e<this.sa.length;e++)void 0===this.sa[e]&&(this.sa[e]={}),this.wh(this.sa[e],e,d[e])||(c=!1);this.Cd=a[b++]||0;this.Ek=a[b]||0;return c}; -g.Ci=function(){var a=0,b=[];b[a++]=this.hb;b[a++]=0;b[a++]=this.ta;b[a++]=this.Jb;b[a++]=this.eb;b[a++]=this.Sa;b[a++]=this.xe;b[a++]=this.Ei();for(var c=a++,d=0;d<this.sa.length;d++){var e=this.sa[d];e.ra&&Gj(this,e.de,e.ra)}b[c]=this.ac;b[a++]=this.Cd;b[a]=this.Ek;return b}; -g.wh=function(a,b,c){var d=0,e=!0;a.hb=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.fc||40,c[3],9,512,c[1]]);a.Oa=c[d++];a.name=c[d][0];a.fc=c[d][1];a.gc=c[d][2];a.Lc=c[d][3];a.xb=c[d][4];a.pe=c[d][5];d++;a.Xi=1;a.bb=c[d++];a.hd=c[d++];a.nb=c[d++];a.hd=100<=a.hd?a.hd-100:a.hd-a.nb;a.Pa=c[d++];a.ld=c[d++];a.Va=c[d++];a.Qa=c[d++];a.Ka=null;a.ra||(a.de="");var f=c[d++];f===Hj?(f=c[d++],c=c[d],Cj(this,b,f,c,!0)?a.ra&&Ij(this,f,c,a.ra):this.Ma(!1)):void 0!==f&&a.ra&& -0>a.ra.restore(f)&&(e=!1);e&&a.ra&&void 0!==a.Qa&&(a.Ka=a.ra.seek(a.nb,a.bb,a.Pa));return e};g.Ei=function(){for(var a=0,b=[],c=0;c<this.sa.length;c++)b[a++]=this.Di(this.sa[c]);return b};g.Di=function(a){var b=0,c=[];c[b++]=a.Oa;c[b++]=[a.name,a.fc,a.gc,a.Lc,a.xb,a.pe];c[b++]=a.bb;c[b++]=a.hd+100;c[b++]=a.nb;c[b++]=a.Pa;c[b++]=a.ld;c[b++]=a.Va;c[b++]=a.Qa;c[b++]=Hj;c[b++]=a.Jk;c[b]=a.de;return c}; -g.Le=function(a){a||(this.Od=0);if(this.be)for(var b in this.be){var c=this.be[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.sa.length){!Cj(this,d,c.name,c.path,!0)&&a&&this.Ma(!1);continue}}C(this,"Unrecognized auto-mount specification for drive "+b)}return!!this.Od};function Cj(a,b,c,d,e){var f=a.sa[b];if(d&&f.de!=d){Dj(a,b,e,!0);if(f.Cc)return C(a,"Drive "+b+" busy"),!0;f.Cc=!0;e&&(f.Wd=!0,a.Od++);(new qj(a,f,"preload")).load(c,d,a.km);return!1}return!0} -g.km=function(a,b,c,d){a.Cc=!1;b&&b.Eb.length>a.fc&&(C(this,'Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.hb)),b=null);b&&(a.ra=b,a.Jk=c,a.de=d,Ij(this,c,d,b),this.Cd|=128,C(this,'Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.hb),a.Wd));a.Wd&&(a.Wd=!1,--this.Od||this.Ma());Bj(this,a.hb)}; -function Bj(a,b){if(0<=b&&b<a.sa.length){var c=a.sa[b],d=a.oa.listDisks,e=a.oa.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.de){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function Dj(a,b,c,d){var e=a.sa[b];e.ra&&(Gj(a,e.de,e.ra),e.Jk="",e.de="",e.ra=null,a.Cd|=128,d||C(a,"Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Bj(a,b))} -function Ij(a,b,c,d){var e;for(e=0;e<a.ac.length;e++)if(a.ac[e][1]==c){d.restore(a.ac[e][2]);return}a.ac[e]=[b,c,[]]}function Gj(a,b,c){var d;for(d=0;d<a.ac.length;d++)if(a.ac[d][1]==b){a.ac[d][2]=c.save();break}}g.Rm=function(a,b){b&4?this.xe&4||this.xe&8&&this.ga&&R(this.ga,6):this.Xc();this.xe=b};g.Fl=function(){return this.ta};g.Dl=function(){var a=0;this.eb<this.Sa&&(a=this.Jb[this.eb]);this.xe&8&&this.ga&&Vh(this.ga,6);++this.eb>=this.Sa&&(this.ta&=-81,this.eb=this.Sa=0);return a}; -g.Qm=function(a,b){this.Sa<this.Jb.length&&(this.Jb[this.Sa++]=b);var c=this.Jb[0]&31;if(void 0!==Aj[c]&&this.Sa>=Aj[c].nd){var d=!1;this.eb=0;var e,f,c=this.Ha()&31;switch(c){case 3:this.Ha("SRT");this.Ha("HLT");this.ob();break;case 4:f=this.Ha("DS");this.hb=f&3;e=this.sa[this.hb];this.ob();this.ab((e.Oa&4278190080)>>>24,"ST3");break;case 5:case 6:f=this.Ha("DS");this.hb=f&3;e=this.sa[this.hb];e.bb=f>>2&1;e.nb=this.Ha("C");this.Ha("H");e.Pa=this.Ha("R");d=this.Ha("N");e.Va=128<<d;e.ld=this.Ha("EOT"); -this.Ha("GPL");this.Ha("DTL");6==c?this.bh(e):this.dh(e);this.ob();Jj(this,e);this.ab((e.Oa&65280)>>>8,"ST1");this.ab((e.Oa&16711680)>>>16,"ST2");this.ab(e.nb,"C");this.ab(e.bb,"H");this.ab(e.Pa,"R");this.ab(d,"N");d=!0;break;case 7:f=this.Ha("DS");this.hb=f&3;e=this.sa[this.hb];e.nb=e.hd=0;e.Oa=268435488;this.ob();d=!0;break;case 8:e=this.sa[this.hb];e.bb=0;this.ob();Jj(this,e);this.ab(e.nb,"PCN");break;case 13:f=this.Ha("DS");this.hb=f&3;e=this.sa[this.hb];e.bb=f>>2&1;d=this.Ha("N");e.Va=128<<d; -e.ld=this.Ha("SC");this.Ha("GPL");e.Si=this.Ha("D");this.dj(e);this.ob();Jj(this,e);this.ab((e.Oa&65280)>>>8,"ST1");this.ab((e.Oa&16711680)>>>16,"ST2");this.ab(e.nb,"C");this.ab(e.bb,"H");this.ab(e.Pa,"R");this.ab(d,"N");d=!0;break;case 15:f=this.Ha("DS"),this.hb=f&3,e=this.sa[this.hb],e.bb=f>>2&1,c=this.Ha("NCN"),e.nb+=c-e.hd,0>e.nb&&(e.nb=0),e.nb>=e.fc&&(e.nb=e.fc-1),e.hd=c,e.Oa=32,0==e.nb&&(e.Oa|=268435456),this.ob(),d=!0}0<this.Sa&&(this.ta|=80);this.xe&8&&(!e||e.Oa&8||!d||this.ga&&R(this.ga, -6))}};g.El=function(){var a=this.Cd;this.Cd&=-129;return a};g.Pm=function(a,b){this.Ek=b};g.Ha=function(){var a=this.Jb[this.eb];this.eb++;return a};g.ob=function(){this.eb=this.Sa=0};g.ab=function(a){this.Jb[this.Sa++]=a};function Jj(a,b){a.ab(b.hb|b.bb<<2|b.Oa&255,"ST0")}g.$g=function(a,b,c){void 0===b||0>b?this.tc(a,c):c(-1,!1)};g.ah=function(a,b){return void 0!==b&&0<=b?this.vc(a,b):-1};g.Xk=function(a,b){return void 0!==b&&0<=b?this.Ii(a,b):-1}; -g.bh=function(a){a.Oa=72;a.ra&&(a.Ka=null,a.Oa=0,this.ga&&(Lh(this.ga,2,this,"dmaRead",a),Jh(this.ga,2)))};g.dh=function(a){a.Oa=72;a.ra&&(a.ra.qe?a.Oa=576:(a.Ka=null,a.Oa=0,this.ga&&(Lh(this.ga,2,this,"dmaWrite",a),Jh(this.ga,2))))};g.dj=function(a){a.Oa=72;a.ra&&(a.Ka=null,a.Oa=0,this.ga&&(a.Rd=0,a.bc=Array(4),a.Me=!0,a.Re=0,Lh(this.ga,2,this,"dmaFormat",a),Jh(this.ga,2),a.Me=!1))}; -g.tc=function(a,b){var c=-1;if(!a.Oa&&a.ra){do{if(a.Ka&&0<=(c=yj(a.Ka,a.Qa++)))break;a.Ka=a.ra.seek(a.nb,a.bb,a.Pa);if(!a.Ka){a.Oa=1088;break}a.Qa=0;a.Pa++}while(1)}b(c,!1)};g.vc=function(a,b){if(a.Oa||!a.ra)return-1;do{if(a.Ka&&a.ra.write(a.Ka,a.Qa++,b))break;a.Ka=a.ra.seek(a.nb,a.bb,a.Pa);if(!a.Ka){a.Oa=8256;b=-1;break}a.Qa=0;a.Pa++}while(1);return b}; -g.Ii=function(a,b){if(a.Oa)return-1;a.bc[a.Rd++]=b;if(a.Rd==a.bc.length){a.nb=a.bc[0];a.bb=a.bc[1];a.Pa=a.bc[2];a.Va=128<<a.bc[3];for(var c=a.Rd=0;c<a.Va;c++)if(0>this.vc(a,a.Si))return-1;a.Re++}a.Re>=a.ld&&(b=-1);return b};var Ej={1012:zj.prototype.Fl,1013:zj.prototype.Dl,1015:zj.prototype.El},Fj={1010:zj.prototype.Rm,1013:zj.prototype.Qm,1015:zj.prototype.Pm};u(function(){for(var a=B(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new zj(d);A(d,c)}}); -function $(a){v.call(this,"HDC",a,$);this.dmaRead=this.$g;this.dmaWrite=this.ah;this.dmaWriteBuffer=this.Yk;this.dmaWriteFormat=this.Zk;this.Lg=[];if(a.drives)try{this.Lg=eval("("+a.drives+")")}catch(b){this.error("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.af=(this.Vd="at"==a.type)?1:0;this.il=this.Vd?2:3}y(v,$); -var Kj=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];g=$.prototype;g.sb=function(){return!1};g.dc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ga=d;this.Ea=a;this.ga=D(a,"ChipSet");Za(b,this,this.Vd?Lj:Mj);ab(b,this,this.Vd?Nj:Oj);this.reset();this.Le()||this.Ma()}; -g.Rb=function(a,b){if(!b)if(!a||!this.restore)this.Xc(),this.Ea.nh&&this.Le(!0);else if(!this.restore(a))return!1;return!0};g.Ib=function(a){return a&&this.save?this.save():!0};g.re=function(){return this.Ea?this.Ea.re():""};g.td=function(){return this.Ea?this.Ea.td():""};g.reset=function(){this.Xc(null,!0)};g.save=function(){var a=new H(this);a.set(0,this.Ci());return a.data()};g.restore=function(a){return this.Xc(a[0])}; -g.Xc=function(a,b){var c=0,d=!0;if(this.Vd)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.Bd=a[c++],this.Ik=a[c++],this.Ag=a[c++],this.Bg=a[c++],this.zg=a[c++],this.yg=a[c++],this.vf=a[c++],this.ta=a[c++],this.Ai=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.uf=a[c++];this.ta=a[c++];this.Jb=a[c++];this.eb=a[c++];this.Sa=a[c++];this.Hk=a[c++];this.Gk=a[c++];this.Fk=a[c++];var e=a[c++];void 0!==e?this.$e=e:void 0===this.$e&&(this.$e=-1)}void 0===this.sa&&(this.sa=Array(this.Lg.length));c=a[c];void 0=== -c&&(c=[]);for(e=0;e<this.sa.length;e++){void 0===this.sa[e]&&(this.sa[e]={});var f=this.sa[e];this.wh(e,f,this.Lg[e],c[e],b)||(d=!1);null!=this.uf&&1>=e&&(this.uf|=(f.type&3)<<(1-e<<1))}return d}; -g.Ci=function(){var a=0,b=[];this.Vd?(b[a++]=this.Bd,b[a++]=this.Ik,b[a++]=this.Ag,b[a++]=this.Bg,b[a++]=this.zg,b[a++]=this.yg,b[a++]=this.vf,b[a++]=this.ta,b[a++]=this.Ai):(b[a++]=this.uf,b[a++]=this.ta,b[a++]=this.Jb,b[a++]=this.eb,b[a++]=this.Sa,b[a++]=this.Hk,b[a++]=this.Gk,b[a++]=this.Fk,b[a++]=this.$e);b[a]=this.Ei();return b}; -g.wh=function(a,b,c,d,e){var f=0,l=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.hb=a;b.errorCode=d[f++];b.Nk=d[f++];b.pe=d[f++];b.ie=d[f++];b.je=d[f++];b.bb=d[f++];b.gc=d[f++];b.Fd=d[f++];b.Pa=d[f++];b.ld=d[f++];b.Va=d[f++];b.Sf=this.Vd?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.td()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Kj[this.af][b.type])b.type=this.il;c=Kj[this.af][b.type]; -b.Lc=c[2]||17;b.xb=c[3]||512;if(e&&this.ga&&(e=this.ga,c=b.type,e.ka)){var k=e.ka[18],k=a?k&240|c:k&15|c<<4;e.ka&&(e.ka[18]=k,xh(e))}void 0===b.ra&&(b.ra=null,C(this,"Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Pj(this,b);b.Qa=d[f++];b.Ka=null;b.ra&&(a=d[f],void 0!==a&&0>b.ra.restore(a)&&(l=!1),l&&void 0!==b.Qa&&(b.Ka=b.ra.seek(b.Fd,b.bb,b.Pa+b.Sf)));return l};g.Ei=function(){for(var a=0,b=[],c=0;c<this.sa.length;c++)b[a++]=this.Di(this.sa[c]);return b}; -g.Di=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.Nk;c[b++]=a.pe;c[b++]=a.ie;c[b++]=a.je;c[b++]=a.bb;c[b++]=a.gc;c[b++]=a.Fd;c[b++]=a.Pa;c[b++]=a.ld;c[b++]=a.Va;c[b++]=a.Qa;c[b]=a.ra?a.ra.save():null;return c}; -function Pj(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ie[2])?e=b.ie[0]<<8|b.ie[1]:c=b.type);null==c||d||(d=Kj[a.af][c][1],e=Kj[a.af][c][0]);d&&((c=Kj[a.af][b.type])&&e!=c[0]&&d!=c[1]&&C(a,"Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.fc=e,b.gc=d,null==b.ra&&(b.ra=new qj(a,b,b.mode)))}} -g.Le=function(a){a||(this.Od=0);for(var b=0;b<this.sa.length;b++){var c=this.sa[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.sa[b];e.Cc?(C(this,"Drive "+b+" busy"),d=!0):(e.Cc=!0,e.Wd=!0,this.Od++,(e.ra||new qj(this,e,e.mode)).load(d,c,this.jm),d=!1);!d&&a&&this.Ma(!1)}else a&&void 0!==c.type&&(c.ra=null,Pj(this,c,c.type))}return!!this.Od};g.jm=function(a,b,c){a.Cc=!1;(a.ra=b)&&C(this,'Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.hb),a.Wd);a.Wd&&(a.Wd=!1,--this.Od||this.Ma())}; -g.em=function(){var a=0;this.eb<this.Sa&&(a=this.Jb[this.eb]);this.ga&&Vh(this.ga,5);this.ta&=-33;++this.eb>=this.Sa&&(this.eb=this.Sa=0,this.ta&=-15);return a};g.nn=function(a,b){this.Sa<this.Jb.length&&(this.Jb[this.Sa++]=b);var c=12!=this.Jb[0]?6:this.Jb.length;6==this.Sa&&(this.ta&=-2);this.Sa>=c&&(this.ta|=2,this.ta&=-2,Qj(this))};g.fm=function(){var a=this.ta;this.eb<this.Sa&&(this.ta|=1);return a};g.qn=function(a,b){this.Hk=b;this.ga&&Vh(this.ga,5);this.Xc()};g.dm=function(){return this.uf}; -g.pn=function(a,b){this.Gk=b;this.ta=13};g.on=function(a,b){this.Fk=b};g.vi=function(){};g.ql=function(){var a=-1;if(this.La&&(a=this.tc(this.La),this.La.Qa==this.La.xb))if(this.La.Va-=this.La.xb,this.La.Va>=this.La.xb){var b=this;this.tc(this.La,function(a){0<=a?b.ga&&R(b.ga,14):(b.ta=1,b.Bd=16)},!1)}else this.ta=80;return a}; -g.Em=function(a,b){this.La&&this.La.Va>=this.La.xb&&(0>this.vc(this.La,b)?(this.ta=1,this.Bd=16):this.La.Qa==this.La.xb&&(this.La.Va-=this.La.xb,this.ga&&R(this.ga,14),this.La.Va>=this.La.xb||(this.ta=80)))};g.sl=function(){return this.Bd};g.Im=function(a,b){this.Ik=b};g.tl=function(){return this.Ag};g.Gm=function(a,b){this.Ag=b};g.ul=function(){return this.Bg};g.Hm=function(a,b){this.Bg=b};g.pl=function(){return this.zg};g.Dm=function(a,b){this.zg=b};g.ol=function(){return this.yg}; -g.Cm=function(a,b){this.yg=b};g.rl=function(){return this.vf};g.Fm=function(a,b){this.vf=b};g.vl=function(){return this.ta};g.Bm=function(a,b){this.Ai=b;this.ga&&Vh(this.ga,14);Rj(this)}; -function Rj(a){var b=!1,c=a.Ai,d=a.vf&16?1:0,e=a.vf&15,f=a.zg|(a.yg&3)<<8,l=a.Bg,k=a.Ag;a.La=null;a.Bd=0;a.ta=80;(d=a.sa[d])?(d.Fd=f,d.bb=e,d.Pa=l,d.Va=k*d.xb,c=144<=c?c:c&240,d.Ka=null,d.errorCode=0,a.La=d):c=-1;switch(c&240){case 32:a.tc(d,function(b){0<=b&&a.ga?(R(a.ga,14),a.ta=136):(a.ta=1,a.Bd=16)},!1);break;case 48:a.ga?(R(a.ga,14),a.ta=136):(a.ta=1,a.Bd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Bd=1;b=!0;break;case 145:d.gc=e+1,d.Lc=k,b=!0}b&&a.ga&&R(a.ga,14)} -function Qj(a){a.eb=0;var b=a.Ha(),c=a.Ha(),d=c&32,e=d>>5,f=c&31,l=a.Ha(),k=a.Ha(),m=l<<2&768|k,n=l&63,q=a.Ha(),s=a.Ha(),r=a.sa[e];r&&(r.Fd=m,r.bb=f,r.Pa=n,r.Va=q*r.xb);switch(b){case 3:a.ob(r?r.errorCode:4);a.ab(c);a.ab(l);a.ab(k);a.ab(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ha());)r&&c<r.ie.length&&(r.ie[c++]=b);r&&Pj(a,r);b=0;r||a.$e!=e||(a.$e=-1,b=2);a.ob(b|d);b=-1;break;case 224:case 228:a.ob(0|d),b=-1}if(0<=b)switch(void 0===r?b=-1:(r.errorCode=0,r.Nk=0),b){case 0:a.ob(0|d);break;case 1:r.Un= -s;a.ob(0|d);break;case 5:a.ob(0|d);break;case 8:a.bh(r,function(b){a.ob(b|d)});break;case 10:a.dh(r,function(b){a.ob(b|d)});break;case 15:Sj(a,r,function(b){a.ob(b|d)});break;default:a.ob(2|d)}}g.Ha=function(){var a=-1;this.eb<this.Sa&&(a=this.Jb[this.eb++]);return a};g.ob=function(a){this.eb=this.Sa=0;void 0!==a&&this.ab(a);this.ga&&R(this.ga,5);this.ta|=32};g.ab=function(a){this.Jb[this.Sa++]=a};g.$g=function(a,b,c){void 0===b||0>b?this.tc(a,c):c(-1,!1)}; -g.ah=function(a,b){return void 0!==b&&0<=b?this.vc(a,b):-1};g.Yk=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Qa<a.je.length?a.je[a.Qa++]=c:(a.errorCode=20,c=-1)):c=-1;return c};g.Zk=function(a,b){return void 0!==b&&0<=b?this.Ii(a,b):-1};g.bh=function(a,b){a.errorCode=4;if(a.ra&&(a.Ka=null,this.ga)){a.errorCode=0;Lh(this.ga,3,this,"dmaRead",a);Jh(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)}; -g.dh=function(a,b){a.errorCode=4;if(a.ra&&(a.Ka=null,this.ga)){a.errorCode=0;Lh(this.ga,3,this,"dmaWrite",a);Jh(this.ga,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Sj(a,b,c){b.errorCode=4;b.je&&b.je.length==b.Va||(b.je=Array(b.Va));b.Qa=0;a.ga?(b.errorCode=0,Lh(a.ga,3,a,"dmaWriteBuffer",b),Jh(a.ga,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)} -g.dj=function(a,b){a.errorCode=4;if(a.ra&&(a.Ka=null,this.ga)){a.Rd=0;a.bc=Array(4);a.Me=!0;a.Re=0;a.errorCode=0;Lh(this.ga,3,this,"dmaWriteFormat",a);Jh(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Me=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)}; -g.tc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ka&&(d=yj(a.Ka,a.Qa),a.Qa+=e,0<=d))return b&&b(d,!1),d;b&&a.ra.seek(a.Fd,a.bb,a.Pa+a.Sf,!1,function(c,d){var k=-1;(a.Ka=c)?(a.Qa=0,Tj(a),k=yj(a.Ka,a.Qa),a.Qa+=e):a.errorCode=20;b(k,d)});return d};g.vc=function(a,b){if(a.errorCode)return-1;do{if(a.Ka&&a.ra.write(a.Ka,a.Qa++,b))break;a.ra.seek(a.Fd,a.bb,a.Pa+a.Sf,!0,function(b){a.Ka=b});if(!a.Ka){a.errorCode=20;b=-1;break}a.Qa=0;Tj(a)}while(1);return b}; -function Tj(a){a.Pa++;var b=1-a.Sf;a.Pa>=a.Lc+b&&(a.Pa=b,a.Ti++,a.Ti>=a.gc&&(a.Ti=0,a.Fd++))}g.Ii=function(a,b){if(a.errorCode)return-1;a.bc[a.Rd++]=b;if(a.Rd==a.bc.length){a.Fd=a.bc[0];a.bb=a.bc[1];a.Pa=a.bc[2];a.Va=128<<a.bc[3];for(var c=a.Rd=0;c<a.Va;c++)if(0>this.vc(a,a.Si))return-1;a.Re++}a.Re>=a.ld&&(b=-1);return b}; -var Mj={800:$.prototype.em,801:$.prototype.fm,802:$.prototype.dm},Lj={496:$.prototype.ql,497:$.prototype.sl,498:$.prototype.tl,499:$.prototype.ul,500:$.prototype.pl,501:$.prototype.ol,502:$.prototype.rl,503:$.prototype.vl},Oj={800:$.prototype.nn,801:$.prototype.qn,802:$.prototype.pn,803:$.prototype.on,807:$.prototype.vi,811:$.prototype.vi,815:$.prototype.vi},Nj={496:$.prototype.Em,497:$.prototype.Im,498:$.prototype.Gm,499:$.prototype.Hm,500:$.prototype.Dm,501:$.prototype.Cm,502:$.prototype.Fm,503:$.prototype.Bm}; -u(function(){for(var a=B(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new $(d);A(d,c)}});function H(a,b,c){this.id=a.id;this.key=Wj(a,b,c);this.Ga=a.Ga;Xj(this,a.rn)}function Wj(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a} -H.prototype={set:function(a,b){this[this.id][a]=b},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.lh=!0):this.lh?!0:window.localStorage&&(a=window.localStorage.getItem(this.key))?(this[this.id]=a,this.lh=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){t(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"== -typeof a?a:JSON.stringify(a)},clear:function(a){Xj(this);if(window.localStorage)for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}}};function Xj(a,b){a[a.id]={};b&&a.set("parms",b);a.lh=!1} -function Yj(a){var b=!0;if(window.localStorage){var c=JSON.stringify(a[a.id]);try{window.localStorage.setItem(a.key,c)}catch(d){t("Unable to store "+c.length+" bytes in browser local storage"),b=!1}}return b} -function Zj(a,b,c){v.call(this,"Computer",a,Zj);this.yb=!1;this.cf=a.buswidth;this.hc=ak;this.zf=null;this.dg=!1;this.url=b?b.url:null;this.An=(Math.random()+0.1).toString(36).substr(2,12);this.uc=bk(this);if(this.ja=Fa("CPU",this.id)){this.Ga=Fa("Debugger",this.id);this.ma=new Na({id:this.gg+".bus",buswidth:this.cf},this.ja,this.Ga);b=Da(this.id);for(var d=0;d<b.length;d++){var e=b[d];e.dc&&e.dc(this,this.ma,this.ja,this.Ga)}b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Dg=d:this.hc=parseInt(d, -10));var f;if(a=wa&&wa.state||(f=!0,a.state))b=this.Lk=a,f||(this.dg=!0,this.hc=ak),this.hc&&(this.Hg=new H(this,"1.15.4"),this.Hg.load()?b=null:delete this.Hg);!b&&this.hc&&(f=null,this.uc&&(f=la()+"/api/v1/user?req=load&user="+this.uc+"&state="+Wj(this,"1.15.4")),b=f)&&(this.dg=!0);b?p(b,!0,null,this,this.vm):this.Ma();c||ck(this,this.wg)}else t("Unable to find CPU component")}y(v,Zj);var Hj=102,ak=0;g=Zj.prototype;g.re=function(){return this.An};g.td=function(){return this.uc?this.uc:""}; -g.vm=function(a,b,c){c?(this.Dg=null,this.dg=!1,C(this,"Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.zf=b;this.Ma()};function ck(a,b,c){for(var d=Da(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ia(f)){Ia(f,function(){ck(a,b,c)});return}}b.call(a,c)} -function dk(a,b){var c=new H(a,"1.15.4","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(C(a,"Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}} -g.wg=function(a){void 0===a&&(a=this.zf?1:this.hc);var b=!1,c=!1;this.jj=!1;var d=this.Hg||new H(this,"1.15.4");if(-1==a)b=!0;else if(a>ak){if(d.load(this.zf)){this.Be=new H(this,"1.15.4","failsafe");this.Be.load()&&(ek(this,d),a=2);this.Be.set("timestamp",ja());Yj(this.Be);var e=this.hc&&!this.dg;if(1==a||ma("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),l=d.get("data");f&&("ok"==f?d.load(l):("error"==f&&"no machine state"!=l?(C(this,"Error: "+l),"unable to verify user"== -l&&(na(""),this.uc=null)):Ga(this,f+": "+l),Xj(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&dk(this,c?d:null)}else 2==a&&d.clear()}else dk(this);delete this.zf;delete this.Hg}e=Da(this.id);for(f=0;f<e.length;f++)l=e[f],l!==this&&l!=this.ja&&(c=fk(this,l,d,b,c));b=[d,a,c];-1!=a?ck(this,this.Ck,b):this.Ck(b)}; -function fk(a,b,c,d,e){if(!b.yb){b.yb=!0;if(b.Rb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.Rb(f,d)&&f&&(a.error("Unable to restore state for "+b.type),a.Lk&&!a.zf?(c.clear(),a.hc=ak,window&&window.location.reload()):a.jj=!0,b.Rb(null),e=!1)}if(!d&&b.bj)for(a=b.bj.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e} -g.Ck=function(a){var b=a[0],c=0>a[1];a=a[2];this.yb=!0;this.gj||(Ga(this,"PCjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.gj=!0);this.ja&&fk(this,this.ja,b,c,a);this.jj&&(ek(this,b),b.clear());!c&&this.Be&&(this.Be.clear(),delete this.Be)}; -function ek(a,b){if(ma("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.td(),d=b.toString(),e={app:"PCjs",ver:"1.15.4"};e.url=a.url;e.user=c;e.type="bug";e.data=d;p("http://www.pcjs.org/api/v1/report",!0,e)}} -function gk(a,b,c){var d,e="none",f=new H(a,"1.15.4"),l=new H(a,"1.15.4","validate"),k=ja();l.set("timestamp",k);f.set("timestamp",k);f.set("version","1.15.4");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.ja&&a.ja.Ib&&(c&&lb(a.ja),d=a.ja.Ib(b,c),"object"===typeof d&&f.set(a.ja.id,d),c&&(a.ja.yb=!1,!1===d&&(e=null)));for(var k=Da(a.id),m=0;m<k.length;m++){var n=k[m];n.yb&&(n.Ib&&(d=n.Ib(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.yb=!1,!1=== -d&&(e=null)))}e&&(c?(k=d=!1,b?(a.uc&&hk(a,a.uc,f.toString()),Yj(l)&&Yj(f)||(e=null,d=k=!0)):a.hc&&(d=!0,k=3==a.hc),d&&f.clear(k)):e=f.toString());c&&(a.yb=!1);return e}g.reset=function(){this.ma&&this.ma.reset&&this.ma.reset();for(var a=Da(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ma&&c.reset&&c.reset()}};g.start=function(a,b){for(var c=Da(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}}; -g.stop=function(a,b){for(var c=Da(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};g.sb=function(a,b,c,d){var e=this;switch(c){case "save":return this.oa[c]=d,d.onclick=function(){var a=bk(e,!0);if(a){var b=!(!e.hc||e.Dg),c=gk(e,b);b?hk(e,a,c):C(e,"Resume disabled, machine state not saved")}},!0;case "reset":return this.oa[c]=d,d.onclick=function(){mb(e)},!0}return!1}; -function bk(a,b){var c=a.uc;if(!c){var d;window&&(d=window.localStorage.getItem("user"));c=d;void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email Jeff@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=ik(a,c))||C(a,"Your user ID has not been approved."))):b&&C(a,"Browser local storage is not available")}return c} -function ik(a,b){a.uc=null;var c=p(la()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(na(c.data),a.uc=c.data)}catch(e){t(e.message+" ("+d+")")}return a.uc} -function hk(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Wj(a,"1.15.4");d.data=c;b=p(la()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?C(a,"Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,C(a,c),na(""),a.uc=null)}} -function mb(a){if(a.hc&&!a.Dg){var b=1==a.hc||!ma("Click OK to reset the PCjs machine state.\n(WARNING: All disk changes will be discarded)");gk(a,b,!0);!b&&a.Lk?window&&window.location.reload():(b||(a.nh=!0),a.wg(ak),a.nh=!1)}else a.reset(),a.ja&&kb(a.ja)}function D(a,b,c){a=Da(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null} -u(function(){for(var a=B(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=z(c),c=B(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],l=z(f),l=new Zj(l,d,!0);A(l,f);ck(l,l.wg)}});pa.show.push(function(){for(var a=B(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Fa("Computer",c.id))&&c.gj&&!c.yb&&c.wg(-1)}}); -pa.exit.push(function(){for(var a=B(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Fa("Computer",c.id))&&c.yb&&gk(c,!(!c.hc||c.Dg),!0)}});function jk(a,b,c,d){var e=p(a);if(e[0])throw Error(e[1]);return kk(e[1],a,b,c,d)} -function kk(a,b,c,d,e){var f=null;if(a){if(e)for(var l=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;f=l.exec(a);){var k=f[2],m=p(k),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var q=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(q){for(var k=q[0],s,r=/( [a-z]+=)(['"])(.*?)\2/g;s=r.exec(m);)k=0>k.indexOf(s[1])?k.replace(">",s[0]+">"):k.replace(new RegExp(s[1]+"(['\"])(.*?)\\1"),s[0]);q[0]!=k&&(n=n.replace(q[0],k))}else throw c="missing <"+f[1]+"> in "+k,Error(c); +function Z(a){this.sj=a.adapter;switch(this.sj){case 1:this.Di=1016;this.pf=4;break;case 2:this.Di=760;this.pf=3;break;default:t("Unrecognized serial adapter #"+this.sj);return}this.qd=null;v.call(this,"SerialPort",a,Z);var b=a.binding,c;a=bj;b&&(void 0===c&&(c="Panel"),(c=Ca(c,this.id))&&(b=c.oa[b])&&this.tb(null,null,a,b))}y(v,Z);var bj="buffer";g=Z.prototype;g.Wi=function(a,b){return a==this.Ah?(this.wj=b,this):null}; +g.tb=function(a,b,c,d){var e=this;switch(c){case bj:return this.oa[c]=this.qd=d,d.onkeydown=function(a){a=a||window.event;var b=a.charCode||a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),cj(e,[b]))},d.onkeypress=function(a){a=a||window.event;cj(e,[a.which||a.keyCode])},!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.ga=C(a,"ChipSet");Ua(b,this,dj,this.Di);Wa(b,this,ej,this.Di);this.Oa()}; +g.Sb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.wd()};g.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.Wg;c[b++]=this.$i;c[b++]=this.he;c[b++]=this.Rf;c[b++]=this.ld;c[b++]=this.Od;c[b++]=this.Ic;c[b++]=this.mc;c[b++]=this.Yi;c[b]=this.Je;a.set(0,c);return a.data()};g.restore=function(a){return this.wd(a[0])}; +g.wd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.Wg=a[b++];this.$i=a[b++];this.he=a[b++];this.Rf=a[b++];this.ld=a[b++];this.Od=a[b++];this.Ic=a[b++];this.mc=a[b++];this.Yi=a[b++];this.Je=a[b];return!0};function cj(a,b){a.Je=a.Je.concat(b);fj(a)}function fj(a){0<a.Je.length&&!(a.mc&1)&&(a.Wg=a.Je.shift(),a.mc|=1);var b=-1;a.mc&1&&a.Rf&1&&(b=4);0<=b?(a.ld&=-8,a.ld|=b,a.ga&&a.pf&&R(a.ga,a.pf)):(a.ld|=1,a.ga&&a.pf&&Qh(a.ga,a.pf))} +g.cm=function(){var a=this.Od&128?this.he&255:this.Wg;this.mc&=-2;fj(this);return a};g.Ol=function(){return this.Od&128?this.he>>8:this.Rf};g.Pl=function(){return this.ld};g.Ql=function(){return this.Od};g.Sl=function(){return this.Ic};g.Rl=function(){return this.mc};g.Yl=function(){return this.Yi}; +g.pn=function(a,b){if(this.Od&128)this.he=this.he&-256|b;else{this.$i=b;this.mc&=-97;var c;this.qd?(13!=b&&(8==b?this.qd.value=this.qd.value.slice(0,-1):(this.qd.value+=String.fromCharCode(b),this.qd.scrollTop=this.qd.scrollHeight)),c=!0):c=!1;c&&(this.mc|=96)}};g.$m=function(a,b){this.Od&128?this.he=this.he&255|b<<8:this.Rf=b};g.an=function(a,b){this.Od=b}; +g.bn=function(a,b){var c=this.Ic;this.Ic=b;if(this.wj&&(c^b)&3){var c=this.wj,d=this.Ic,e=3==(d&3);if(e){if(!c.Xb){var f=!1;c.Ic&2||(c.reset(),f=!0);c.Ic&1||(f=!0);f&&cj(c.We,[77]);gj(c,c.qb);c.Xb=e}}else c.Xb&&(hj(c.qb),c.Xb=e);c.Ic=d}};var dj={0:Z.prototype.cm,1:Z.prototype.Ol,2:Z.prototype.Pl,3:Z.prototype.Ql,4:Z.prototype.Sl,5:Z.prototype.Rl,6:Z.prototype.Yl},ej={0:Z.prototype.pn,1:Z.prototype.$m,3:Z.prototype.an,4:Z.prototype.bn}; +u(function(){for(var a=B(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Z(d);A(d,c)}});function ij(a){v.call(this,"Mouse",a,ij);if(this.zh=a.serial)this.Gi="SerialPort";this.Xb=!1;this.Oa()}y(v,ij);g=ij.prototype;g.gc=function(a,b,c,d){this.Fa=a;this.ma=b;this.ja=c;this.Ha=d}; +g.Sb=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Gi&&!this.We){for(var c=null;(c=C(this.Fa,this.Gi,c))&&(!c.Wi||!(this.We=c.Wi(this.zh,this))););if(this.We){if(c=C(this.Fa,"Video"))this.qb=c.qb}else t(this.id+": "+this.Gi+" "+this.zh+" unavailable")}this.Xb?gj(this,this.qb):hj(this.qb)}return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.wd()};g.save=function(){var a=new H(this);a.set(0,this.Ki());return a.data()}; +g.restore=function(a){return this.wd(a[0])};g.wd=function(a){var b=0;void 0===a&&(a=[!1,-1,-1,0,0,!1,!1,0]);this.Xb=a[b++];this.Gf=a[b++];this.Hf=a[b++];this.Ee=a[b++];this.Fe=a[b++];this.cg=a[b++];this.dg=a[b++];this.Ic=a[b];return!0};g.Ki=function(){var a=0,b=[];b[a++]=this.Xb;b[a++]=this.Gf;b[a++]=this.Hf;b[a++]=this.Ee;b[a++]=this.Fe;b[a++]=this.cg;b[a++]=this.dg;b[a]=this.Ic;return b}; +function gj(a,b){b&&(a.lh||(b.addEventListener("mousemove",function(b){if(a.Xb&&a.ja&&a.ja.rc){if(0>a.Gf||0>a.Hf)a.Gf=b.clientX,a.Hf=b.clientY;a.Ee=b.clientX-a.Gf;a.Fe=b.clientY-a.Hf;(a.Ee||a.Fe)&&jj(a);a.Gf=b.clientX;a.Hf=b.clientY}},!1),b.addEventListener("mousedown",function(b){kj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){kj(a,b.button,!1)},!1),a.lh=!0),b.style.cursor="none")}function hj(a){a&&(a.style.cursor="auto")} +function kj(a,b,c){if(a.Xb&&a.ja&&a.ja.rc)switch(b){case 0:a.cg!=c&&(a.cg=c,jj(a));break;case 2:a.dg!=c&&(a.dg=c,jj(a))}}function jj(a){cj(a.We,[64|(a.cg?32:0)|(a.dg?16:0)|(a.Fe&192)>>4|(a.Ee&192)>>6,a.Ee&63,a.Fe&63]);a.Ee=a.Fe=0}u(function(){for(var a=B(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new ij(d);A(d,c)}}); +function lj(a,b,c){v.call(this,"Disk",{id:a.kg+".disk"+mj++},lj);this.ea=a;this.Fa=a.Fa;this.Ha=a.Ha;this.Na=b;this.mode=c;this.fd=b.name;this.ic=b.ic;this.Yb=b.Yb;this.Gc=b.Gc;this.yb=b.yb;this.re=b.re;this.rh=this.Yc=!1;this.create();this.Jd=[];this.Jf=[];this.hd=null;this.yj=0;this.th=!1;this.Oa()}var mj=0;y(v,lj);g=lj.prototype;g.gc=function(a,b,c,d){this.Ha=d};g.Sb=function(a,b){b||this.rh&&!this.Yc&&this.load(this.fd,this.Ae);return!0}; +g.Jb=function(a,b){if(this.Yc){var c,d=0;if(this.th&&!ma("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=nj(this,!1);)if(d=c[0]){this.xa('Unable to save "'+this.fd+'" (error '+d+")");break}b&&this.Yc&&(c="action=close&volume="+this.Ae,c+="&machine="+this.ea.te(),c+="&user="+this.ea.vd(),p(la()+"/api/v1/disk?"+c,!0),this.Yc=!1);d||this.xa(this.fd+" saved")}return!0}; +g.create=function(){this.Fb=[];if("preload"!=this.mode){for(var a=Array(this.ic),b=0;b<a.length;b++){for(var c=Array(this.Yb),d=0;d<c.length;d++){for(var e=Array(this.Gc),f=1;f<=e.length;f++)e[f-1]=oj(null,b,d,f,this.yb,"local"==this.mode?0:null);c[d]=e}a[b]=c}this.Fb=a}this.ag=0}; +g.load=function(a,b,c){var d=b;this.fd=a;this.Ae=b;this.qj=c;0>b.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a?d=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.ic+":"+this.Yb+":"+this.Gc+":"+this.yb,a+="&machine="+this.ea.te(),a+="&user="+this.ea.vd(),d=la()+"/api/v1/disk?"+a,this.rh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)?(c="disk",d="&mbhd=0"): +-1!==b.indexOf("/",b.length-1)&&(c="dir"),d=la()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.re?"":d)+"&format=json"));p(d,!0,null,this,this.vm,b)}; +g.vm=function(a,b,c,d){var e=null;this.se=!1;var f=0>c&&this.Fa&&!this.Fa.zb;if(this.rh)c?this.xa('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Yc=!0,e=this);else if(c)this.xa('Unable to load disk "'+this.fd+'" (error '+c+")",f);else try{if(0<ea(a,!0).toLowerCase().indexOf("-readonly"))this.se=!0;else{var l=b.indexOf("\n");0<l&&1024>l&&0<b.substring(0,l).indexOf("write-protected")&&(this.se=!0)}var k;k="<"==b.substr(0,1)?["Missing disk image: "+this.fd]:0>b.indexOf("0x")&&'["'!= +b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(k.length)if(1==k.length)t(k[0]);else{for(b=a=0;b<k.length;b++)for(c=0;c<k[b].length;c++)for(d=0;d<k[b][c].length;d++){var m=k[b][c][d],n=m.length;void 0===n&&(n=m.length=512);var n=n>>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var s=m.data;if(void 0===s){var r=m.bytes;if(void 0!==r&&r.length){for(var f=n<<2,x=r.length;x<f;x++)r[x]=q;this.fill(m,r,0)}else s=[],q=m.pattern=q|q<<8|q<<16|q<<24,m.data= +s;delete m.bytes}oj(m,b,c);for(f=0;f<s.length;f++)a=a+s[f]&4294967295}this.Fb=k;this.ag=a;e=this}else t("Empty disk image: "+this.fd)}catch(L){t("Disk image error: "+L.message)}this.qj&&this.qj.call(this.ea,this.Na,e,this.fd,this.Ae)};function oj(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.ll=b;a.nl=c;a.Fc=a.oc=0;a.Qa=!1;return a} +g.wm=function(a,b,c,d){a=!1;if(!c){var e=d[0],f=d[1],l=d[2],k=d[3];a=d[4];b=JSON.parse(b);for(var m=0;k--;){var n=this.seek(e,f,l,!0);if(!n)break;this.fill(n,b,m);m+=n.length;l++}}(d=d[5])&&d(c,a)};function pj(a,b,c,d,e,f){if(a.Yc){var l;l="action=read&volume="+a.Ae;l+="&chs="+a.ic+":"+a.Yb+":"+a.Gc+":"+a.yb;l=l+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.ea.te());l+="&user="+a.ea.vd();p(la()+"/api/v1/disk?"+l,!0,null,a,a.wm,[b,c,d,e,!0,f])}else f&&f(-1,!1)} +function qj(a,b,c){b.Qa=!0;var d=a.Jd.indexOf(b);0<=d&&(a.Jd.splice(d,1),a.Jf.splice(d,1));a.Jd.push(b);a.Jf.push(ia());c&&rj(a)}function rj(a){if(a.Jd.length){var b=a.Jf[0]+2E3;a.hd&&a.yj<b&&(clearTimeout(a.hd),a.hd=null);if(!a.hd){var c=ia(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.hd=setTimeout(function(){nj(a,!0)},b);a.yj=c+b}}else a.hd&&(clearTimeout(a.hd),a.hd=null)} +function nj(a,b){b&&(a.hd=null);var c=a.Jd[0];if(c){for(var d=c.ll,e=c.nl,c=c.sector,f=0,l=[],k=c-1;k<a.Fb[d][e].length;k++){var m=a.Fb[d][e][k];if(!m.Qa)break;var n=a.Jd.indexOf(m);a.Jd.splice(n,1);a.Jf.splice(n,1);l=l.concat(sj(m));m.Qa=!1;f++}a.Yc?(k={},a.th=!0,k.action="write",k.volume=a.Ae,k.chs=a.ic+":"+a.Yb+":"+a.Gc+":"+a.yb,k.addr=d+":"+e+":"+c+":"+f,k.machine=a.ea.te(),k.user=a.ea.vd(),k.data=JSON.stringify(l),d=p(la()+"/api/v1/disk",b,k,a,a.Bm,[d,e,c,f,b])):d=!1;return b||d}return!1} +g.Bm=function(a,b,c,d){a=d[0];b=d[1];var e=d[2],f=d[3];d=d[4];this.th=!1;if(0<=a&&a<this.Fb.length&&0<=b&&b<this.Fb[a].length)for(e-=1;0<f--&&0<=e&&e<this.Fb[a][b].length;e++){var l=this.Fb[a][b][e];c?qj(this,l,!1):l.Qa||(l.Fc=l.oc=0)}d&&rj(this)}; +g.seek=function(a,b,c,d,e){var f=null,l=this.Na,k=this.Fb[a];if(k){var m=k[b];if(!m&&l.Pe&&b<l.Yb)for(m=k[b]=Array(l.nd),k=0;k<m.length;k++)m[k]=oj(null,a,b,k+1,l.Xa,0);if(m){for(k=0;k<m.length;k++)if(m[k].sector==c){f=m[k];if(null===f.pattern)if(d)f.pattern=0;else if(e){for(d=1;++k<m.length;)null===m[k].pattern&&d++;pj(this,a,b,c,d,function(a,b){a&&(f=null);e(f,b)});return null}break}!f&&l.Pe&&9==l.Pa&&(f=m[k]=oj(null,a,b,l.Pa,l.Xa,0))}}e&&e(f,!1);return f}; +g.fill=function(a,b,c){for(var d=a.length>>2,e=Array(d),f=0;f<d;f++)e[f]=b[c]|b[c+1]<<8|b[c+2]<<16|b[c+3]<<24,c+=4;a.data=e};function sj(a){var b=a.length,c=Array(b),d=0,b=b>>2,e=a.data;a=a.pattern;for(var f=0;f<b;f++){var l=f<e.length?e[f]:a;c[d++]=l&255;c[d++]=l>>8&255;c[d++]=l>>16&255;c[d++]=l>>24&255}return c}function tj(a,b){var c=-1;if(b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c} +g.write=function(a,b,c){if(this.se)return!1;if(b<a.length){if(c!=tj(a,b)){var d=a.data,e=a.pattern,f=b>>2;b=(b&3)<<3;for(var l=d.length;l<=f;l++)d[l]=e;a.oc?f<a.Fc?(a.oc+=a.Fc-f,a.Fc=f):f>=a.Fc+a.oc&&(a.oc+=f-(a.Fc+a.oc)+1):(a.Fc=f,a.oc=1);d[f]=d[f]&~(255<<b)|c<<b;this.Yc&&qj(this,a,!0)}return!0}return null}; +g.save=function(){var a=0,b=[];b[a++]=[this.Ae,this.ag];if(!this.Yc&&!this.se)for(var c=this.Fb,d=0;d<c.length;d++)for(var e=0;e<c[d].length;e++)for(var f=0;f<c[d][e].length;f++){var l=c[d][e][f];if(l.oc){for(var k=[],m=0,n=l.Fc,q=l.Fc+l.oc;n<q;)k[m++]=l.data[n++];b[a++]=[d,e,f,l.Fc,k]}}return b}; +g.restore=function(a){var b=0,c="unsupported restore format";if(this.Fb.length&&a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&e[1]!=this.ag&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.ag+")",b=-1);for(;d<a.length&&0<=b;){var f=0,l=a[d++],k=l[f++],m=l[f++],n=l[f++];if(k>=this.Fb.length||m>=this.Fb[k].length||n>=this.Fb[k][m].length){c="sector "+k+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.se){c="unable to modify write-protected disk";b=-1;break}e= +l[f++];f=l[f++];l=e+f.length;k=this.Fb[k][m][n];for(m=k.data.length;m<e;)k.data[m++]=k.pattern;m=0;k.Fc=e;for(k.oc=f.length;e<l;)k.data[e++]=f[m++];b++}}0>b&&this.xa("unable to restore disk '"+this.fd+": "+c);return b}; +function uj(a){v.call(this,"FDC",a,uj);this.dmaRead=this.fh;this.dmaWrite=this.gh;this.dmaFormat=this.al;this.de=null;if(a.autoMount&&(this.de=a.autoMount,"string"==typeof this.de))try{this.de=eval("("+a.autoMount+")")}catch(b){t("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.de=null}this.dc=[];this.Zc();this.Oe()||this.Oa()}y(v,uj); +var vj={3:{pd:3,Ud:0,name:"SPECIFY"},4:{pd:2,Ud:1,name:"DRIVE_STATUS"},5:{pd:9,Ud:7,name:"WRITE_DATA"},6:{pd:9,Ud:7,name:"READ_DATA"},7:{pd:2,Ud:0,name:"RECALIBRATE"},8:{pd:1,Ud:2,name:"INT_STATUS"},13:{pd:6,Ud:7,name:"FORMAT"},15:{pd:3,Ud:0,name:"SEEK"}};g=uj.prototype; +g.tb=function(a,b,c,d){switch(c){case "listDisks":return this.oa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.oa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){t("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d='<a href="'+m+'" target="_blank">'+d+"</a>");c.innerHTML= +d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.oa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||wj(a,c)}}(this,d),!0;case "loadDrive":return this.oa[c]=d,d.onclick=function(a){return function(){var b,c=a.oa.listDisks,d=a.oa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&b<a.sa.length)if(d=c.value){c=c.options[c.selectedIndex].text;if("?"==d){d=window.prompt("Enter the URL of a disk image to load.","");if(!d)return;c=ea(d);a.ac("Attempting to load "+ +d+' as "'+c+'"')}for(;xj(a,b,c,d,!1)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var m=a,n=d,q=void 0,q=0;q<m.dc.length;q++)if(m.dc[q][1]==n){m.dc.splice(q,1);break}yj(a,b,!1,!0)}}else yj(a,b);else a.xa("Nothing to load")}}(this),!0}return!1};g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.Fa=a;this.ga=C(a,"ChipSet");Ua(b,this,zj);Wa(b,this,Aj)}; +g.Sb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Fa.sh){this.dc=[];for(var c=0;c<this.sa.length;c++)yj(this,c,!0);this.Oe(!0)}}else if(!this.restore(a))return!1;if(this.ga){this.vg=vh(this.ga);for(c=0;c<this.vg;c++){var d=this.sa[c];d.aj=rh(this.ga,c);2==d.aj&&(d.ic=80)}if(d=this.oa.listDrives){for(;d.firstChild;)d.removeChild(d.firstChild);d.innerHTML="";for(c=0;c<this.vg;c++){var e=window.document.createElement("option");e.value=c;e.innerHTML=String.fromCharCode(65+c)+":";d.appendChild(e)}0< +this.vg&&(d.value="0",wj(this,0))}}}return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.reset=function(){this.Zc()};g.save=function(){var a=new H(this);a.set(0,this.Hi());return a.data()};g.restore=function(a){return this.Zc(a[0])}; +g.Zc=function(a){var b=0,c=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.jb=a[b++];b++;this.ta=a[b++];this.Kb=a[b++];this.fb=a[b++];this.Ua=a[b++];this.ze=a[b++];var d=a[b++],e=a[b++];null!=e&&(this.dc=e);void 0===this.sa&&(this.vg=0,this.sa=Array(4));for(e=0;e<this.sa.length;e++)void 0===this.sa[e]&&(this.sa[e]={}),this.Bh(this.sa[e],e,d[e])||(c=!1);this.Ed=a[b++]||0;this.Ik=a[b]||0;return c}; +g.Hi=function(){var a=0,b=[];b[a++]=this.jb;b[a++]=0;b[a++]=this.ta;b[a++]=this.Kb;b[a++]=this.fb;b[a++]=this.Ua;b[a++]=this.ze;b[a++]=this.Ji();for(var c=a++,d=0;d<this.sa.length;d++){var e=this.sa[d];e.ra&&Bj(this,e.fe,e.ra)}b[c]=this.dc;b[a++]=this.Ed;b[a]=this.Ik;return b}; +g.Bh=function(a,b,c){var d=0,e=!0;a.jb=b;void 0===c&&(c=[192,!0,0,2,0]);"boolean"==typeof c[1]&&(c[1]=["Floppy Drive",a.ic||40,c[3],9,512,c[1]]);a.Ra=c[d++];a.name=c[d][0];a.ic=c[d][1];a.Yb=c[d][2];a.Gc=c[d][3];a.yb=c[d][4];a.re=c[d][5];d++;a.aj=1;a.La=c[d++];a.kd=c[d++];a.ib=c[d++];a.kd=100<=a.kd?a.kd-100:a.kd-a.ib;a.Pa=c[d++];a.nd=c[d++];a.Xa=c[d++];a.Sa=c[d++];a.Ma=null;a.ra||(a.fe="");var f=c[d++];f===Cj?(f=c[d++],c=c[d],xj(this,b,f,c,!0)?a.ra&&Dj(this,f,c,a.ra):this.Oa(!1)):void 0!==f&&a.ra&& +0>a.ra.restore(f)&&(e=!1);e&&a.ra&&void 0!==a.Sa&&(a.Ma=a.ra.seek(a.ib,a.La,a.Pa));return e};g.Ji=function(){for(var a=0,b=[],c=0;c<this.sa.length;c++)b[a++]=this.Ii(this.sa[c]);return b};g.Ii=function(a){var b=0,c=[];c[b++]=a.Ra;c[b++]=[a.name,a.ic,a.Yb,a.Gc,a.yb,a.re];c[b++]=a.La;c[b++]=a.kd+100;c[b++]=a.ib;c[b++]=a.Pa;c[b++]=a.nd;c[b++]=a.Xa;c[b++]=a.Sa;c[b++]=Cj;c[b++]=a.Nk;c[b]=a.fe;return c}; +g.Oe=function(a){a||(this.Qd=0);if(this.de)for(var b in this.de){var c=this.de[b];if(c.name&&c.path){var d=b.charCodeAt(0)-65;if(0<=d&&d<this.sa.length){!xj(this,d,c.name,c.path,!0)&&a&&this.Oa(!1);continue}}this.xa("Unrecognized auto-mount specification for drive "+b)}return!!this.Qd};function xj(a,b,c,d,e){var f=a.sa[b];if(d&&f.fe!=d){yj(a,b,e,!0);if(f.Ec)return a.xa("Drive "+b+" busy"),!0;f.Ec=!0;e&&(f.Yd=!0,a.Qd++);(new lj(a,f,"preload")).load(c,d,a.om);return!1}return!0} +g.om=function(a,b,c,d){a.Ec=!1;b&&b.Fb.length>a.ic&&(this.xa('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.jb)),b=null);b&&(a.ra=b,a.Nk=c,a.fe=d,Dj(this,c,d,b),this.Ed|=128,this.xa('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.jb),a.Yd));a.Yd&&(a.Yd=!1,--this.Qd||this.Oa());wj(this,a.jb)}; +function wj(a,b){if(0<=b&&b<a.sa.length){var c=a.sa[b],d=a.oa.listDisks,e=a.oa.listDrives;if(d&&e&&(e=parseInt(e.value,10),!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c.fe){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function yj(a,b,c,d){var e=a.sa[b];e.ra&&(Bj(a,e.fe,e.ra),e.Nk="",e.fe="",e.ra=null,a.Ed|=128,d||a.xa("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||wj(a,b))} +function Dj(a,b,c,d){var e;for(e=0;e<a.dc.length;e++)if(a.dc[e][1]==c){d.restore(a.dc[e][2]);return}a.dc[e]=[b,c,[]]}function Bj(a,b,c){var d;for(d=0;d<a.dc.length;d++)if(a.dc[d][1]==b){a.dc[d][2]=c.save();break}}g.Vm=function(a,b){b&4?this.ze&4||this.ze&8&&this.ga&&R(this.ga,6):this.Zc();this.ze=b};g.Jl=function(){return this.ta};g.Hl=function(){var a=0;this.fb<this.Ua&&(a=this.Kb[this.fb]);this.ze&8&&this.ga&&Qh(this.ga,6);++this.fb>=this.Ua&&(this.ta&=-81,this.fb=this.Ua=0);return a}; +g.Um=function(a,b){this.Ua<this.Kb.length&&(this.Kb[this.Ua++]=b);var c=this.Kb[0]&31;if(void 0!==vj[c]&&this.Ua>=vj[c].pd){var d=!1;this.fb=0;var e,f,c=this.Ia()&31;switch(c){case 3:this.Ia("SRT");this.Ia("HLT");this.pb();break;case 4:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];this.pb();this.cb((e.Ra&4278190080)>>>24,"ST3");break;case 5:case 6:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];e.La=f>>2&1;e.ib=this.Ia("C");this.Ia("H");e.Pa=this.Ia("R");d=this.Ia("N");e.Xa=128<<d;e.nd=this.Ia("EOT"); +this.Ia("GPL");this.Ia("DTL");6==c?this.hh(e):this.ih(e);this.pb();Ej(this,e);this.cb((e.Ra&65280)>>>8,"ST1");this.cb((e.Ra&16711680)>>>16,"ST2");this.cb(e.ib,"C");this.cb(e.La,"H");this.cb(e.Pa,"R");this.cb(d,"N");d=!0;break;case 7:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];e.ib=e.kd=0;e.Ra=268435488;this.pb();d=!0;break;case 8:e=this.sa[this.jb];e.La=0;this.pb();Ej(this,e);this.cb(e.ib,"PCN");break;case 13:f=this.Ia("DS");this.jb=f&3;e=this.sa[this.jb];e.La=f>>2&1;d=this.Ia("N");e.Xa=128<<d; +e.nd=this.Ia("SC");this.Ia("GPL");e.Xi=this.Ia("D");this.hj(e);this.pb();Ej(this,e);this.cb((e.Ra&65280)>>>8,"ST1");this.cb((e.Ra&16711680)>>>16,"ST2");this.cb(e.ib,"C");this.cb(e.La,"H");this.cb(e.Pa,"R");this.cb(d,"N");d=!0;break;case 15:f=this.Ia("DS"),this.jb=f&3,e=this.sa[this.jb],e.La=f>>2&1,c=this.Ia("NCN"),e.ib+=c-e.kd,0>e.ib&&(e.ib=0),e.ib>=e.ic&&(e.ib=e.ic-1),e.kd=c,e.Ra=32,0==e.ib&&(e.Ra|=268435456),this.pb(),d=!0}0<this.Ua&&(this.ta|=80);this.ze&8&&(!e||e.Ra&8||!d||this.ga&&R(this.ga, +6))}};g.Il=function(){var a=this.Ed;this.Ed&=-129;return a};g.Tm=function(a,b){this.Ik=b};g.Ia=function(){var a=this.Kb[this.fb];this.fb++;return a};g.pb=function(){this.fb=this.Ua=0};g.cb=function(a){this.Kb[this.Ua++]=a};function Ej(a,b){a.cb(b.jb|b.La<<2|b.Ra&255,"ST0")}g.fh=function(a,b,c){void 0===b||0>b?this.vc(a,c):c(-1,!1)};g.gh=function(a,b){return void 0!==b&&0<=b?this.xc(a,b):-1};g.al=function(a,b){return void 0!==b&&0<=b?this.Ni(a,b):-1}; +g.hh=function(a){a.Ra=72;a.ra&&(a.Ma=null,a.Ra=0,this.ga&&(Gh(this.ga,2,this,"dmaRead",a),Eh(this.ga,2)))};g.ih=function(a){a.Ra=72;a.ra&&(a.ra.se?a.Ra=576:(a.Ma=null,a.Ra=0,this.ga&&(Gh(this.ga,2,this,"dmaWrite",a),Eh(this.ga,2))))};g.hj=function(a){a.Ra=72;a.ra&&(a.Ma=null,a.Ra=0,this.ga&&(a.Td=0,a.ec=Array(4),a.Pe=!0,a.Ue=0,Gh(this.ga,2,this,"dmaFormat",a),Eh(this.ga,2),a.Pe=!1))}; +g.vc=function(a,b){var c=-1;if(!a.Ra&&a.ra){do{if(a.Ma&&0<=(c=tj(a.Ma,a.Sa++)))break;a.Ma=a.ra.seek(a.ib,a.La,a.Pa);if(!a.Ma){a.Ra=1088;break}a.Sa=0;this.Me(a)}while(1)}b(c,!1)};g.xc=function(a,b){if(a.Ra||!a.ra)return-1;do{if(a.Ma&&a.ra.write(a.Ma,a.Sa++,b))break;a.Ma=a.ra.seek(a.ib,a.La,a.Pa);if(!a.Ma){a.Ra=8256;b=-1;break}a.Sa=0;this.Me(a)}while(1);return b};g.Me=function(a){a.Pa++;a.Pa>=a.Gc+1&&(a.Pa=1,a.La++,a.La>=a.Yb&&(a.La=0,a.ib++))}; +g.Ni=function(a,b){if(a.Ra)return-1;a.ec[a.Td++]=b;if(a.Td==a.ec.length){a.ib=a.ec[0];a.La=a.ec[1];a.Pa=a.ec[2];a.Xa=128<<a.ec[3];for(var c=a.Td=0;c<a.Xa;c++)if(0>this.xc(a,a.Xi))return-1;a.Ue++}a.Ue>=a.nd&&(b=-1);return b};var zj={1012:uj.prototype.Jl,1013:uj.prototype.Hl,1015:uj.prototype.Il},Aj={1010:uj.prototype.Vm,1013:uj.prototype.Um,1015:uj.prototype.Tm};u(function(){for(var a=B(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new uj(d);A(d,c)}}); +function $(a){v.call(this,"HDC",a,$);this.dmaRead=this.fh;this.dmaWrite=this.gh;this.dmaWriteBuffer=this.bl;this.dmaWriteFormat=this.cl;this.Pg=[];if(a.drives)try{this.Pg=eval("("+a.drives+")")}catch(b){t("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.df=(this.Xd="at"==a.type)?1:0;this.ml=this.Xd?2:3}y(v,$); +var Fj=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7]}];g=$.prototype;g.tb=function(){return!1};g.gc=function(a,b,c,d){this.ma=b;this.ja=c;this.Ha=d;this.Fa=a;this.ga=C(a,"ChipSet");Ua(b,this,this.Xd?Gj:Hj);Wa(b,this,this.Xd?Ij:Jj);this.reset();this.Oe()||this.Oa()}; +g.Sb=function(a,b){if(!b)if(!a||!this.restore)this.Zc(),this.Fa.sh&&this.Oe(!0);else if(!this.restore(a))return!1;return!0};g.Jb=function(a){return a&&this.save?this.save():!0};g.te=function(){return this.Fa?this.Fa.te():""};g.vd=function(){return this.Fa?this.Fa.vd():""};g.reset=function(){this.Zc(null,!0)};g.save=function(){var a=new H(this);a.set(0,this.Hi());return a.data()};g.restore=function(a){return this.Zc(a[0])}; +g.Zc=function(a,b){var c=0,d=!0;if(this.Xd)null==a&&(a=[0,0,0,0,0,0,0,0,64,0]),this.Dd=a[c++],this.Mk=a[c++],this.Eg=a[c++],this.Fg=a[c++],this.Dg=a[c++],this.Cg=a[c++],this.zf=a[c++],this.ta=a[c++],this.Fi=a[c++];else{null==a&&(a=[0,0,Array(14),0,0]);this.yf=a[c++];this.ta=a[c++];this.Kb=a[c++];this.fb=a[c++];this.Ua=a[c++];this.Lk=a[c++];this.Kk=a[c++];this.Jk=a[c++];var e=a[c++];void 0!==e?this.cf=e:void 0===this.cf&&(this.cf=-1)}void 0===this.sa&&(this.sa=Array(this.Pg.length));c=a[c];void 0=== +c&&(c=[]);for(e=0;e<this.sa.length;e++){void 0===this.sa[e]&&(this.sa[e]={});var f=this.sa[e];this.Bh(e,f,this.Pg[e],c[e],b)||(d=!1);null!=this.yf&&1>=e&&(this.yf|=(f.type&3)<<(1-e<<1))}return d}; +g.Hi=function(){var a=0,b=[];this.Xd?(b[a++]=this.Dd,b[a++]=this.Mk,b[a++]=this.Eg,b[a++]=this.Fg,b[a++]=this.Dg,b[a++]=this.Cg,b[a++]=this.zf,b[a++]=this.ta,b[a++]=this.Fi):(b[a++]=this.yf,b[a++]=this.ta,b[a++]=this.Kb,b[a++]=this.fb,b[a++]=this.Ua,b[a++]=this.Lk,b[a++]=this.Kk,b[a++]=this.Jk,b[a++]=this.cf);b[a]=this.Ji();return b}; +g.Bh=function(a,b,c,d,e){var f=0,l=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.jb=a;b.errorCode=d[f++];b.Rk=d[f++];b.re=d[f++];b.ke=d[f++];b.le=d[f++];b.La=d[f++];b.Yb=d[f++];b.Hd=d[f++];b.Pa=d[f++];b.nd=d[f++];b.Xa=d[f++];b.Wf=this.Xd?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.vd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Fj[this.df][b.type])b.type=this.ml;c=Fj[this.df][b.type]; +b.Gc=c[2]||17;b.yb=c[3]||512;if(e&&this.ga&&(e=this.ga,c=b.type,e.ka)){var k=e.ka[18],k=a?k&240|c:k&15|c<<4;e.ka&&(e.ka[18]=k,sh(e))}void 0===b.ra&&(b.ra=null,this.xa("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Kj(this,b);b.Sa=d[f++];b.Ma=null;b.ra&&(a=d[f],void 0!==a&&0>b.ra.restore(a)&&(l=!1),l&&void 0!==b.Sa&&(b.Ma=b.ra.seek(b.Hd,b.La,b.Pa+b.Wf)));return l};g.Ji=function(){for(var a=0,b=[],c=0;c<this.sa.length;c++)b[a++]=this.Ii(this.sa[c]);return b}; +g.Ii=function(a){var b=0,c=[];c[b++]=a.errorCode;c[b++]=a.Rk;c[b++]=a.re;c[b++]=a.ke;c[b++]=a.le;c[b++]=a.La;c[b++]=a.Yb;c[b++]=a.Hd;c[b++]=a.Pa;c[b++]=a.nd;c[b++]=a.Xa;c[b++]=a.Sa;c[b]=a.ra?a.ra.save():null;return c}; +function Kj(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ke[2])?e=b.ke[0]<<8|b.ke[1]:c=b.type);null==c||d||(d=Fj[a.df][c][1],e=Fj[a.df][c][0]);d&&((c=Fj[a.df][b.type])&&e!=c[0]&&d!=c[1]&&a.xa("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.ic=e,b.Yb=d,null==b.ra&&(b.ra=new lj(a,b,b.mode)))}} +g.Oe=function(a){a||(this.Qd=0);for(var b=0;b<this.sa.length;b++){var c=this.sa[b];if(c.name&&c.path){var d;d=c.name;var c=c.path,e=this.sa[b];e.Ec?(this.xa("Drive "+b+" busy"),d=!0):(e.Ec=!0,e.Yd=!0,this.Qd++,(e.ra||new lj(this,e,e.mode)).load(d,c,this.nm),d=!1);!d&&a&&this.Oa(!1)}else a&&void 0!==c.type&&(c.ra=null,Kj(this,c,c.type))}return!!this.Qd};g.nm=function(a,b,c){a.Ec=!1;(a.ra=b)&&this.xa('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.jb),a.Yd);a.Yd&&(a.Yd=!1,--this.Qd||this.Oa())}; +g.im=function(){var a=0;this.fb<this.Ua&&(a=this.Kb[this.fb]);this.ga&&Qh(this.ga,5);this.ta&=-33;++this.fb>=this.Ua&&(this.fb=this.Ua=0,this.ta&=-15);return a};g.rn=function(a,b){this.Ua<this.Kb.length&&(this.Kb[this.Ua++]=b);var c=12!=this.Kb[0]?6:this.Kb.length;6==this.Ua&&(this.ta&=-2);this.Ua>=c&&(this.ta|=2,this.ta&=-2,Lj(this))};g.jm=function(){var a=this.ta;this.fb<this.Ua&&(this.ta|=1);return a};g.un=function(a,b){this.Lk=b;this.ga&&Qh(this.ga,5);this.Zc()};g.hm=function(){return this.yf}; +g.tn=function(a,b){this.Kk=b;this.ta=13};g.sn=function(a,b){this.Jk=b};g.Ai=function(){};g.ul=function(){var a=-1;if(this.Na&&(a=this.vc(this.Na),this.Na.Sa==this.Na.yb))if(this.Na.Xa-=this.Na.yb,this.Na.Xa>=this.Na.yb){var b=this;this.vc(this.Na,function(a){0<=a?b.ga&&R(b.ga,14):(b.ta=1,b.Dd=16)},!1)}else this.ta=80;return a}; +g.Im=function(a,b){this.Na&&this.Na.Xa>=this.Na.yb&&(0>this.xc(this.Na,b)?(this.ta=1,this.Dd=16):this.Na.Sa==this.Na.yb&&(this.Na.Xa-=this.Na.yb,this.ga&&R(this.ga,14),this.Na.Xa>=this.Na.yb||(this.ta=80)))};g.wl=function(){return this.Dd};g.Mm=function(a,b){this.Mk=b};g.xl=function(){return this.Eg};g.Km=function(a,b){this.Eg=b};g.yl=function(){return this.Fg};g.Lm=function(a,b){this.Fg=b};g.tl=function(){return this.Dg};g.Hm=function(a,b){this.Dg=b};g.sl=function(){return this.Cg}; +g.Gm=function(a,b){this.Cg=b};g.vl=function(){return this.zf};g.Jm=function(a,b){this.zf=b};g.zl=function(){return this.ta};g.Fm=function(a,b){this.Fi=b;this.ga&&Qh(this.ga,14);Mj(this)}; +function Mj(a){var b=!1,c=a.Fi,d=a.zf&16?1:0,e=a.zf&15,f=a.Dg|(a.Cg&3)<<8,l=a.Fg,k=a.Eg;a.Na=null;a.Dd=0;a.ta=80;(d=a.sa[d])?(d.Hd=f,d.La=e,d.Pa=l,d.Xa=k*d.yb,c=144<=c?c:c&240,d.Ma=null,d.errorCode=0,a.Na=d):c=-1;switch(c&240){case 32:a.vc(d,function(b){0<=b&&a.ga?(R(a.ga,14),a.ta=136):(a.ta=1,a.Dd=16)},!1);break;case 48:a.ga?(R(a.ga,14),a.ta=136):(a.ta=1,a.Dd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Dd=1;b=!0;break;case 145:d.Yb=e+1,d.Gc=k,b=!0}b&&a.ga&&R(a.ga,14)} +function Lj(a){a.fb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,l=a.Ia(),k=a.Ia(),m=l<<2&768|k,n=l&63,q=a.Ia(),s=a.Ia(),r=a.sa[e];r&&(r.Hd=m,r.La=f,r.Pa=n,r.Xa=q*r.yb);switch(b){case 3:a.pb(r?r.errorCode:4);a.cb(c);a.cb(l);a.cb(k);a.cb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)r&&c<r.ke.length&&(r.ke[c++]=b);r&&Kj(a,r);b=0;r||a.cf!=e||(a.cf=-1,b=2);a.pb(b|d);b=-1;break;case 224:case 228:a.pb(0|d),b=-1}if(0<=b)switch(void 0===r?b=-1:(r.errorCode=0,r.Rk=0),b){case 0:a.pb(0|d);break;case 1:r.Yn= +s;a.pb(0|d);break;case 5:a.pb(0|d);break;case 8:a.hh(r,function(b){a.pb(b|d)});break;case 10:a.ih(r,function(b){a.pb(b|d)});break;case 15:Nj(a,r,function(b){a.pb(b|d)});break;default:a.pb(2|d)}}g.Ia=function(){var a=-1;this.fb<this.Ua&&(a=this.Kb[this.fb++]);return a};g.pb=function(a){this.fb=this.Ua=0;void 0!==a&&this.cb(a);this.ga&&R(this.ga,5);this.ta|=32};g.cb=function(a){this.Kb[this.Ua++]=a};g.fh=function(a,b,c){void 0===b||0>b?this.vc(a,c):c(-1,!1)}; +g.gh=function(a,b){return void 0!==b&&0<=b?this.xc(a,b):-1};g.bl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Sa<a.le.length?a.le[a.Sa++]=c:(a.errorCode=20,c=-1)):c=-1;return c};g.cl=function(a,b){return void 0!==b&&0<=b?this.Ni(a,b):-1};g.hh=function(a,b){a.errorCode=4;if(a.ra&&(a.Ma=null,this.ga)){a.errorCode=0;Gh(this.ga,3,this,"dmaRead",a);Eh(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)}; +g.ih=function(a,b){a.errorCode=4;if(a.ra&&(a.Ma=null,this.ga)){a.errorCode=0;Gh(this.ga,3,this,"dmaWrite",a);Eh(this.ga,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Nj(a,b,c){b.errorCode=4;b.le&&b.le.length==b.Xa||(b.le=Array(b.Xa));b.Sa=0;a.ga?(b.errorCode=0,Gh(a.ga,3,a,"dmaWriteBuffer",b),Eh(a.ga,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)} +g.hj=function(a,b){a.errorCode=4;if(a.ra&&(a.Ma=null,this.ga)){a.Td=0;a.ec=Array(4);a.Pe=!0;a.Ue=0;a.errorCode=0;Gh(this.ga,3,this,"dmaWriteFormat",a);Eh(this.ga,3,function(c){c||0!=a.errorCode||(a.errorCode=4);a.Pe=!1;b(a.errorCode?2:0)});return}b(a.errorCode?2:0)}; +g.vc=function(a,b,c){var d=-1;if(a.errorCode)return b&&b(d,!1),d;var e=!1!==c?1:0;if(a.Ma&&(d=tj(a.Ma,a.Sa),a.Sa+=e,0<=d))return b&&b(d,!1),d;if(b){var f=this;a.ra.seek(a.Hd,a.La,a.Pa+a.Wf,!1,function(c,d){var m=-1;(a.Ma=c)?(a.Sa=0,f.Me(a),m=tj(a.Ma,a.Sa),a.Sa+=e):a.errorCode=20;b(m,d)})}return d}; +g.xc=function(a,b){if(a.errorCode)return-1;do{if(a.Ma&&a.ra.write(a.Ma,a.Sa++,b))break;a.ra.seek(a.Hd,a.La,a.Pa+a.Wf,!0,function(b){a.Ma=b});if(!a.Ma){a.errorCode=20;b=-1;break}a.Sa=0;this.Me(a)}while(1);return b};g.Me=function(a){a.Pa++;var b=1-a.Wf;a.Pa>=a.Gc+b&&(a.Pa=b,a.La++,a.La>=a.Yb&&(a.La=0,a.Hd++))}; +g.Ni=function(a,b){if(a.errorCode)return-1;a.ec[a.Td++]=b;if(a.Td==a.ec.length){a.Hd=a.ec[0];a.La=a.ec[1];a.Pa=a.ec[2];a.Xa=128<<a.ec[3];for(var c=a.Td=0;c<a.Xa;c++)if(0>this.xc(a,a.Xi))return-1;a.Ue++}a.Ue>=a.nd&&(b=-1);return b}; +var Hj={800:$.prototype.im,801:$.prototype.jm,802:$.prototype.hm},Gj={496:$.prototype.ul,497:$.prototype.wl,498:$.prototype.xl,499:$.prototype.yl,500:$.prototype.tl,501:$.prototype.sl,502:$.prototype.vl,503:$.prototype.zl},Jj={800:$.prototype.rn,801:$.prototype.un,802:$.prototype.tn,803:$.prototype.sn,807:$.prototype.Ai,811:$.prototype.Ai,815:$.prototype.Ai},Ij={496:$.prototype.Im,497:$.prototype.Mm,498:$.prototype.Km,499:$.prototype.Lm,500:$.prototype.Hm,501:$.prototype.Gm,502:$.prototype.Jm,503:$.prototype.Fm}; +u(function(){for(var a=B(window.document,"pcjs","hdc"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new $(d);A(d,c)}});function H(a,b,c){this.id=a.id;this.key=Qj(a,b,c);this.Ha=a.Ha;Rj(this,a.vn)}function Qj(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a} +H.prototype={set:function(a,b){this[this.id][a]=b},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.qh=!0):this.qh?!0:window.localStorage&&(a=window.localStorage.getItem(this.key))?(this[this.id]=a,this.qh=!0):!1},parse:function(){var a=!0;try{this[this.id]=JSON.parse(this[this.id])}catch(b){t(b.message||b),a=!1}return a},toString:function(){var a=this[this.id];return"string"== +typeof a?a:JSON.stringify(a)},clear:function(a){Rj(this);if(window.localStorage)for(var b=0;b<window.localStorage.length;){var c=window.localStorage.key(b++);c&&(a||c.substr(0,this.key.length)==this.key)&&(window.localStorage.removeItem(c),b=0)}}};function Rj(a,b){a[a.id]={};b&&a.set("parms",b);a.qh=!1} +function Sj(a){var b=!0;if(window.localStorage){var c=JSON.stringify(a[a.id]);try{window.localStorage.setItem(a.key,c)}catch(d){t("Unable to store "+c.length+" bytes in browser local storage"),b=!1}}return b} +function Tj(a,b,c){v.call(this,"Computer",a,Tj);this.zb=!1;this.ff=a.buswidth;this.jc=Uj;this.Df=null;this.hg=!1;this.url=b?b.url:null;this.En=(Math.random()+0.1).toString(36).substr(2,12);this.wc=Vj(this);if(this.ja=Ca("CPU",this.id)){this.Ha=Ca("Debugger",this.id);this.xf=Ca("Panel",this.id);this.ma=new Ja({id:this.kg+".bus",buswidth:this.ff},this.ja,this.Ha);b=Aa(this.id);for(var d=0;d<b.length;d++){var e=b[d];this.xf&&this.xf.bh&&(e.xa=this.xf.xa,e.ac=this.xf.ac,e.bh=this.xf.bh);e.gc&&e.gc(this, +this.ma,this.ja,this.Ha)}b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.Hg=d:this.jc=parseInt(d,10));var f;if(a=va&&va.state||(f=!0,a.state))b=this.Pk=a,f||(this.hg=!0,this.jc=Uj),this.jc&&(this.Lg=new H(this,"1.15.4"),this.Lg.load()?b=null:delete this.Lg);!b&&this.jc&&(f=null,this.wc&&(f=la()+"/api/v1/user?req=load&user="+this.wc+"&state="+Qj(this,"1.15.4")),b=f)&&(this.hg=!0);b?p(b,!0,null,this,this.zm):this.Oa();c||Wj(this,this.Ag)}else t("Unable to find CPU component")}y(v,Tj); +var Cj=102,Uj=0;g=Tj.prototype;g.te=function(){return this.En};g.vd=function(){return this.wc?this.wc:""};g.zm=function(a,b,c){c?(this.Hg=null,this.hg=!1,this.xa("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):this.Df=b;this.Oa()};function Wj(a,b,c){for(var d=Aa(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!Ea(f)){Ea(f,function(){Wj(a,b,c)});return}}b.call(a,c)} +function Xj(a,b){var c=new H(a,"1.15.4","validate");if(c.load()&&c.parse()){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.xa("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}} +g.Ag=function(a){void 0===a&&(a=this.Df?1:this.jc);var b=!1,c=!1;this.nj=!1;var d=this.Lg||new H(this,"1.15.4");if(-1==a)b=!0;else if(a>Uj){if(d.load(this.Df)){this.De=new H(this,"1.15.4","failsafe");this.De.load()&&(Yj(this,d),a=2);this.De.set("timestamp",ja());Sj(this.De);var e=this.jc&&!this.hg;if(1==a||ma("Click OK to restore previous PCjs machine state.")){if(c=d.parse()){var f=d.get("code"),l=d.get("data");f&&("ok"==f?d.load(l):("error"==f&&"no machine state"!=l?(this.xa("Error: "+l),"unable to verify user"== +l&&(na(""),this.wc=null)):this.ac(f+": "+l),Rj(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Xj(this,c?d:null)}else 2==a&&d.clear()}else Xj(this);delete this.Df;delete this.Lg}e=Aa(this.id);for(f=0;f<e.length;f++)l=e[f],l!==this&&l!=this.ja&&(c=Zj(this,l,d,b,c));b=[d,a,c];-1!=a?Wj(this,this.Gk,b):this.Gk(b)}; +function Zj(a,b,c,d,e){if(!b.zb){b.zb=!0;if(b.Sb){var f=null;e&&((f=c.get(b.id))||(f=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.Sb(f,d)&&f&&(t("Unable to restore state for "+b.type),a.Pk&&!a.Df?(c.clear(),a.jc=Uj,window&&window.location.reload()):a.nj=!0,b.Sb(null),e=!1)}if(!d&&b.fj)for(a=b.fj.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e} +g.Gk=function(a){var b=a[0],c=0>a[1];a=a[2];this.zb=!0;this.kj||(this.ac("PCjs v1.15.4\nCopyright \u00a9 2012-2014 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.kj=!0);this.ja&&Zj(this,this.ja,b,c,a);this.nj&&(Yj(this,b),b.clear());!c&&this.De&&(this.De.clear(),delete this.De)}; +function Yj(a,b){if(ma("There may be a problem with PCjs.\nClick OK to send your PCjs machine state to http://www.pcjs.org.")){var c=a.vd(),d=b.toString(),e={app:"PCjs",ver:"1.15.4"};e.url=a.url;e.user=c;e.type="bug";e.data=d;p("http://www.pcjs.org/api/v1/report",!0,e)}} +function ak(a,b,c){var d,e="none",f=new H(a,"1.15.4"),l=new H(a,"1.15.4","validate"),k=ja();l.set("timestamp",k);f.set("timestamp",k);f.set("version","1.15.4");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.ja&&a.ja.Jb&&(c&&gb(a.ja),d=a.ja.Jb(b,c),"object"===typeof d&&f.set(a.ja.id,d),c&&(a.ja.zb=!1,!1===d&&(e=null)));for(var k=Aa(a.id),m=0;m<k.length;m++){var n=k[m];n.zb&&(n.Jb&&(d=n.Jb(b,c),"object"===typeof d&&f.set(n.id,d)),c&&(n.zb=!1,!1=== +d&&(e=null)))}e&&(c?(k=d=!1,b?(a.wc&&bk(a,a.wc,f.toString()),Sj(l)&&Sj(f)||(e=null,d=k=!0)):a.jc&&(d=!0,k=3==a.jc),d&&f.clear(k)):e=f.toString());c&&(a.zb=!1);return e}g.reset=function(){this.ma&&this.ma.reset&&this.ma.reset();for(var a=Aa(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ma&&c.reset&&c.reset()}};g.start=function(a,b){for(var c=Aa(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}}; +g.stop=function(a,b){for(var c=Aa(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};g.tb=function(a,b,c,d){var e=this;switch(c){case "save":return this.oa[c]=d,d.onclick=function(){var a=Vj(e,!0);if(a){var b=!(!e.jc||e.Hg),c=ak(e,b);b?bk(e,a,c):e.xa("Resume disabled, machine state not saved")}},!0;case "reset":return this.oa[c]=d,d.onclick=function(){hb(e)},!0}return!1}; +function Vj(a,b){var c=a.wc;if(!c){var d;window&&(d=window.localStorage.getItem("user"));c=d;void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("To save machine states on the pcjs.org server, you need a user ID (email Jeff@pcjs.org).\n\nOnce you have an ID, enter it below.","")),c&&((c=ck(a,c))||a.xa("Your user ID has not been approved."))):b&&a.xa("Browser local storage is not available")}return c} +function ck(a,b){a.wc=null;var c=p(la()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(na(c.data),a.wc=c.data)}catch(e){t(e.message+" ("+d+")")}return a.wc} +function bk(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Qj(a,"1.15.4");d.data=c;b=p(la()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.xa("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.xa(c),na(""),a.wc=null)}} +function hb(a){if(a.jc&&!a.Hg){var b=1==a.jc||!ma("Click OK to reset the PCjs machine state.\n(WARNING: All disk changes will be discarded)");ak(a,b,!0);!b&&a.Pk?window&&window.location.reload():(b||(a.sh=!0),a.Ag(Uj),a.sh=!1)}else a.reset(),a.ja&&fb(a.ja)}function C(a,b,c){a=Aa(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null} +u(function(){for(var a=B(window.document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=z(c),c=B(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],l=z(f),l=new Tj(l,d,!0);A(l,f);Wj(l,l.Ag)}});pa.show.push(function(){for(var a=B(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Ca("Computer",c.id))&&c.kj&&!c.zb&&c.Ag(-1)}}); +pa.exit.push(function(){for(var a=B(window.document,"pcjs","computer"),b=0;b<a.length;b++){var c=z(a[b]);(c=Ca("Computer",c.id))&&c.zb&&ak(c,!(!c.jc||c.Hg),!0)}});function dk(a,b,c,d){var e=p(a);if(e[0])throw Error(e[1]);return ek(e[1],a,b,c,d)} +function ek(a,b,c,d,e){var f=null;if(a){if(e)for(var l=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g;f=l.exec(a);){var k=f[2],m=p(k),n=m[1];if(m[0]||!n)throw c="unable to resolve XML reference: "+f[0]+" ("+m[0]+")",Error(c);if(m=f[3]){var q=n.match(new RegExp("<"+f[1]+"[^>]*>"));if(q){for(var k=q[0],s,r=/( [a-z]+=)(['"])(.*?)\2/g;s=r.exec(m);)k=0>k.indexOf(s[1])?k.replace(">",s[0]+">"):k.replace(new RegExp(s[1]+"(['\"])(.*?)\\1"),s[0]);q[0]!=k&&(n=n.replace(q[0],k))}else throw c="missing <"+f[1]+"> in "+k,Error(c); }n=n.replace(/<\?xml[^>]*>[\r\n]*/,"");a=a.replace(f[0],n);l.lastIndex=0}c&&(b&&0>b.indexOf("/")&&(b=window.location.pathname+b),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(b?" url=$2"+b+"$2":"")));if(0===a.indexOf("<"))window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*\]>\s*/g,"")),f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml");else throw Error("unrecognized XML: "+ (255<a.length?a.substr(0,255)+"...":a));}return[a,f]} -window.embedPC=function(a,b,c,d){var e=c,f=c="",l=null;try{if(l=window.document.getElementById(a)){e||(e="/versions/pcjs/1.15.4/components.xsl");var k="<"==b.substr(0,1)?kk(b,null,a,d,!1):jk(b,a,d,!0);c=k[0];var m=k[1];if(m){var k=jk(e),n=k[1];if(n)if(window.ActiveXObject||"ActiveXObject"in window){var q=m.transformNode(n);q?l.outerHTML=q:f="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var s=new XSLTProcessor;s.importStylesheet(n); -var r=s.transformToFragment(m,window.document);r?l.parentNode.replaceChild(r,l):f="transformToFragment failed"}else f="unable to transform XML: unsupported browser";else f="failed to load XSL file: "+e}else f="failed to load XML file: "+b}else f="failed to find machine element: "+a}catch(x){f=x.message}f&&l&&(a=B(l,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+ha(f)));return f||c};window.enableEvents=function(a){qa=a};window.sendEvent=function(a){pa[a]&&sa(pa[a])};})();//@ sourceMappingURL=/tmp/pcjs/1.15.4/pc.map +window.embedPC=function(a,b,c,d){var e=c,f=c="",l=null;try{if(l=window.document.getElementById(a)){e||(e="/versions/pcjs/1.15.4/components.xsl");var k="<"==b.substr(0,1)?ek(b,null,a,d,!1):dk(b,a,d,!0);c=k[0];var m=k[1];if(m){var k=dk(e),n=k[1];if(n)if(window.ActiveXObject||"ActiveXObject"in window){var q=m.transformNode(n);q?l.outerHTML=q:f="transformNodeToObject failed"}else if(window.document.implementation&&window.document.implementation.createDocument){var s=new XSLTProcessor;s.importStylesheet(n); +var r=s.transformToFragment(m,window.document);r?l.parentNode.replaceChild(r,l):f="transformToFragment failed"}else f="unable to transform XML: unsupported browser";else f="failed to load XSL file: "+e}else f="failed to load XML file: "+b}else f="failed to find machine element: "+a}catch(x){f=x.message}f&&l&&(a=B(l,"machine-warning"),a[0]&&(a[0].innerHTML="Error: "+ha(f)));return f||c};window.enableEvents=function(a){qa=a};window.sendEvent=function(a){pa[a]&&ta(pa[a])};})();//@ sourceMappingURL=/tmp/pcjs/1.15.4/pc.map