v1.32.0: The New Year Release

This commit is contained in:
Jeff Parsons 2016-12-30 15:56:00 -08:00 committed by Jeff Parsons
commit f87161f5d6
452 changed files with 14307 additions and 542 deletions

View file

@ -0,0 +1,265 @@
@CHARSET "UTF-8";
/**
@author Jeff Parsons (@jeffpar)
@website http://www.pcjs.org/
@created 2013-05-05
@modified 2014-02-23
@license http://www.gnu.org/licenses/gpl.html
*/
body {
margin: 0;
background: #202020;
}
h1, h2 {
margin-top: 0;
color: #cccccc;
}
h1, h2, h3, h4 {
word-wrap: break-word;
}
h4 a {
color: #cccccc !important;
}
p {
line-height: 1.5em;
}
img {
max-width: 100%;
}
a img {
vertical-align: bottom;
}
pre, code {
color: #000000;
background-color: #cccccc;
font-family: Monaco, Consolas, "Lucida Console", monospace;
font-size: 12px;
}
pre {
margin: 1em 2em;
padding: 1em;
border-radius: 5px;
overflow: auto;
}
code {
padding: 1px;
}
pre a, code a {
color: #006400 !important;
}
.common {
width: 100%;
margin: 0 auto;
color: #cccccc;
}
.common a {
color: #7fc07f;
text-decoration: none;
}
.common hr {
border-color: #808080;
}
.common a:hover {
text-decoration: underline;
}
.common, .machine {
font-family: "Helvetica Neue", Helvetica, Arial, Geneva, sans-serif;
font-size: 15px;
}
.machine {
overflow: hidden;
}
.c1pjs {
overflow: visible;
}
.machine-placeholder {
text-align: center;
font-weight: bold;
}
.common-top {
background: #202020;
font-size: small;
}
.common-top-left {
float: left;
width: 60%;
}
.common-top-left ul {
line-height: 1.5em;
list-style-type: none;
margin: 0;
padding: 1em 1em 1em 9px;
overflow: hidden;
}
.common-top-left ul li {
display: block;
float: left;
}
.common-top-left ul li a {
border-right: 1px solid #6f6f6f;
padding: 2px 6px 2px 6px;
}
.common-top-left ul li:last-child a {
border-right: none;
}
.common-top-right {
float: right;
width: 40%;
}
.common-top-right p {
float: right;
margin: 0;
padding: 1em;
}
.common-middle {
clear: both;
padding: 1px 1em 1px 1em;
background: #404040;
}
.common-sidebar {
float: left;
font-size: small;
width: 140px;
padding-bottom: 20px;
overflow: hidden;
white-space: nowrap;
word-wrap: break-word;
}
.common-list {
list-style-type: none;
margin-top: 0;
margin-bottom: 0;
padding-left: 0;
}
.common-list li {
padding-bottom: 7px;
}
.common-list-data {
list-style-type: none;
margin-top: 0;
margin-bottom: 0;
padding-left: 0;
}
.common-list-data li {
line-height: 1.5em;
}
.common-list-data-items, .common-list-data-subitems {
font-size: x-small;
list-style-type: none;
margin-top: 0;
margin-bottom: 0;
padding-left: 2em;
}
.common-list-data-items li, .common-list-data-subitems li {
padding-bottom: 0;
}
.common-main {
margin-left: 150px;
}
.common-main blockquote {
text-align: justify;
}
.common-image-gallery {
margin: 0 auto;
text-align: center;
}
.common-image-gallery:after {
content: '';
display: block;
}
.common-image-frame {
display: inline-block;
margin: 8px;
text-align: center;
}
.common-image-link {
padding: 5px;
border: 1px solid black;
border-radius: 5px;
background-color: #FAEBD7;
}
.common-image-label {
font-size: x-small;
}
.common-bottom {
clear: both;
padding-top: 1em;
}
.common-bottom:after {
content: '';
display: block;
clear: both;
}
.common-reference {
float: left;
font-size: x-small;
}
.common-reference a {
text-decoration: none;
}
.common-copyright {
float: right;
font-size: x-small;
}
.common-copyright a {
text-decoration: none;
}
.md-list {
}
.md-list li {
line-height: 1.5em;
margin-bottom: 1em;
}
.md-list li p {
padding-left: 2em;
}
.md-list-compact {
}
.md-list-compact li {
margin-bottom: 0;
}
.md-list-none {
list-style-type: none;
padding-left: 2em;
}
.md-list-none li {
margin-bottom: 0;
}
@media screen and (max-width: 900px) {
.common-sidebar {
width: 100%;
white-space: normal;
}
.common-list {
padding-left: 0;
}
.common-list-data {
padding-left: 0;
}
.common-sidebar h4, .common-list li, .common-list-data li, .common-list-data-items li {
width: 130px;
float: left;
overflow: hidden;
vertical-align: top;
padding-right: 1em;
margin-top: 0;
}
.common-list-data-subitems {
display: none;
}
.common-main {
clear: both;
margin-left: 0;
padding-left: 0;
padding-right: 0;
}
.md-list-none {
padding-left: 1em;
}
}

View file

@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- author="Jeff Parsons (@jeffpar)" website="http://www.pcjs.org/" created="2012-05-05" modified="2014-02-23" license="http://www.gnu.org/licenses/gpl.html" -->
<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp "&#160;"> <!ENTITY ne "&#8800;"> <!ENTITY le "&#8804;"> <!ENTITY ge "&#8805;">
<!ENTITY times "&#215;"> <!ENTITY sdot "&#8901;"> <!ENTITY divide "&#247;">
<!ENTITY copy "&#169;"> <!ENTITY Sigma "&#931;"> <!ENTITY sigma "&#963;"> <!ENTITY sum "&#8721;"> <!ENTITY lbrace "&#123;">
]>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template name="commonStyles">
<meta charset="utf-8"/>
<link rel="apple-touch-icon" sizes="57x57" href="/versions/icons/current/pc-icon-57.png"/>
<link rel="apple-touch-icon" sizes="72x72" href="/versions/icons/current/pc-icon-72.png"/>
<link rel="apple-touch-icon" sizes="76x76" href="/versions/icons/current/pc-icon-76.png"/>
<link rel="apple-touch-icon" sizes="114x114" href="/versions/icons/current/pc-icon-114.png"/>
<link rel="apple-touch-icon" sizes="120x120" href="/versions/icons/current/pc-icon-120.png"/>
<link rel="apple-touch-icon" sizes="144x144" href="/versions/icons/current/pc-icon-144.png"/>
<link rel="apple-touch-icon" sizes="152x152" href="/versions/icons/current/pc-icon-152.png"/>
<link rel="apple-touch-icon" sizes="180x180" href="/versions/icons/current/pc-icon-180.png"/>
<link rel="apple-touch-icon" sizes="192x192" href="/versions/icons/current/pc-icon-192.png"/>
<link rel="apple-touch-icon" href="/versions/icons/current/apple-touch-icon.png"/>
<link rel="icon" type="image/png" sizes="192x192" href="/versions/icons/current/pc-icon-192.png"/>
<link rel="shortcut icon" type="image/x-icon" href="/versions/icons/current/favicon.ico"/>
<link rel="stylesheet" type="text/css" href="/versions/pcx86/1.32.0/common.css"/>
</xsl:template>
<xsl:template name="commonTop">
<div class="common-top">
<div class="common-top-left">
<ul>
<li><a href="/">PCjs</a></li>
<li><a href="/devices/">Devices</a></li>
<li><a href="/docs/">Docs</a></li>
<li><a href="/apps/">Software</a></li>
<li><a href="/docs/about/">About</a></li>
</ul>
</div>
<div class="common-top-right">
<p>Powered by <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript">JavaScript</a>, <a href="http://vanilla-js.com/" target="_blank">Vanilla JS</a>, and <a href="http://github.com/jeffpar/pcjs" target="_blank">GitHub</a></p>
</div>
</div>
</xsl:template>
<xsl:template name="commonBottom">
<div class="common-bottom">
<p class="common-reference"></p>
<p class="common-copyright">
<span class="common-copyright"><a href="http://www.pcjs.org/">pcjs.org</a> © 2012-2017 by <a href="http://twitter.com/jeffpar">@jeffpar</a></span><br/>
<span class="common-copyright"><a href="http://github.com/jeffpar/pcjs">PCjs Project</a> released under <a href="http://gnu.org/licenses/gpl.html">GPLv3</a></span>
</p>
</div>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,259 @@
@CHARSET "UTF-8";
*:not(input,textarea) {
-webkit-user-select: none;
}
.pcjs-embed {
}
.pcjs-embed:after {
clear:both;
}
.pcjs-machine {
}
.pcjs-name, .pcjs-menu {
clear: both;
font-weight: bold;
padding-bottom: 4px;
}
.pcjs-menu {
float: left;
}
.pcjs-canvas {
width: 100%;
height: auto;
}
.pcjs-container {
color: #000000;
position: relative;
}
.pcjs-label {
font-size: small;
line-height: 20px;
vertical-align: middle;
float: left;
font-family: Monaco, "Lucida Console", monospace;
}
.pcjs-controls textarea {
font-family: Monaco, "Lucida Console", monospace;
font-size: x-small;
}
.pcjs-fieldset {
border: none;
margin: 0;
padding: 0;
}
.pcjs-flag {
font-family: Monaco, "Lucida Console", monospace;
font-size: small;
text-align: center;
line-height: 20px;
vertical-align: middle;
}
.pcjs-progress {
height: 20px;
width: 200px;
margin-top: 8px;
border: 1px solid black;
position: relative;
}
.pcjs-progress-bar {
height: 20px;
width: 0;
background-color: gold;
position: absolute;
top: 0;
}
.pcjs-progress-text {
height: 20px;
width: 200px;
font-size: small;
line-height: 20px;
text-align: center;
position: absolute;
top: 0;
z-index: 1;
}
.pcjs-register {
font-family: Monaco, "Lucida Console", monospace;
font-size: small;
text-align: center;
line-height: 20px;
vertical-align: middle;
border: 1px solid black;
}
.pcjs-switches {
float: left;
}
.pcjs-bitBucket {
float: left;
width: 19px;
height: 38px;
}
.pcjs-bitCell {
float: left;
width: 19px;
height: 19px;
margin-right: -1px;
margin-bottom: -1px;
border: 1px solid black;
text-align: center;
line-height: 19px;
}
.pcjs-bitCellLeft {
border-left: 1px solid black;
}
.pcjs-bitLabel {
font-size: xx-small;
text-align: center;
}
.pcjs-description, .pcjs-status {
font-size: x-small;
line-height: 2.8em;
}
.pcjs-key {
border: 1px solid black;
font-size: x-small;
text-align: center;
position: absolute;
height: 34px;
line-height: 34px;
background-color: #ffffff;
}
.pcjs-panel-group {
color: #ffffff;
background-color: #404040;
}
.pcjs-triplet {
padding: 1px;
}
.pcjs-ledlbl {
text-align: center;
font-size: 40%;
background-color: #000000;
}
.pcjs-ledlbl0 {
text-align: right;
font-size: 50%;
background-color: #8d4076;
}
.pcjs-ledlbl1 {
text-align: right;
font-size: 50%;
background-color: #d83662;
}
.pcjs-ledpad {
text-align: center;
font-size: x-small;
line-height: 32px;
background-color: #000000;
border-bottom-left-radius: 20%;
border-bottom-right-radius: 20%;
}
.pcjs-led {
float: left;
width: 8px;
height: 8px;
margin: 4px;
border: 1px solid black;
text-align: center;
vertical-align: middle;
background-color: #000000;
}
.pcjs-rled {
float: left;
width: 8px;
height: 8px;
margin: 4px;
border: 1px solid black;
border-radius: 50%;
text-align: center;
vertical-align: middle;
background-color: #ff0000;
max-width: 50%;
max-height: 50%;
}
.pcjs-swlbl {
text-align: center;
font-size: 40%;
line-height: 16px;
background-color: #000000;
border-top-left-radius: 20%;
border-top-right-radius: 20%;
}
.pcjs-swpad {
height: 32px;
background-color: #000000;
}
.pcjs-switch {
height: 10px;
width: 28px;
margin-top: 0;
max-width: 90%;
background-color: #00ff00;
}
.pcjs-screen {
clear: both;
height: auto;
position: relative;
line-height: 0;
}
.pcjs-screen textarea {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
opacity: 0;
border: 0;
padding: 0;
line-height: 0;
}
.pcjs-reference {
float: left;
font-size: x-small;
}
.pcjs-reference a {
text-decoration: none;
}
.pcjs-copyright {
float: right;
font-size: x-small;
}
.pcjs-copyright a {
text-decoration: none;
}
@media screen and (max-width: 800px) {
.pcjs-textarea {
width: 100% !important;
}
.pcjs-registers {
width: 100% !important;
max-width: none !important;
padding-left: 0 !important;
padding-right: 0 !important;
}
.pdp11-device {
width: 98% !important;
max-width: none !important;
margin-left: 8px !important;
padding-left: 0 !important;
padding-right: 0 !important;
}
}
@media screen and (min-width: 1200px) {
.machine-left {
max-width: 48%;
float: left;
}
.machine-right {
max-width: 48%;
float: left;
margin-left: 30px;
}
.machine-right + * {
clear: both;
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,162 @@
@CHARSET "UTF-8";
.page {
margin: 2% 2%;
padding: 2% 2%;
min-width: 30em;
overflow: auto;
font-size: large;
font-family: Helvetica, Arial, sans-serif;
background: #303030;
color: #ccc;
}
.page-header {
}
.page-header-title {
text-align: center;
}
.page a {
color: #7fc07f;
text-decoration: none;
}
a.footlink, a.paralink {
text-decoration: none;
}
a.footlink:link, a.paralink:link {
color: blue;
}
a.footlink:visited, a.paralink:visited {
color: blue;
}
.galleryitem {
float: left;
width: 200px;
}
.item {
float: left;
width: 2em;
text-indent: 1em;
}
.list {
margin-left: 3em;
text-indent: 0;
text-align: justify;
}
ul {
list-style: none;
}
div.pnumber {
float: left;
width: 2em;
text-indent: 1em;
}
div.pitem {
margin-left: 10em;
}
p.indent, .justified p {
text-indent: 2em;
text-align: justify;
line-height: 1.5em;
}
p.noindent {
text-indent: 0;
text-align: justify;
}
p.center, .center {
text-align: center;
}
li.para {
margin-top: 1em;
margin-bottom: 1em;
}
.left {
text-align: left;
}
.right {
text-align: right;
}
blockquote.tag {
font-size: small;
font-family: Monaco, Fixed, monospace;
margin-top: 0;
margin-bottom: 0;
}
.blockquote {
padding-left: 1em;
text-indent: 0;
text-align: justify;
}
.italics {
font-style: italic;
}
.medium {
font-size: medium;
}
.small {
font-size: x-small;
}
.smallcaps {
font-variant: small-caps;
}
.strike {
text-decoration: line-through;
}
.summation, .bracelist {
display: inline-block;
position: relative;
vertical-align: middle;
text-align: center;
margin-bottom: 0.5ex;
text-indent: 0;
}
.bracelist-symbol {
font-size: 3em;
vertical-align: -40%;
}
.summation .summation-lower, .summation .summation-upper, .bracelist-item {
display: block;
font-size: 75%;
text-align: center;
}
.summation .summation-upper {
margin-bottom: 0;
margin-left: 0.8ex;
font-style: italic;
}
.summation .summation-lower{
margin-bottom: -0.6ex;
font-style: italic;
}
.summation .summation-symbol {
font-size: 2em;
}
p sup {
vertical-align: baseline;
position: relative;
bottom: .5em;
font-size: small;
}
p sub {
vertical-align: baseline;
position: relative;
bottom: -.5em;
font-size: small;
}
.footnote {
font-size: medium;
text-indent: 1em;
text-align: justify;
margin-top: .5em;
}
.image-right {
float: right;
margin-left: 1em;
margin-top: 1em;
margin-bottom: 1em;
}
.image-caption {
font-size: small;
text-align: center;
}

View file

@ -0,0 +1,452 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- author="Jeff Parsons (@jeffpar)" website="http://www.pcjs.org/" created="2012-05-05" modified="2014-02-23" license="http://www.gnu.org/licenses/gpl.html" -->
<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp "&#160;"> <!ENTITY ne "&#8800;"> <!ENTITY le "&#8804;"> <!ENTITY ge "&#8805;">
<!ENTITY times "&#215;"> <!ENTITY sdot "&#8901;"> <!ENTITY divide "&#247;">
<!ENTITY copy "&#169;"> <!ENTITY Sigma "&#931;"> <!ENTITY sigma "&#963;"> <!ENTITY sum "&#8721;"> <!ENTITY lbrace "&#123;">
]>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template name="documentStyles">
<link rel="stylesheet" type="text/css" href="/versions/pcx86/1.32.0/document.css"/>
</xsl:template>
<xsl:template match="title">
<h1><xsl:apply-templates/></h1>
</xsl:template>
<xsl:template name="p">
<xsl:if test="@id">
<a name="{@id}"></a>
</xsl:if>
<xsl:choose>
<xsl:when test="not(@class)">
<p><xsl:apply-templates/></p>
</xsl:when>
<xsl:otherwise>
<p class="{@class}"><xsl:apply-templates/></p>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="p">
<xsl:call-template name="p"/>
</xsl:template>
<xsl:template match="br">
<br/>
</xsl:template>
<xsl:template match="p[@number]">
<div class="pnumber">
<xsl:choose>
<xsl:when test="not(@number) or @number = ''">&nbsp;</xsl:when>
<xsl:otherwise><xsl:value-of select="@number"/></xsl:otherwise>
</xsl:choose>
</div>
<div class="pitem">
<xsl:call-template name="p"/>
</div>
</xsl:template>
<xsl:template match="span">
<xsl:choose>
<xsl:when test="not(@class)">
<span><xsl:apply-templates/></span>
</xsl:when>
<xsl:when test="@class = 'italics'">
<em><xsl:apply-templates/></em>
</xsl:when>
<xsl:otherwise>
<span class="{@class}"><xsl:apply-templates/></span>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="h2">
<h2><xsl:apply-templates/></h2>
</xsl:template>
<xsl:template match="h3">
<h3><xsl:apply-templates/></h3>
</xsl:template>
<xsl:template match="h4">
<h4><xsl:apply-templates/></h4>
</xsl:template>
<xsl:template match="h5">
<h5><xsl:apply-templates/></h5>
</xsl:template>
<xsl:template match="h6">
<h6><xsl:apply-templates/></h6>
</xsl:template>
<xsl:template match="em">
<em><xsl:apply-templates/></em>
</xsl:template>
<xsl:template match="strong">
<strong><xsl:apply-templates/></strong>
</xsl:template>
<xsl:template match="a">
<a href="{@href}" target="{@target}"><xsl:apply-templates/></a>
</xsl:template>
<xsl:template match="ol">
<blockquote><ol><xsl:apply-templates/></ol></blockquote>
</xsl:template>
<xsl:template match="ul">
<blockquote><ul><xsl:apply-templates/></ul></blockquote>
</xsl:template>
<xsl:template match="li">
<li><xsl:apply-templates/></li>
</xsl:template>
<xsl:template match="img">
<div><img src="{@src}" alt="image"/></div>
</xsl:template>
<xsl:template match="pre">
<pre><xsl:apply-templates/></pre>
</xsl:template>
<xsl:template match="figure">
<xsl:choose>
<xsl:when test="@pos">
<div class="{@pos}"><img src="{@ref}" alt="{.}"/><br/><xsl:value-of select="."/></div>
</xsl:when>
<xsl:otherwise>
<div><img src="{@ref}" alt="{.}"/><br/><xsl:value-of select="."/></div>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="sub">
<sub><xsl:apply-templates/></sub>
</xsl:template>
<xsl:template match="sup">
<sup><xsl:apply-templates/></sup>
</xsl:template>
<xsl:template match="lt">&lt;</xsl:template>
<xsl:template match="gt">&gt;</xsl:template>
<xsl:template match="ne">&ne;</xsl:template>
<xsl:template match="le">&le;</xsl:template>
<xsl:template match="ge">&ge;</xsl:template>
<xsl:template match="times">&times;</xsl:template>
<xsl:template match="dot">&sdot;</xsl:template>
<xsl:template match="divide">&divide;</xsl:template>
<xsl:template match="sigma">&sigma;</xsl:template>
<xsl:template match="summation">
<span class="summation">
<span class="summation-upper"><xsl:value-of select="@upper"/></span>
<span class="summation-symbol">&sum;</span>
<span class="summation-lower"><xsl:value-of select="@lower"/></span>
</span>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="bracelist">
<span class="bracelist-symbol">&lbrace;</span>
<span class="bracelist">
<xsl:for-each select="item">
<span class="bracelist-item"><xsl:apply-templates/></span>
</xsl:for-each>
</span>
</xsl:template>
<xsl:template match="footlink">
<xsl:variable name="docID" select="/document/@id"/>
<a class="footlink" id="fn{$docID}_ref{@n}" href="#fn{$docID}_{@n}"><sup><xsl:if test="@quoted"><xsl:text>[</xsl:text></xsl:if><xsl:value-of select="@n"/><xsl:if test="@quoted"><xsl:text>]</xsl:text></xsl:if></sup></a>
</xsl:template>
<xsl:template match="footnote">
<xsl:variable name="docID" select="/document/@id"/>
<div class="footnote"><a id="fn{$docID}_{@n}" href="#fn{$docID}_ref{@n}"><sup><xsl:value-of select="@n"/></sup></a><xsl:text> </xsl:text>
<xsl:apply-templates/>
</div>
</xsl:template>
<xsl:template name="authors">
<xsl:for-each select="author"><xsl:if test="position() != 1"><xsl:text>, </xsl:text></xsl:if><xsl:if test="position() != 1 and position() = last()"><xsl:text>and </xsl:text></xsl:if><xsl:value-of select="."/></xsl:for-each>
</xsl:template>
<xsl:template name="formatDate">
<xsl:param name="date"/>
<xsl:param name="format">MDY</xsl:param>
<xsl:variable name="year">
<xsl:value-of select="substring-before($date,'-')"/>
</xsl:variable>
<xsl:variable name="mon-day">
<xsl:value-of select="substring-after($date,'-')"/>
</xsl:variable>
<xsl:variable name="mon">
<xsl:value-of select="substring-before($mon-day,'-')"/>
</xsl:variable>
<xsl:variable name="full-day">
<xsl:value-of select="substring-after($mon-day,'-')"/>
</xsl:variable>
<xsl:variable name="day">
<xsl:choose>
<xsl:when test="substring($full-day,1,1) = '0'"><xsl:value-of select="substring($full-day,2)"/></xsl:when>
<xsl:otherwise><xsl:value-of select="$full-day"/></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:choose>
<xsl:when test="$mon = '01'">January </xsl:when>
<xsl:when test="$mon = '02'">February </xsl:when>
<xsl:when test="$mon = '03'">March </xsl:when>
<xsl:when test="$mon = '04'">April </xsl:when>
<xsl:when test="$mon = '05'">May </xsl:when>
<xsl:when test="$mon = '06'">June </xsl:when>
<xsl:when test="$mon = '07'">July </xsl:when>
<xsl:when test="$mon = '08'">August </xsl:when>
<xsl:when test="$mon = '09'">September </xsl:when>
<xsl:when test="$mon = '10'">October </xsl:when>
<xsl:when test="$mon = '11'">November </xsl:when>
<xsl:when test="$mon = '12'">December </xsl:when>
<xsl:when test="$mon = '00'"/> </xsl:choose>
<xsl:if test="$day != '0' and $format = 'MDY'">
<xsl:value-of select="$day"/><xsl:text>, </xsl:text>
</xsl:if>
<xsl:value-of select="$year"/>
</xsl:template>
<xsl:template match="gallery">
<h2><xsl:value-of select="description"/></h2>
<div class="gallery">
<xsl:apply-templates select="item" mode="gallery"/>
</div>
<div style="clear:both;"></div>
</xsl:template>
<xsl:template match="item" mode="gallery">
<div class="galleryitem">
<a href="{@ref}"><img src="/versions/images/current/pdf-192.jpg" alt="{.}"/></a><br/>
<div style="font-size:small; text-align:center;"><xsl:value-of select="."/></div>
</div>
</xsl:template>
<xsl:template match="list[@type = 'timeline']">
<xsl:if test="not(description)">
<h2>Timeline</h2>
</xsl:if>
<xsl:if test="description">
<h2><xsl:value-of select="description"/></h2>
</xsl:if>
<blockquote>
<xsl:apply-templates select="item" mode="timeline"/>
</blockquote>
</xsl:template>
<xsl:template match="item" mode="timeline">
<xsl:if test="@ref">
<xsl:variable name="documentFile"><xsl:value-of select="$rootDir"/><xsl:value-of select="@ref"/></xsl:variable>
<xsl:apply-templates select="document($documentFile)/document" mode="withDate">
<xsl:with-param name="itemRef" select="@ref"/>
</xsl:apply-templates>
</xsl:if>
<xsl:if test="not(@ref)">
<h3><xsl:call-template name="formatDate"><xsl:with-param name="date" select="@date"/></xsl:call-template></h3>
<blockquote>
<xsl:value-of select="."/>
</blockquote>
</xsl:if>
</xsl:template>
<xsl:template match="list[@type = 'people']">
<xsl:if test="not(description)">
<h2>People</h2>
</xsl:if>
<xsl:if test="description">
<h2><xsl:value-of select="description"/></h2>
</xsl:if>
<blockquote>
<xsl:apply-templates select="item" mode="people"/>
</blockquote>
</xsl:template>
<xsl:template match="item" mode="people">
<h3><xsl:value-of select="name"/></h3>
<xsl:apply-templates select="list"/>
</xsl:template>
<xsl:template match="list[@type = 'documents']">
<xsl:if test="description"><h2><xsl:value-of select="description"/></h2></xsl:if>
<ul>
<xsl:apply-templates select="item" mode="document"/>
</ul>
</xsl:template>
<xsl:template match="item" mode="document">
<xsl:variable name="documentFile"><xsl:value-of select="$rootDir"/><xsl:value-of select="@ref"/></xsl:variable>
<xsl:apply-templates select="document($documentFile)/document">
<xsl:with-param name="itemRef" select="@ref"/>
</xsl:apply-templates>
</xsl:template>
<xsl:template match="document">
<xsl:param name="itemRef"/>
<li>
<xsl:call-template name="documentSummary"><xsl:with-param name="itemRef" select="$itemRef"/></xsl:call-template>
</li>
</xsl:template>
<xsl:template match="document" mode="withDate">
<xsl:param name="itemRef"/>
<h3><xsl:call-template name="formatDate"><xsl:with-param name="date" select="date"/><xsl:with-param name="format" select="MY"/></xsl:call-template></h3>
<blockquote>
<p>
<xsl:call-template name="documentSummary"><xsl:with-param name="itemRef" select="$itemRef"/><xsl:with-param name="multiLine" select="'true'"/></xsl:call-template>
</p>
</blockquote>
</xsl:template>
<xsl:template name="documentSummary">
<xsl:param name="itemRef"/>
<xsl:param name="multiLine">false</xsl:param>
<xsl:choose>
<xsl:when test="content|include">
<a href="{$itemRef}"><xsl:value-of select="title"/></a>
<xsl:if test="@ref">
<span class="small">
<xsl:text> [</xsl:text><a href="{@ref}">Original</a><xsl:text>]</xsl:text>
</span>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<a href="{$itemRef}"><xsl:value-of select="title"/></a>
</xsl:otherwise>
</xsl:choose>
<xsl:if test="copy">
<span class="small">
<xsl:text> [</xsl:text><a href="{copy/@ref}"><xsl:value-of select="copy"/></a><xsl:text>]</xsl:text>
</span>
</xsl:if>
<xsl:if test="author"><xsl:if test="$multiLine = 'true'"><br/></xsl:if><span class="medium"><xsl:text> by </xsl:text><xsl:call-template name="authors"/></span></xsl:if>
<xsl:if test="source">
<span class="small">
<br/>
<xsl:text>[Source: </xsl:text>
<xsl:if test="site">
<a href="{site/@url}"><xsl:value-of select="site"/></a>
</xsl:if>
<xsl:if test="not(site)">
<a href="{source/@url}"><xsl:value-of select="source"/></a>
</xsl:if>
<xsl:text>]</xsl:text>
</span>
</xsl:if>
</xsl:template>
<xsl:template match="list[@type = 'resources']">
<xsl:if test="not(description)">
<h2>Resources</h2>
</xsl:if>
<xsl:if test="description">
<h2><xsl:value-of select="description"/></h2>
</xsl:if>
<blockquote>
<xsl:apply-templates select="item" mode="resources"/>
</blockquote>
</xsl:template>
<xsl:template match="item" mode="resources">
<h3><xsl:value-of select="description"/></h3>
<xsl:apply-templates select="list"/>
</xsl:template>
<xsl:template match="list[@type = 'links']">
<xsl:if test="description">
<h4><xsl:value-of select="description"/></h4>
</xsl:if>
<ul>
<xsl:apply-templates select="item" mode="links"/>
</ul>
</xsl:template>
<xsl:template match="item" mode="links">
<li><a href="{@ref}"><xsl:value-of select="."/></a></li>
</xsl:template>
<xsl:template match="list[not(@type)]">
<xsl:if test="description">
<h2><xsl:value-of select="description"/></h2>
</xsl:if>
<blockquote>
<xsl:apply-templates select="item|tag" mode="outer"/>
</blockquote>
</xsl:template>
<xsl:template match="item" mode="outer">
<xsl:if test="description">
<h3><xsl:value-of select="description"/></h3>
</xsl:if>
<xsl:apply-templates select="list|item|tag" mode="inner"/>
</xsl:template>
<xsl:template match="list" mode="inner">
<xsl:if test="description">
<h4><xsl:value-of select="description"/></h4>
</xsl:if>
<ul>
<xsl:apply-templates select="list|item|para|tag" mode="inner"/>
</ul>
</xsl:template>
<xsl:template name="innerlist">
<xsl:if test="description">
<xsl:value-of select="description"/>
</xsl:if>
<ul>
<xsl:apply-templates select="list|item|para|tag" mode="inner"/>
</ul>
</xsl:template>
<xsl:template match="item" mode="inner">
<xsl:choose>
<xsl:when test="@ref">
<li><a href="{@ref}"><xsl:apply-templates/></a></li>
</xsl:when>
<xsl:when test="description">
<li><xsl:call-template name="innerlist"/></li>
</xsl:when>
<xsl:otherwise>
<li><xsl:apply-templates/></li>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="para" mode="inner">
<li class="para"><xsl:apply-templates/></li>
</xsl:template>
<xsl:template match="tag" mode="outer">
<xsl:call-template name="tag"/>
</xsl:template>
<xsl:template match="tag" mode="inner">
<xsl:call-template name="tag"/>
</xsl:template>
<xsl:template name="tag">
<blockquote class="tag">
<xsl:text>&lt;</xsl:text><xsl:if test="@href"><a href="{@href}"><xsl:value-of select="@name"/></a></xsl:if><xsl:if test="not(@href)"><xsl:value-of select="@name"/></xsl:if><xsl:for-each select="attr"><xsl:text> </xsl:text><xsl:value-of select="@name"/><xsl:text>="</xsl:text><xsl:value-of select="@value"/><xsl:text>"</xsl:text></xsl:for-each>
<xsl:choose>
<xsl:when test="tag"><xsl:text>&gt;</xsl:text><xsl:apply-templates mode="inner"/><xsl:text>&lt;/</xsl:text><xsl:value-of select="@name"/><xsl:text>&gt;</xsl:text></xsl:when>
<xsl:when test="normalize-space(.) != ''"><xsl:text>&gt;</xsl:text><xsl:value-of select="."/><xsl:text>&lt;/</xsl:text><xsl:value-of select="@name"/><xsl:text>&gt;</xsl:text></xsl:when>
<xsl:otherwise><xsl:text>/&gt;</xsl:text></xsl:otherwise>
</xsl:choose>
</blockquote>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,49 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- author="Jeff Parsons (@jeffpar)" website="http://www.pcjs.org/" created="2012-05-05" modified="2014-02-23" license="http://www.gnu.org/licenses/gpl.html" -->
<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp "&#160;"> <!ENTITY sect "&#167;"> <!ENTITY copy "&#169;"> <!ENTITY para "&#182;"> <!ENTITY ndash "&#8211;"> <!ENTITY mdash "&#8212;">
<!ENTITY lsquo "&#8216;"> <!ENTITY rsquo "&#8217;"> <!ENTITY ldquo "&#8220;"> <!ENTITY rdquo "&#8221;"> <!ENTITY dagger "&#8224;"> <!ENTITY Dagger "&#8225;">
]>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output doctype-system="about:legacy-compat" method="html"/>
<xsl:include href="/versions/pcx86/1.32.0/common.xsl"/>
<xsl:include href="/versions/pcx86/1.32.0/components.xsl"/>
<xsl:template match="/machine">
<html lang="en">
<head>
<title><xsl:value-of select="$SITEHOST"/></title>
<xsl:call-template name="commonStyles"/>
<xsl:call-template name="componentStyles"/>
</head>
<body>
<div class="common">
<xsl:call-template name="commonTop"/>
<div class="common-middle">
<p></p>
<div id="{@id}" class="machine {@class}js">
<xsl:call-template name="component">
<xsl:with-param name="machine" select="@id"/>
<xsl:with-param name="component" select="'machine'"/>
<xsl:with-param name="class"><xsl:value-of select="@class"/>js</xsl:with-param>
<xsl:with-param name="parms"><xsl:if test="@parms">,<xsl:value-of select="@parms"/></xsl:if></xsl:with-param>
</xsl:call-template>
</div>
</div>
<xsl:call-template name="commonBottom"/>
</div>
<xsl:call-template name="componentScripts">
<xsl:with-param name="component">
<xsl:choose>
<xsl:when test="debugger"><xsl:value-of select="@class"/>-dbg</xsl:when>
<xsl:otherwise><xsl:value-of select="@class"/></xsl:otherwise>
</xsl:choose>
</xsl:with-param>
</xsl:call-template>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,247 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- author="Jeff Parsons (@jeffpar)" website="http://www.pcjs.org/" created="2014-04-10" modified="2014-04-10" license="http://www.gnu.org/licenses/gpl.html" -->
<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp "&#160;"> <!ENTITY sect "&#167;"> <!ENTITY copy "&#169;"> <!ENTITY para "&#182;"> <!ENTITY ndash "&#8211;"> <!ENTITY mdash "&#8212;">
<!ENTITY lsquo "&#8216;"> <!ENTITY rsquo "&#8217;"> <!ENTITY ldquo "&#8220;"> <!ENTITY rdquo "&#8221;"> <!ENTITY dagger "&#8224;"> <!ENTITY Dagger "&#8225;">
]>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output doctype-system="about:legacy-compat" method="html"/>
<xsl:include href="/versions/pcx86/1.32.0/common.xsl"/>
<xsl:include href="/versions/pcx86/1.32.0/components.xsl"/>
<xsl:template match="/manifest[@type = 'document']">
<html lang="en">
<head>
<title><xsl:value-of select="$SITEHOST"/></title>
<xsl:call-template name="commonStyles"/>
<xsl:call-template name="componentStyles"/>
</head>
<body>
<div class="common">
<xsl:call-template name="commonTop"/>
<div class="common-middle">
<h4>Document Manifest</h4>
<div class="common-sidebar">
<ul class="common-list-data">
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Title'"/>
<xsl:with-param name="node" select="title"/>
<xsl:with-param name="default">None</xsl:with-param>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Version'"/>
<xsl:with-param name="node" select="version"/>
<xsl:with-param name="default" select="''"/>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Source'"/>
<xsl:with-param name="node" select="source"/>
<xsl:with-param name="default" select="''"/>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Documents'"/>
<xsl:with-param name="node" select="document"/>
<xsl:with-param name="default"><xsl:value-of select="title"/> <xsl:if test="version != ''"><xsl:text> </xsl:text><xsl:value-of select="version"/></xsl:if></xsl:with-param>
</xsl:call-template>
</ul>
</div>
<div class="common-main">
<p><xsl:value-of select="desc"/></p>
<xsl:call-template name="commonBottom"/>
</div>
</div>
</div>
</body>
</html>
</xsl:template>
<xsl:template match="/manifest[@type = 'software' or not(@type)]">
<xsl:variable name="machineClass">
<xsl:choose>
<xsl:when test="machine/@class"><xsl:value-of select="machine/@class"/></xsl:when>
<xsl:otherwise><xsl:value-of select="$APPCLASS"/></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<html lang="en">
<head>
<title><xsl:value-of select="$SITEHOST"/></title>
<xsl:call-template name="commonStyles"/>
<xsl:call-template name="componentStyles"/>
</head>
<body>
<div class="common">
<xsl:call-template name="commonTop"/>
<div class="common-middle">
<h4>Software Manifest</h4>
<div class="common-sidebar">
<ul class="common-list-data">
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Title'"/>
<xsl:with-param name="node" select="title"/>
<xsl:with-param name="default">None</xsl:with-param>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Version'"/>
<xsl:with-param name="node" select="version"/>
<xsl:with-param name="default">Unknown</xsl:with-param>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Type'"/>
<xsl:with-param name="node" select="type"/>
<xsl:with-param name="default">None</xsl:with-param>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Category'"/>
<xsl:with-param name="node" select="category"/>
<xsl:with-param name="default">None</xsl:with-param>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Created'"/>
<xsl:with-param name="node" select="creationDate"/>
<xsl:with-param name="default" select="''"/>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Creators'"/>
<xsl:with-param name="node" select="creator"/>
<xsl:with-param name="default" select="''"/>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label"><xsl:if test="creationDate">Updated</xsl:if><xsl:if test="not(creationDate)">Released</xsl:if></xsl:with-param>
<xsl:with-param name="node" select="releaseDate"/>
<xsl:with-param name="default">Unknown</xsl:with-param>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Company'"/>
<xsl:with-param name="node" select="company"/>
<xsl:with-param name="default" select="''"/>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Authors'"/>
<xsl:with-param name="node" select="author"/>
<xsl:with-param name="default" select="''"/>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Contributors'"/>
<xsl:with-param name="node" select="contributor"/>
<xsl:with-param name="default" select="''"/>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Publisher'"/>
<xsl:with-param name="node" select="publisher"/>
<xsl:with-param name="default" select="''"/>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'License'"/>
<xsl:with-param name="node" select="license"/>
<xsl:with-param name="default" select="''"/>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Source'"/>
<xsl:with-param name="node" select="source"/>
<xsl:with-param name="default" select="''"/>
</xsl:call-template>
<xsl:call-template name="listItem">
<xsl:with-param name="label" select="'Disks'"/>
<xsl:with-param name="node" select="disk"/>
<xsl:with-param name="default"><xsl:value-of select="title"/> <xsl:if test="version != ''"><xsl:text> </xsl:text><xsl:value-of select="version"/></xsl:if></xsl:with-param>
</xsl:call-template>
</ul>
</div>
<div class="common-main">
<xsl:for-each select="machine[not(@type) or @type = 'default']">
<xsl:call-template name="machine">
<xsl:with-param name="href" select="@href"/>
<xsl:with-param name="state" select="@state"/>
</xsl:call-template>
</xsl:for-each>
<xsl:if test="not(machine[not(@type) or @type = 'default'])">
<p>No default machine specified for '<xsl:value-of select="title"/>' in manifest.xml</p>
</xsl:if>
<xsl:call-template name="commonBottom"/>
</div>
</div>
</div>
<xsl:call-template name="componentScripts">
<xsl:with-param name="component">
<xsl:choose>
<xsl:when test="machine/@debugger"><xsl:value-of select="$machineClass"/>-dbg</xsl:when>
<xsl:otherwise><xsl:value-of select="$machineClass"/></xsl:otherwise>
</xsl:choose>
</xsl:with-param>
</xsl:call-template>
</body>
</html>
</xsl:template>
<xsl:template name="listItem">
<xsl:param name="label"/>
<xsl:param name="node"/>
<xsl:param name="default">Unknown</xsl:param>
<xsl:if test="$node != '' or $default != ''">
<li><xsl:value-of select="$label"/>
<ul class="common-list-data-items">
<xsl:for-each select="$node">
<xsl:variable name="desc">
<xsl:choose>
<xsl:when test="desc"><xsl:value-of select="desc"/></xsl:when>
<xsl:when test="org"><xsl:value-of select="org"/></xsl:when>
<xsl:otherwise/>
</xsl:choose>
</xsl:variable>
<li title="{$desc}">
<xsl:variable name="value">
<xsl:choose>
<xsl:when test="name">
<xsl:value-of select="name"/>
</xsl:when>
<xsl:when test="normalize-space(./text()) != ''">
<xsl:value-of select="normalize-space(./text())"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$default"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="href">
<xsl:if test="@href"><xsl:value-of select="@href"/></xsl:if>
</xsl:variable>
<xsl:choose>
<xsl:when test="$href != ''">
<a href="{$href}"><xsl:value-of select="$value"/></a>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$value"/>
</xsl:otherwise>
</xsl:choose>
<xsl:if test="page">
<ul class="common-list-data-subitems">
<xsl:for-each select="page">
<li>
<xsl:if test="@href">
<a href="{$href}{@href}"><xsl:value-of select="."/></a>
</xsl:if>
<xsl:if test="not(@href)">
<xsl:value-of select="."/>
</xsl:if>
</li>
</xsl:for-each>
</ul>
</xsl:if>
</li>
</xsl:for-each>
<xsl:if test="not($node)">
<xsl:if test="@href">
<a href="{@href}"><xsl:value-of select="$default"/></a>
</xsl:if>
<xsl:if test="not(@href)">
<xsl:value-of select="$default"/>
</xsl:if>
</xsl:if>
</ul>
</li>
</xsl:if>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- author="Jeff Parsons (@jeffpar)" website="http://www.pcjs.org/" created="2012-05-05" modified="2014-02-23" license="http://www.gnu.org/licenses/gpl.html" -->
<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp "&#160;"> <!ENTITY sect "&#167;"> <!ENTITY copy "&#169;"> <!ENTITY para "&#182;"> <!ENTITY ndash "&#8211;"> <!ENTITY mdash "&#8212;">
<!ENTITY lsquo "&#8216;"> <!ENTITY rsquo "&#8217;"> <!ENTITY ldquo "&#8220;"> <!ENTITY rdquo "&#8221;"> <!ENTITY dagger "&#8224;"> <!ENTITY Dagger "&#8225;">
]>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output doctype-system="about:legacy-compat" method="html"/>
<xsl:include href="/versions/pcx86/1.32.0/common.xsl"/>
<xsl:include href="/versions/pcx86/1.32.0/document.xsl"/>
<xsl:include href="/versions/pcx86/1.32.0/components.xsl"/>
<xsl:template match="/outline">
<xsl:variable name="machineClass">
<xsl:choose>
<xsl:when test="machine/@class"><xsl:value-of select="machine/@class"/></xsl:when>
<xsl:otherwise><xsl:value-of select="$MACHINECLASS"/></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<html lang="en">
<head>
<title><xsl:value-of select="title"/><xsl:text> | </xsl:text><xsl:value-of select="$SITEHOST"/></title>
<xsl:call-template name="commonStyles"/>
<xsl:call-template name="documentStyles"/>
<xsl:call-template name="componentStyles"/>
</head>
<body>
<div class="common">
<div class="page justified">
<xsl:apply-templates/>
</div>
</div>
<xsl:call-template name="componentScripts">
<xsl:with-param name="component">
<xsl:choose>
<xsl:when test="debugger"><xsl:value-of select="$machineClass"/>-dbg</xsl:when>
<xsl:otherwise><xsl:value-of select="$machineClass"/></xsl:otherwise>
</xsl:choose>
</xsl:with-param>
</xsl:call-template>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

View file

@ -0,0 +1,873 @@
(function(){/*
http://pcjs.org/modules/shared/lib/diskapi.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/dumpapi.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/reportapi.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/userapi.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/keys.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/strlib.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/usrlib.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/weblib.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/interrupts.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/messages.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/debugger.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/debugger.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/embed.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/defines.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/component.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/defines.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/panel.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/bus.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/memory.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/cpu.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86seg.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86cpu.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86fpu.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86func.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86help.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86mods.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86ops.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86op0f.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/chipset.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/rom.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/ram.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/keyboard.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/video.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/parallel.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/serial.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/mouse.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/disk.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/fdc.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/hdc.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/computer.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/state.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/save.js (C) Jeff Parsons 2012-2017
*/
var l,aa,ba={163840:[40,1,8,,254],184320:[40,1,9,,252],327680:[40,2,8,,255],368640:[40,2,9,,253],737280:[80,2,9,,249],1228800:[80,2,15,,249],1474560:[80,2,18,,240],2949120:[80,2,36,,240],21368320:[615,4,17],2494464:[203,2,12,512],5242880:[256,2,40,256],10485760:[512,2,40,256]},p={vo:0,xo:1,yo:2,dl:3,zo:4,Ao:5,Bo:6,Co:7,Do:8,Eo:9,Fo:10,Go:11,Ho:12,Io:13,Jo:14,Ko:15,Lo:16,Mo:17,No:18,Oo:19,Po:20,Qo:21,Ro:22,So:23,To:24,Uo:25,Vo:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,
"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,ue:65,Bi:66,Ci:67,Di:68,E:69,Ei:70,Fi:71,Gi:72,Hi:73,Ii:74,Ji:75,Ki:76,Li:77,Mi:78,Ni:79,Oi:80,Q:81,Pi:82,Qi:83,Ri:84,Si:85,Ti:86,Ui:87,Vi:88,Wi:89,og:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,ve:97,ql:98,sl:99,d:100,e:101,Cl:102,Dl:103,El:104,Fl:105,Vm:106,k:107,Wm:108,$m:109,n:110,gn:111,p:112,q:113,r:114,no:115,t:116,qo:117,ro:118,so:119,x:120,y:121,z:122,
"{":123,"|":124,"}":125,"~":126,Wo:127},ca={};ca[186]=p[";"];ca[187]=p["="];ca[188]=p[","];ca[189]=p["-"];ca[190]=p["."];ca[191]=p["/"];ca[192]=p["`"];ca[219]=p["["];ca[220]=p["\\"];ca[221]=p["]"];ca[222]=p["'"];ca[173]=p["-"];var da={};da[p["1"]]=p["!"];da[p["2"]]=p["@"];da[p["3"]]=p["#"];da[p["4"]]=p.$;da[p["5"]]=p["%"];da[p["6"]]=p["^"];da[p["7"]]=p["&"];da[p["8"]]=p["*"];da[p["9"]]=p["("];da[p["0"]]=p[")"];da[186]=p[":"];da[187]=p["+"];da[188]=p["<"];da[189]=p._;da[190]=p[">"];da[191]=p["?"];
da[192]=p["~"];da[219]=p["{"];da[220]=p["|"];da[221]=p["}"];da[222]=p['"'];da[173]=p._;da[61]=p["+"];da[59]=p[":"];
function ea(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0<a.indexOf(",");e&&(a=a.replace(/,/g,""));"#"==d?(b=8,d=null):"$"==d&&(b=16,d=null);null==d?a=a.substr(1):("0"==d&&(d=a.charAt(1),"b"==d&&e&&(b=2,d=null),"o"==d?(b=8,d=null):"x"==d&&(b=16,d=null)),null==d?a=a.substr(2):(d=a.charAt(a.length-1).toLowerCase(),"y"==d?(b=2,d=null):"."==d?(b=10,d=null):"h"==d&&(b=16,d=null),null==d&&(a=a.substr(0,a.length-1))));var f,d=a;((e=b)&&10!=e?16==e?d.match(/^[0-9a-f]+$/i):8==e?d.match(/^[0-7]+$/):2==e&&
d.match(/^[01]+$/):d.match(/^[0-9]+$/))&&!isNaN(f=parseInt(a,b))&&(c=f|0)}return c}function fa(a,b){var c,d="";b?32<b&&(b=32):b=32;for(var e=null==a||isNaN(a),f=c=c||b;0<b--;)f||(d=","+d,f=c),d=(e?"?":a&1?"1":"0")+d,a>>=1,f--;return d}function ha(a,b,c){var d="";if(!b||4<b)b=4;for(var e=0;e<b;e++)d&&(d=","+d),d=fa(a&255,8)+d,a>>=8;return(c?"0b":"")+d}
function ia(a,b,c){var d="";b?11<b&&(b=11):b=a&-16777216?11:a&-65536?8:6;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;)d=String.fromCharCode((a&7)+48)+d,a>>=3;return(c?"0o":"")+d}function r(a,b,c){var d="";b?8<b&&(b=8):b=a&-65536?8:4;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;){var e=a&15,e=e+(0<=e&&9>=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d}function u(a){return r(a,2,!0)}function v(a){return r(a,4,!0)}
function ja(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));d=c.indexOf("&");0<d&&(c=c.substr(0,d));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}function ka(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function ma(a,b){return-1!==a.indexOf(b,a.length-b.length)}var na={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function oa(a){return a.replace(/[&<>"']/g,function(a){return na[a]})}
function pa(a,b,c){return c?(" "+a).slice(-b):(a+" ").slice(0,b)}function qa(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}var ra={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",10:"LF",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"};
function sa(a,b,c){var d=0,e=a.length,f=0;for(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}var ta=Date.now||function(){return+new Date};function ua(){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 va=[31,28,31,30,31,30,31,31,30,31,30,31];
function wa(a,b){var c=0,d=1,e;for(e in a){if(d>=arguments.length)break;var f=a[e],g=arguments[d++],c=c&~f.vh|g<<f.shift&f.vh}return c}function xa(a,b){return(b&a.vh)>>a.shift}function ya(a,b){var c;if(Array.prototype.indexOf)return a.indexOf(b,c);c=c||0;0>c&&(c+=a.length);0>c&&(c=0);for(var d=a.length;c<d;c++)if(c in a&&a[c]===b)return c;return-1}
function Aa(a,b,c,d){var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a,f,e))});if(b&&"object"==
typeof b){var k="",m;for(m in b)b.hasOwnProperty(m)&&(k&&(k+="&"),k+=m+"="+encodeURIComponent(b[m]));k=k.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(f=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,f,e),g=[f,e]);return g}function Ba(){return"http://"+(window?window.location.host:"www.pcjs.org")}
function Ca(){return window?window.navigator.userAgent:""}function w(a){window&&window.alert(a)}function Ea(a){var b=!1;window&&(b=window.confirm(a));return b}var Fa=null;function Ga(){if(null==Fa){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}Fa=a}return Fa}
function Ha(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}function Ia(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function La(a){if(window){var b=Ca();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 Na(a){if(!Oa){var b,c={};if(window){b||(b=window.location.search.substr(1));for(var d,e=/\+/g,f=/([^&=]+)=?([^&]*)/g;d=f.exec(b);)c[decodeURIComponent(d[1].replace(e," "))]=decodeURIComponent(d[2].replace(e," "))}Oa=c}return Oa[a]}
function Qa(a,b,c,d){var e=null;b="data:application/"+b+(c?";base64":"")+",";b=La("Firefox")?b+(c?a:encodeURIComponent(a)):b+(c?a:encodeURI(a));d&&(e=document.createElement("a"),"string"!=typeof e.download&&(e=null));e?(e.href=b,e.download=d,document.body.appendChild(e),e.click(),document.body.removeChild(e),a="Check your Downloads folder for "+d+"."):(window.open(b),a="Check your browser for a new window/tab containing the requested data"+(d?" ("+d+")":"")+".");return a}
function Ra(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}function Sa(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 Oa=null,Ta={init:[],show:[],exit:[]},Ua=!1,Va=!1,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){Ta.init.push(a)}function $a(a){if(Xa)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){w(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function bb(a){!Xa&&a?(Xa=!0,Ua&&cb("init"),Va&&cb("show")):Xa=a}function cb(a){Ta[a]&&$a(Ta[a])}Ya("onload",function(){Ua=!0;$a(Ta.init)});Ya("onpageshow",function(){Va=!0;$a(Ta.show)});
Ya(La("Opera")||La("iOS")?"onunload":"onbeforeunload",function(){$a(Ta.exit)});function db(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.al=b.comment;this.Ok=b;b=this.id.indexOf(".");0>b?this.xd=this.id:(this.ce=this.id.substr(0,b),this.xd=this.id.substr(b+1));this[a]=c;this.la={ready:!1,Ff:!1,hh:!1,ic:!1,error:!1};this.zg=null;this.la.error=!1;this.qa={};this.ha=null;this.wc=d||0;eb.push(this)}
function fb(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 gb(a,b){b||(b=db);a.prototype=fb(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var hb=window.PCjs.Machines||(window.PCjs.Machines={}),eb=window.PCjs.Components||(window.PCjs.Components=[])}else hb={},eb=[];
function ib(a,b,c){hb[a]&&b&&(hb[a][b]=c)}function jb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<eb.length;b++){var d=eb[b];a&&d.id.indexOf(a)||c.push(d)}return c}function lb(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<eb.length;c++)if(eb[c].id===a)return eb[c]}return null}
function mb(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<eb.length;d++)if(c)c==eb[d]&&(c=null);else if(!(a!=eb[d].type||b&&eb[d].id.indexOf(b)))return eb[d]}return null}function nb(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){w(c.message+" ("+a+")")}return b}function ob(a,b,c){var d;b&&(void 0===d&&(d="Panel"),(d=mb(d,a.id))&&(b=d.qa[b])&&a.Pb(null,c,b))}
function pb(a,b){b=qb(b.parentNode,"pcx86-control");for(var c=0;c<b.length;c++)for(var d=b[c].childNodes,e=0;e<d.length;e++){var f=d[e];if(1===f.nodeType){var g=f.getAttribute("class");if(g)for(var h=g.split(" "),k=0;k<h.length;k++)switch(g=h[k],g){case "pcx86-binding":(g=nb(f))&&g.binding&&a.Pb(g.type,g.binding,f,g.value),k=h.length}}}}
function qb(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}
db.prototype={constructor:db,parent:null,toString:function(){return this.name?this.name:this.id||this.type},Pb:function(a,b,c){switch(b){case "clear":return this.qa[b]||(this.qa[b]=c,c.onclick=function(a){return function(){a.qa.print&&(a.qa.print.value="")}}(this)),!0;case "print":return this.qa[b]||(this.Gf=this.qa[b]=c,c.value="",this.O=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}}(c),
this.Na=function(a){this.O(a,this.xd)}),!0;default:return!1}},log:function(){},O:function(){},status:function(a){this.O(this.xd+": "+a)},Na:function(a,b,c){c=c||this.type;b||w((c?c+": ":"")+a)},hc:function(){return this.la.ic=!0},gc:function(a,b){b&&(this.la.ic=!1);return!0}};function x(a,b,c,d,e,f,g){a.ha&&(!0===g?g=0:null==g&&(g=a.wc),rb(a.ha,a,b,c,d,e,f,g))}function y(a,b,c,d){a.ha&&(!0===c||z(a,c|0))&&a.ha.message(b,d)}
function z(a,b){if(a.ha){a===a.ha?b|=0:b=b||a.wc;var c=a.ha.wc&b;return!!b&&c===b||!!(c&a.ha.rl)}return!1}function sb(a,b){if(a.la.hh)return a.la.Ff=!1,a.la.hh=!1;if(a.la.error)return a.O(a.toString()+" error"),!1;a.la.Ff=b;return a.la.Ff}function tb(a,b){a.la.Ff&&(b?a.la.hh=!0:void 0===b&&a.O(a.toString()+" busy"));return a.la.Ff}function ub(a,b){a.la.error||(a.la.ready=!1!==b,a.la.ready&&(b=a.zg,a.zg=null,b&&b()))}function vb(a,b){b&&(a.la.ready?b():a.zg=b);return a.la.ready}
function wb(a,b){a.la.error=!0;a.Na(b)}Array.prototype.indexOf||(Array.prototype.indexOf=function(a,b){b=b||0;for(var c=this.length;b<c;b++)if(this[b]===a)return b;return-1});Array.isArray||(Array.isArray=function(a){return"[object Array]"===Object.prototype.toString.call(a)});
Function.prototype.bind||(Function.prototype.bind=function(a){function b(){return e.apply(this instanceof c&&a?this:a,d.concat(Array.prototype.slice.call(arguments)))}function c(){}if("function"!=typeof this)throw new TypeError("Function.prototype.bind: non-callable object");var d=Array.prototype.slice.call(arguments,1),e=this;c.prototype=this.prototype;b.prototype=new c;return b});
var xb="undefined"!==typeof ArrayBuffer,yb={Kg:4,Kc:5,Jd:6,ed:7,fd:8,ib:9,dc:11,ec:12,Je:4,Gj:60,Hj:83,yc:3,Vb:9,Oc:16,Jg:1,Lj:19,Nj:28,Pj:16,Oj:21,Mj:37,Jj:2,Ih:9,Kj:5,Ij:33,Kh:10,Jh:8,Uf:3,Tf:15,ck:51,dk:1,ek:2,fk:4,bk:32,Lh:15,hk:15,ab:16,bb:4,jk:11,ik:18,gk:24,fc:4,kk:2,pf:16,lk:17,Qh:18,mk:19,Ph:5,Rh:6,sk:2,rk:8,pk:9,qk:10,nk:10,Sh:10,Th:10,Rj:80,Tj:144,Qj:86,Sj:154,Vj:101,Xj:165,Uj:107,Wj:171,uk:70,wk:113,tk:76,vk:124,Zj:80,ak:128,Yj:86,$j:134,Wf:3,Vf:16,Yh:10,Xh:8,xk:51,zc:8,yk:17,zk:36,Sc:11,
Ak:16,Ke:10,od:2,Fh:18,Gh:7,Hh:15,Mh:12,Nh:7,Oh:11,Uh:18,Vh:7,Wh:15,Zh:15,$h:7,ai:13,ei:11,fi:7,gi:8,Bk:8,Ek:12,Ck:18,Dk:17,Fk:15,ci:8,bi:20,di:2,ji:3,Xf:9,ii:5,hi:11,li:4,ki:17,Gk:11},zb={Kg:0,Kc:0,Jd:0,ed:0,fd:0,ib:0,dc:1,ec:1,Je:3,Gj:14,Hj:16,yc:2,Vb:7,Oc:7,Jg:0,Lj:7,Nj:13,Pj:7,Oj:11,Mj:16,Jj:3,Ih:6,Kj:2,Ij:13,Kh:5,Jh:5,Uf:2,Tf:7,ck:23,dk:0,ek:1,fk:3,bk:17,Lh:7,hk:11,ab:7,bb:3,jk:7,ik:11,gk:15,fc:2,kk:3,pf:7,lk:8,Qh:8,mk:8,Ph:4,Rh:4,sk:2,rk:3,pk:5,qk:2,nk:3,Sh:5,Th:3,Rj:14,Tj:22,Qj:17,Sj:25,Vj:17,
Xj:25,Uj:20,Wj:28,uk:13,wk:21,tk:16,vk:24,Zj:13,ak:21,Yj:16,$j:24,Wf:2,Vf:7,Yh:5,Xh:5,xk:19,zc:5,yk:5,zk:17,Sc:3,Ak:5,Ke:3,od:0,Fh:8,Gh:5,Hh:9,Mh:5,Nh:5,Oh:4,Uh:5,Vh:5,Wh:4,Zh:7,$h:5,ai:8,ei:3,fi:4,gi:3,Bk:11,Ek:11,Ck:15,Dk:15,Fk:7,ci:5,bi:8,di:0,ji:2,Xf:6,ii:3,hi:6,li:3,ki:5,Gk:5},Ab={19:{0:"disk reset",1:"get status",2:"read drive @DL (@CH:@DH:@CL,@AL) into @ES:@BX",3:"write drive @DL (@CH:@DH:@CL,@AL) from @ES:@BX",4:"verify drive @DL (@CH:@DH:@CL,@AL)",5:"format drive @DL using @ES:@BX",8:"read drive @DL parameters",
21:"get drive @DL DASD type",22:"get drive @DL change line status",23:"set drive @DL DASD type",24:"set drive @DL media type"},21:{128:"open device",129:"close device",130:"program termination",131:"wait @CX:@DXus for event",132:"joystick support",133:"SYSREQ pressed",134:"wait @CX:@DXus",135:"move block (@CX words)",136:"get extended memory size",137:"processor to virtual mode",144:"device busy loop",145:"interrupt complete flag set"},33:{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 (input if @DL=FF)",7:"direct console input without echo",8:"read character (AL) from stdin without echo",9:"write 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 (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 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, 100ths=DL)",45:"set system time (hour=@CH, min=@CL, sec=@DH, 100ths=@DL)",46:"set verify flag @AL",47:"get disk transfer area (DTA=ES:BX)",48:"get DOS version (AL=major, AH=minor)",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(0)/set(1) switch character @DL (@AL)",
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 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(0)/set(1) attributes @CX of file $@DS:@DX (@AL)",
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 $@ES:@DI",87:"get(0)/set(1) file @BX date @DX and time @CX (@AL)",88:"get(0)/set(1) memory allocation strategy (@AL)",89:"get extended error information",90:"create temporary file $@DS:@DX with attributes @CX",91:"create file $@DS:@DX with attributes @CX",92:"lock(0)/unlock(1) file @BX region @CX:@DX length @SI:@DI (@AL)",
93:"critical error information (@AL)",96:"get fully-qualified filename from $@DS:@SI",99:"get lead byte table (@AL)",108:"extended open file $@DS:@SI"},65:{79:"check debugger loaded"}},Bb={cpu:1,seg:2,desc:4,tss:8,"int":16,fault:32,bus:64,mem:128,port:256,dma:512,pic:1024,timer:2048,cmos:4096,rtc:8192,8042:16384,chipset:32768,keyboard:65536,key:131072,video:262144,fdc:524288,hdc:1048576,disk:2097152,parallel:4194304,serial:8388608,mouse:16777216,speaker:33554432,computer:67108864,dos:134217728,data:268435456,
log:536870912,warn:1073741824,halt:-2147483648};function Cb(a){db.call(this,"Panel",a,Cb);this.L=this.V=this.ea=-1}gb(Cb);function Db(a,b,c,d){this.A=[a,b,c,d];this.B=null;void 0===a&&(this.A[0]=256*Math.random()|0,this.A[1]=256*Math.random()|0,this.A[2]=256*Math.random()|0,this.A[3]=255,this.B=null)}Db.prototype.toString=function(){this.B||(this.B="#"+r(this.A[0],2)+r(this.A[1],2)+r(this.A[2],2));return this.B};function Eb(a,b,c,d){this.x=a;this.y=b;this.bd=c;this.A=d}
Eb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.bd&&b>=this.y&&b<this.y+this.A};function Fb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new Eb(a.x,a.y,a.bd,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new Eb(a.x,a.y,a.bd*b/c|0,a.A),a.x+=b.bd,a.bd-=b.bd);return b}l=Cb.prototype;l.Pb=function(a,b,c,d){return this.X&&this.X.Pb(a,b,c,d)||this.F&&this.F.Pb(a,b,c,d)||this.B&&this.B.Pb(a,b,c,d)||this.ha&&this.ha.Pb(a,b,c,d)?!0:this.parent.Pb.call(this,a,b,c,d)};
l.Jc=function(a,b,c,d){this.X=a;this.ga=b;this.F=c;this.ha=d;this.B=Gb(a,"Keyboard")};l.hc=function(a,b){b||Hb();return!0};l.gc=function(){return!0};l.he=function(a,b){a.button||(this.ea=b?0:-1,Ib(this,a,b))};l.Kf=function(a){Ib(this,a)};
function Ib(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.ea||(a.ea=Math.abs(a.L-d)>Math.abs(a.V-b)?1:2),1==a.ea?b=a.V:2==a.ea&&(d=a.L));a.L=d;a.V=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Se)for(f=0;f<a.A.Se.length;f++)if(e=a.A.Se[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Bf[f],g=xa(Jb.Hk,a.A.Yg[d.Gl]),f=g*a.ga.Sb,d=(g+d.Td)*a.ga.Sb-1;0<b&&(f+=e.bd*(b-1)*a.ya);f+=c*a.ya;f|=0;
f>d&&(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.Ca)){b=c;if(a.context&&a.ia&&a.ka){e=a.ia.width;a.ka.fillStyle="black";a.ka.fillRect(0,360,e,360);Kb(a,378,a.ia,a.ka);a.pa=a.Da.width/24|0;if(null==b)Mb(a,"Mouse over memory to dump");else for(Mb(a,r(b,8,!0),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var h;h=a.ga;var k=b++;h=h.sa[(k&h.Gb)>>>h.La].re(k&h.A,k);Mb(a,r(h,2),null,1);d+=32<=h&&128>h?String.fromCharCode(h):"."}Mb(a,d,null,0,1)}a.context.drawImage(a.ia,0,360,e,360,a.qb,a.Db,a.Pa,a.cb)}a.Ca=
c}}}l.Cc=function(){};function Nb(a,b,c,d){a.A.Bf[a.A.fj++]={Gl:b,Td:c,type:d};return wa(Jb,b,c,0,d)}function Kb(a,b,c,d){var e,f=null.style.color,g=a.Oa=10;a.C=g;a.U=b;a.W=a.va=18;e||(e=a.ua||a.va+"px Monaco, Lucida Console, Courier New");a.fa=a.ua=e;c&&(a.Da=c);d&&(a.N=d,a.Ea=f||"white")}
function Mb(a,b,c,d,e){a.N.font=a.fa;a.N.fillStyle=a.Ea;a.N.fillText(b,a.C,a.U);a.C+=a.pa;null!=c&&(16!=a.Tb?b=c.toString():(b=8>a.Ka?"0x":"",b+=r(c,a.Ka)),a.N.fillText(b,a.C,a.U),a.C+=a.pa);d&&(a.C+=a.pa*d);e&&(a.C=a.Oa,a.U+=(a.W+2)*(e||1))}function Hb(){for(var a=!1,b=qb(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=nb(d),f=lb(e.id);f||(a=!0,f=new Cb(e));pb(f,d);a&&ub(f)}}Za(Hb);
function Ob(a,b,c){db.call(this,"Bus",a,Ob);this.F=b;this.ha=c;this.N=a.busWidth||20;this.W=Math.pow(2,this.N);this.Eg=this.Gb=this.W-1|0;this.La=32==this.N||20>=this.N?12:24>=this.N?14:15;this.Sb=1<<this.La;this.fa=this.Sb>>2;this.A=this.Sb-1;this.U=this.W/this.Sb|0;this.ga=this.U-1;this.B=[];this.C=[];this.L=this.V=!1;this.aa=[];this.ea=[];a=new B;Pb(a,this.ha);this.sa=Array(this.U);for(b=0;b<this.U;b++)this.sa[b]=a;a=this.F;b=this.sa;c=this.La;a.ld=a.sa=b;a.La=c;a.Sb=1<<a.La;a.Ea=a.Sb-1;a.Fd=b.length;
a.jd=a.Fd-1;a=this.F;a.Gb=a.Db=this.Gb;ub(this)}gb(Ob);Ob.prototype.reset=function(){Qb(this,!0)};Ob.prototype.hc=function(a,b){b||this.reset();return!0};
function Rb(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.La;0<g&&h<a.sa.length;){var k=a.sa[h],m=h*a.Sb,n=a.Sb-(f-m);n>g&&(n=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.Fa)return k.Qe+=k.Fa-f,k.Fa=f,!0;if(f>=k.Fa+k.Qe){n=k.size-(f-m);n>g&&(n=g);k.Qe=f-k.Fa+n;f=m+a.Sb;g-=n;h++;continue}}return Sb(a,1,f,g)}f=new B(f,n,a.Sb,d,e);Pb(f,a.ha,k);a.sa[h++]=f;f=m+a.Sb;g-=n}return 0>=g?(Tb(a.F),a.F.la.Ib||a.status(Math.floor(c/1024)+"Kb "+Ub[d]+" at "+r(b)),!0):Sb(a,2,b,c)}
var Jb,Wb={Hk:20,count:8,lp:1,type:3},Xb=0,Yb;for(Yb in Wb){var $b=Wb[Yb];Wb[Yb]={vh:(1<<$b)-1<<Xb,shift:Xb};Xb+=$b}Jb=Wb;function Qb(a,b){32==a.N?b?a.X&&(ac(a,1048576,1048576,a.X),a.X=null):a.X||(a.X=bc(a,1048576,1048576),ac(a,1048576,1048576,bc(a,0,1048576))):20<a.N&&(b=a.Gb&-1048577|(b?1048576:0),b!=a.Gb&&(a.Gb=b,a.F&&(a=a.F,a.Gb=a.Db=b)))}l=Ob.prototype;
l.Vg=function(a,b,c,d){if(!(a&this.A||!b||b&this.A)){for(var e=a>>>this.La;0<b;){var f=this.sa[e];if(!f.controller)return Sb(this,3,a,b,d);cc(f,c,!0);b-=this.Sb;e++}return!0}return Sb(this,4,a,b)};function dc(a,b,c){if(!(b&a.A||!c||c&a.A)){for(var d=b>>>a.La;0<c;){var e=a.sa[d];b=new B(b);Pb(b,a.ha,e);a.sa[d++]=b;b=d*a.Sb;c-=a.Sb}Tb(a.F);return!0}return Sb(a,5,b,c)}function bc(a,b,c){var d=[];for(b>>>=a.La;0<c&&b<a.sa.length;)d.push(a.sa[b++]),c-=a.Sb;return d}
function ac(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.sa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new B(b),m=k,n=e,t=a.ha;m.id=h.id|1;m.Qe=h.Qe;m.size=h.size;n&&(m.type=n,m.N=n==ec);xb?(m.X=h.X,m.qa=h.qa,m.Za=h.Za,m.de=h.de,m.da=h.da,cc(m,fc?gc:hc)):(m.da=h.da,cc(m,ic));Pb(m,t,h);h=k}a.sa[g++]=h;c-=a.Sb}}l.Qa=function(a){return this.sa[(a&this.Gb)>>>this.La].pc(a&this.A,a)};
l.na=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;return b!=this.A?this.sa[c].sf(b,a):this.sa[c++].pc(b,a)|this.sa[c&this.ga].pc(0,a+1)<<8};function jc(a,b){var c=b&a.A,d=(b&a.Gb)>>>a.La;return c!=a.A?a.sa[d].gg(c,b):a.sa[d++].re(c,b)|a.sa[d&a.ga].re(0,b+1)<<8}l.oa=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;if(b<this.A-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;)d|=this.sa[c].pc(b++,a++)<<f,--g||(c=c+1&this.ga,b=0),f+=8;return d};
l.qc=function(a,b){this.sa[(a&this.Gb)>>>this.La].sc(a&this.A,b&255,a)};l.jb=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;c!=this.A?this.sa[d].zf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.sa[d&this.ga].sc(0,b>>8&255,a+1))};function kc(a,b,c){var d=b&a.A,e=(b&a.Gb)>>>a.La;d!=a.A?a.sa[e].zi(d,c&65535,b):(a.sa[e++].xf(d,c&255,b),a.sa[e&a.ga].xf(0,c>>8&255,b+1))}
l.nb=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;if(c<this.A-2)this.sa[d].yf(c,b);else for(var e=4,f=4-(c&3);e--;)this.sa[d].sc(c++,b&255,a++),--f||(d=d+1&this.ga,c=0),b>>>=8};l.xj=function(){return null};
function lc(a,b){var c=0,d=[],e=!a.X&&a.Eg==a.Gb;e||Qb(a,!0);for(var f=0;f<a.U;f++){var g=a.sa[f];if(b&&g.type!=ec||g.Wa||g.tj){d[c++]=f;var h=c++;if(g=g.save()){for(var k=0,m=0,n=[];k<g.length;){for(var t=g[k],q=k+1;q<g.length&&g[q]===t;)q++;n[m++]=q-k;n[m++]=t;k=q}n.length<g.length&&(g=n)}d[h]=g}}e||Qb(a,!1);d[c]=e;return d}function mc(a,b){if(void 0===b)return a.L=!a.L,a.L;void 0===a.B[b]&&(a.B[b]=[null,!1]);a.B[b][1]=!a.B[b][1];return a.B[b][1]}
function nc(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(h)for(var k=+e+d;k<=g;k++)void 0!==f.B[k]?w("Input port "+v(k)+" already registered"):f.B[k]=[h,!1]}}function oc(a,b,c,d){for(var e=0,f=0;0<c;){var g=a.B[b],h=a.aa[b]||1,k=1==h?255:2==h?65535:-1,m=k;void 0!==g?(g[0]&&(m=g[0](b,d),void 0===m?m=k:m&=k),a.ha&&a.L!=g[1]&&pc(a.ha,b,m)):a.ha&&(rb(a.ha,a,b,null,d),a.L&&pc(a.ha,b,m));e|=m<<f;f+=h<<3;b+=h;c-=h}return e}
function qc(a,b){if(void 0===b)return a.V=!a.V,a.V;void 0===a.C[b]&&(a.C[b]=[null,!1]);a.C[b][1]=!a.C[b][1];return a.C[b][1]}function rc(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(h)for(var k=+e+d;k<=g;k++)void 0!==f.C[k]?w("Output port "+v(k)+" already registered"):f.C[k]=[h,!1]}}
function wc(a,b,c,d,e){for(var f=0;0<c;){var g=a.C[b],h=a.ea[b]||1,k=1==h?255:2==h?65535:-1,k=(d>>>=f)&k;if(void 0!==g){if(g[0])g[0](b,k,e);a.ha&&a.V!=g[1]&&xc(a.ha,b,k)}else a.ha&&(rb(a.ha,a,b,k,e),a.V&&xc(a.ha,b,k));f+=h<<3;b+=h;c-=h}}function Sb(a,b,c,d,e){b="Memory block error ("+b+": "+r(c)+","+r(d)+")";e?a.ha?a.ha.message(b):a.log(b):w(b);return!1}var yc;if(xb){var zc=new ArrayBuffer(2);(new DataView(zc)).setUint16(0,256,!0);yc=256===(new Uint16Array(zc))[0]}else yc=!1;var fc=yc;
function B(a,b,c,d,e,f){this.id=Ac+=2;this.da=null;this.C=0;this.Fa=a;this.Qe=b;this.size=c||0;this.type=d||Bc;this.N=d==ec;this.controller=null;this.F=f;Pb(this);this.Wa=this.tj=!1;if(c)if(e)this.controller=e,a=e.wj(a),this.da=a[0],this.C=a[1],cc(this,e.nh());else if(xb)this.X=new ArrayBuffer(c),this.qa=new DataView(this.X,0,c),this.Za=new Uint8Array(this.X,0,c),this.de=new Uint16Array(this.X,0,c>>1),this.da=new Int32Array(this.X,0,c>>2),cc(this,fc?gc:hc);else{this.da=Array(c>>2);for(e=0;e<this.da.length;e++)this.da[e]=
0;cc(this,ic)}else cc(this)}var Bc=0,ec=2,Cc=["black","blue","green","cyan"],Ub="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),Ac=0;function Dc(a){xb&&!fc&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a}
B.prototype={constructor:B,parent:null,qh:function(a){this.Fa=a},save:function(){var a,b;if(this.controller)a=null;else if(xb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.qa.getInt32(b<<2,!0);else a=this.da;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(xb)for(b=0;b<a.length;b++)this.qa.setInt32(b<<2,a[b],!0);else this.da=a;return this.Wa=!0}return!1},Rd:function(a,b,c){b?this.Ae++||(c&&(this.F=c),Gc(this,Fc,!1)):this.ze++||(c&&(this.F=c),
Ec(this,Fc,!1))},ia:function(a,b){this.ha&&z(this.ha,129)&&this.ha.message("attempt to read invalid block %"+r(b),!0);return 255},L:function(a,b,c){this.ha&&z(this.ha,129)&&this.ha.message("attempt to write "+v(b)+" to invalid block %"+r(c),!0)},ka:function(a,b){return this.pc(a++,b++)|this.pc(a,b)<<8},ea:function(a,b){return this.pc(a++,b++)|this.pc(a++,b++)<<8|this.pc(a++,b++)<<16|this.pc(a,b)<<24},W:function(a,b,c){this.sc(a++,b&255,c++);this.sc(a,b>>8,c)},U:function(a,b,c){this.sc(a++,b&255,c++);
this.sc(a++,b>>8&255,c++);this.sc(a++,b>>16&255,c++);this.sc(a,b>>>24,c)},Ea:function(a){return this.da[a>>2]>>>((a&3)<<3)&255},sb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b]>>a;return 24>a?c&65535:c&255|(this.da[b+1]&255)<<8},Ya:function(a){var b=a>>2;a=(a&3)<<3;var c=this.da[b];a&&(c=c>>>a|this.da[b+1]<<32-a);return c},tc:function(a,b){var c=a>>2;a=(a&3)<<3;this.da[c]=this.da[c]&~(255<<a)|b<<a;this.Wa=!0},Cd:function(a,b){var c=a>>2;a=(a&3)<<3;24>a?this.da[c]=this.da[c]&~(65535<<a)|b<<a:
(this.da[c]=this.da[c]&16777215|b<<24,c++,this.da[c]=this.da[c]&-256|b>>8);this.Wa=!0},Xc:function(a,b){var c=a>>2;if(a=(a&3)<<3){var d=-1<<a;this.da[c]=this.da[c]&~d|b<<a;c++;this.da[c]=this.da[c]&d|b>>>32-a}else this.da[c]=b;this.Wa=!0},Da:function(a,b){this.ha&&null!=this.Fa&&Hc(this.ha,this.Fa+a)||this.F&&Ic(this.F,b,1,!1);return this.re(a,b)},qb:function(a,b){this.ha&&null!=this.Fa&&Hc(this.ha,this.Fa+a,2)||this.F&&Ic(this.F,b,2,!1);return this.gg(a,b)},Pa:function(a,b){this.ha&&null!=this.Fa&&
Hc(this.ha,this.Fa+a,4)||this.F&&Ic(this.F,b,4,!1);return this.si(a,b)},bc:function(a,b,c){this.ha&&null!=this.Fa&&Jc(this.ha,this.Fa+a)||this.F&&Ic(this.F,c,1,!0);this.N?this.L(a,b,c):this.xf(a,b,c)},sd:function(a,b,c){this.ha&&null!=this.Fa&&Jc(this.ha,this.Fa+a,2)||this.F&&Ic(this.F,c,2,!0);this.N?this.L(a,b,c):this.zi(a,b,c)},Wc:function(a,b,c){this.ha&&null!=this.Fa&&Jc(this.ha,this.Fa+a,4)||this.F&&Ic(this.F,c,4,!0);this.N?this.L(a,b,c):this.ua(a,b,c)},Ja:function(a,b){this.yb.da[this.A]|=this.ga;
this.zb.da[this.B]|=this.ga;return this.Bd.pc(a,b)},Jb:function(a,b){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.sf(a,b)},fb:function(a,b){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.ga;return this.Bd.Md(a,b)},Dc:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;this.Bd.sc(a,b,c)},Gd:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;this.Bd.zf(a,b,c)},jd:function(a,b,c){this.yb.da[this.A]|=this.ga;this.zb.da[this.B]|=this.V;
this.Bd.yf(a,b,c)},Ka:function(a,b){return Kc(this.F,b,!1).pc(a,b)},xd:function(a,b){return Kc(this.F,b,!1).sf(a,b)},gb:function(a,b){return Kc(this.F,b,!1).Md(a,b)},Vc:function(a,b,c){Kc(this.F,c,!0).sc(a,b,c)},Hd:function(a,b,c){Kc(this.F,c,!0).zf(a,b,c)},kd:function(a,b,c){Kc(this.F,c,!0).yf(a,b,c)},Ca:function(a){return this.Za[a]},aa:function(a){return this.Za[a]},Ga:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.pc=this.aa;return this.Za[a]},Tb:function(a){return this.qa.getUint16(a,
!0)},pa:function(a){return a&1?this.Za[a]|this.Za[a+1]<<8:this.de[a>>1]},Db:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.sf=this.pa;return a&1?this.Za[a]|this.Za[a+1]<<8:this.de[a>>1]},Oa:function(a){return this.qa.getInt32(a,!0)},fa:function(a){return a&3?this.Za[a]|this.Za[a+1]<<8|this.Za[a+2]<<16|this.Za[a+3]<<24:this.da[a>>2]},cb:function(a){this.yb.da[this.A]|=32;this.zb.da[this.B]|=32;this.Md=this.fa;return a&3?this.Za[a]|this.Za[a+1]<<8|this.Za[a+2]<<16|this.Za[a+3]<<24:this.da[a>>
2]},Ub:function(a,b){this.Za[a]=b;this.Wa=!0},ra:function(a,b){this.Za[a]=b;this.Wa=!0},uc:function(a,b){this.Za[a]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.sc=this.ra;this.Bd.Wa=!0},qd:function(a,b){this.qa.setUint16(a,b,!0);this.Wa=!0},ya:function(a,b){a&1?(this.Za[a]=b,this.Za[a+1]=b>>8):this.de[a>>1]=b;this.Wa=!0},Fd:function(a,b){a&1?(this.Za[a]=b,this.Za[a+1]=b>>8):this.de[a>>1]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.zf=this.ya;this.Bd.Wa=!0},ce:function(a,b){this.qa.setInt32(a,
b,!0);this.Wa=!0},va:function(a,b){a&3?(this.Za[a]=b,this.Za[a+1]=b>>8,this.Za[a+2]=b>>16,this.Za[a+3]=b>>24):this.da[a>>2]=b;this.Wa=!0},Yc:function(a,b){a&3?(this.Za[a]=b,this.Za[a+1]=b>>8,this.Za[a+2]=b>>16,this.Za[a+3]=b>>24):this.da[a>>2]=b;this.yb.da[this.A]|=32;this.zb.da[this.B]|=96;this.yf=this.va;this.Bd.Wa=!0}};function Pb(a,b,c){a.ha=b;a.ze=a.Ae=0;c&&(c.F&&(a.F=c.F),(a.ze=c.ze)&&Ec(a,Fc,!1),(a.Ae=c.Ae)&&Gc(a,Fc,!1))}
function Lc(a){a.sc=a.N?a.L:a.xf;a.zf=a.N?a.W:a.zi;a.yf=a.N?a.U:a.ua}function Mc(a){a.pc=a.re;a.sf=a.gg;a.Md=a.si}function Gc(a,b,c){c&&a.Ae||(a.sc=!a.N&&b[1]||a.L,a.zf=!a.N&&b[3]||a.W,a.yf=!a.N&&b[5]||a.U);if(c||void 0===c)a.xf=b[1]||a.L,a.zi=b[3]||a.W,a.ua=b[5]||a.U}function Ec(a,b,c){c&&a.ze||(a.pc=b[0]||a.ia,a.sf=b[2]||a.ka,a.Md=b[4]||a.ea);if(c||void 0===c)a.re=b[0]||a.ia,a.gg=b[2]||a.ka,a.si=b[4]||a.ea}function cc(a,b,c){b||(b=5==a.type?Nc:6==a.type?Oc:Pc);Ec(a,b,c);Gc(a,b,c)}
var Pc=[],ic=[B.prototype.Ea,B.prototype.tc,B.prototype.sb,B.prototype.Cd,B.prototype.Ya,B.prototype.Xc],Fc=[B.prototype.Da,B.prototype.bc,B.prototype.qb,B.prototype.sd,B.prototype.Pa,B.prototype.Wc],Oc=[B.prototype.Ja,B.prototype.Dc,B.prototype.Jb,B.prototype.Gd,B.prototype.fb,B.prototype.jd],Nc=[B.prototype.Ka,B.prototype.Vc,B.prototype.xd,B.prototype.Hd,B.prototype.gb,B.prototype.kd];
if(xb)var hc=[B.prototype.Ca,B.prototype.Ub,B.prototype.Tb,B.prototype.qd,B.prototype.Oa,B.prototype.ce],gc=[B.prototype.aa,B.prototype.ra,B.prototype.pa,B.prototype.ya,B.prototype.fa,B.prototype.va],Qc=[B.prototype.Ga,B.prototype.uc,B.prototype.Db,B.prototype.Fd,B.prototype.cb,B.prototype.Yc];
function Sc(a,b){db.call(this,"CPU",a,Sc,1);b=a.cycles||b;var c=a.multiplier||1;this.Y={};this.Y.Id=b;this.Y.Wd=c;this.Y.Bg=Math.round(this.Y.Id/1E4)/100;this.Y.He=this.Y.Bg*this.Y.Wd;this.la.Ib=!1;this.la.yi=!1;this.la.Cf=a.autoStart;this.la.oj=!1;this.la.Xe=!1;this.Y.Lf=this.Y.kf=0;this.Y.Nf=a.csStart;this.Y.jf=a.csInterval;this.Y.lf=a.csStop;this.Ai=this.Ne.bind(this);ub(this)}gb(Sc);var Tc=["power","reset"];l=Sc.prototype;
l.Jc=function(a,b,c,d){this.X=a;this.ga=b;this.ha=d;for(b=0;b<Tc.length;b++)(c=this.qa[Tc[b]])&&this.X.Pb(null,Tc[b],c);this.Tb=Gb(a,"FPU");this.N=Gb(a,"ChipSet");a=Vc(a,"autoStart");null!=a&&(this.la.Cf="true"==a?!0:"false"==a?!1:!!a);ub(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};
l.hc=function(a,b){if(!b){if(a&&this.restore){Wc(this);if(!this.restore(a))return!1;Xc(this)}else this.reset();this.ha?this.ha.qh():this.O("No debugger detected")}Yc(this);return!0};l.gc=function(a){return a?this.save():!0};l.Cf=function(){return this.la.Cf||!this.ha&&void 0===this.qa.run?(this.Ne(),!0):!1};l.vj=function(){return 0};
function Xc(a){void 0===a.Y.Nf&&(a.Y.Nf=0);void 0===a.Y.jf&&(a.Y.jf=-1);void 0===a.Y.lf&&(a.Y.lf=-1);a.la.Xe=0<=a.Y.Nf&&0<a.Y.jf;a.la.Xe&&(a.Y.Lf=0,a.Y.kf=a.Y.Nf-a.uc)}function Zc(a,b){if(a.la.Xe){var c=!1;a.Y.Lf=a.Y.Lf+a.vj()|0;a.Y.kf-=b;0>=a.Y.kf&&(a.Y.kf+=a.Y.jf,c=!0);0<=a.Y.lf&&a.Y.lf<=$c(a)&&(a.Y.jf=a.Y.lf=-1,Xc(a),a.Wb(),c=!0);c&&a.O($c(a)+" cycles: checksum="+r(a.Y.Lf))}}
l.Pb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.X)if(a=d.X,a.la.ic)a=!0;else{var b=null,c,h=jb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.la.ready);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.la.ic);c++);c==h.length&&(b=a);w("The "+b.type+" component ("+b.id+") is not "+(b.la.ready?"powered yet":"ready yet"+(b.zg?" (waiting for notification)":""))+".");a=!1}a&&(d.la.Ib?d.Wb(!0):
d.Ne(!0))};a=!0;break;case "speed":this.qa[b]=c;a=!0;break;case "setSpeed":this.qa[b]=c,c.onclick=function(){ad(d,d.Y.Wd<<1,!0)},c.textContent=this.Y.He.toFixed(2)+"Mhz",a=!0}return a};function bd(a,b){a.la.Ib&&(b=a.A-b,a.A-=b,a.fb-=b)}function cd(a,b,c){a.uc+=b;c&&(a.fb=a.A=0)}
function dd(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Y.Wd&&a.Y.ne&&(d=a.Y.ne/a.Y.Bg);a.Y.Dj=Math.round(1E3/30);a.Y.dn=Math.floor(a.Y.Id/c*d);a.Y.Ah=Math.floor(a.Y.Id/30*d);a.Y.Fj=Math.floor(a.Y.Id/60*d);a.Y.Ej=Math.floor(a.Y.Id/2*d);b||(a.Y.mf=a.Y.Ah,a.Y.Pf=a.Y.Fj,a.Y.Of=a.Y.Ej);a.Y.Bh=0}function $c(a,b){var c=a.uc+a.Ub+a.fb-a.A;b&&1<a.Y.Wd&&a.Y.ne>a.Y.Bg&&(c=Math.round(c/a.Y.Wd));return c}function Wc(a){a.Y.ne=0;a.uc=a.Ub=a.fb=a.A=0;Xc(a);ad(a,1)}
function ad(a,b,c){var d=!1;if(void 0!==b){.8>a.Y.ne/a.Y.He?b=1:d=!0;a.Y.Wd=b;b=a.Y.Bg*a.Y.Wd;if(a.Y.He!=b){a.Y.He=b;b=a.Y.He.toFixed(2)+"Mhz";var e=a.qa.setSpeed;e&&(e.textContent=b);a.O("target speed: "+b)}c&&a.X&&a.X.wd()}cd(a,a.Ub);a.Ub=0;a.Y.oe=ta();a.Y.Ie=0;dd(a);return d}
l.Ne=function(a){if(sb(this,!0)){if(!this.la.Ib){ad(this);this.X&&this.X.start(this.Y.oe,$c(this));this.la.Ib=!0;this.la.yi=!0;this.N&&this.N.start();var b=this.qa.run;b&&(b.textContent="Halt");this.X&&(this.X.Cc(!0),a&&this.X.wd(!0))}this.Y.Bh>=this.Y.Id&&dd(this,!0);this.Y.Qf=0;this.Y.Cg=ta();this.Y.Ie&&(a=this.Y.Cg-this.Y.Ie,a>this.Y.Dj&&(this.Y.oe+=a,this.Y.oe>this.Y.Cg&&(this.Y.oe=this.Y.Cg)));try{do{var c=this.la.Xe?1:this.Y.dn;if(this.N){ed(this.N);var d=this.N;a=c;var e=d.V[0];if(e.De){var f=
($c(d.F,d.ka)-e.vd)/d.gb|0,g=fd(d,0)-f;6==e.mode&&(g-=f);var h=g*d.gb|0;6==e.mode&&(h>>=1);a>h&&(a=h)}var c=a,k=this.N;a=c;if(k.A&&k.A[11]&64){var m=k.ua-$c(k.F,k.ka);0<m&&a>m&&(a=m)}c=a}try{this.wf(c)}catch(t){if("number"!=typeof t)throw t;}var n=this.fb-this.A;this.Ub+=n;this.Y.Qf+=n;cd(this,0,!0);Zc(this,n);this.Y.Pf-=n;0>=this.Y.Pf&&(this.Y.Pf+=this.Y.Fj,this.X&&gd(this.X));this.Y.Of-=n;0>=this.Y.Of&&(this.Y.Of+=this.Y.Ej,this.X&&this.X.Cc());this.Y.mf-=n;if(0>=this.Y.mf){this.Y.mf+=this.Y.Ah;
break}}while(this.la.Ib)}catch(t){this.Wb();Yc(this);this.X&&this.X.stop(ta(),$c(this));sb(this,!1);wb(this,t.stack||t.message);return}c=setTimeout;d=this.Ai;this.Y.Ie=ta();e=this.Y.Dj;this.Y.Qf&&(e=Math.round(e*this.Y.Qf/this.Y.Ah));e-=this.Y.Ie-this.Y.Cg;if(f=this.Y.Ie-this.Y.oe)this.Y.ne=Math.round(this.Ub/(10*f))/100,864E5<=f&&(this.uc=0,this.N&&ed(this.N,!0),ad(this));if(0>e||this.Y.ne<this.Y.He)-1E3>e&&(this.Y.oe-=e),e=0;this.Y.Bh+=this.Y.Qf;this.Y.Ie+=e;c(d,e)}else Yc(this),this.X&&this.X.stop(ta(),
$c(this))};l.wf=function(){return 0};l.Wb=function(a){tb(this,!0);this.fb-=this.A;this.A=0;cd(this,this.Ub);this.Ub=0;if(this.la.Ib){this.la.Ib=!1;this.N&&this.N.stop();var b=this.qa.run;b&&(b.textContent="Run")}this.la.complete=a};function Yc(a,b){a.X&&(gd(a.X,b),a.X.Cc(b))}
function hd(a,b,c,d){this.F=a;this.ha=a.ha;this.id=b;this.kc=c||"";this.Z=0;this.Ta=65535;this.Zb=this.Ta+1;this.Lb=this.Hc=this.ext=this.wb=this.type=this.Aa=0;this.Xb=-1;this.ba=this.Uc=2;this.R=this.Ba=65535;this.X=this.uh;this.ga=this.ij;this.qa=this.kj;this.A={Z:-1,Aa:0,Ta:0,wb:0,type:0,ext:0,Xb:-1};1==this.id&&(this.ag=0,this.C=null,this.df=!1,this.N=Array(32),this.B=[]);id(this,!0,d)}function jd(a,b){a.B.push(b);return[a.B.length,1]}l=hd.prototype;
l.uh=function(a){this.Z=a&65535;return this.Aa=this.Z<<4};l.Ag=function(a,b){var c,d,e=this.F;a&=65535;a&4?(c=e.Bc.Aa,d=c+e.Bc.Ta|0):(c=e.Fc,d=e.zd);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,kd(this,c,a,b);6>this.id&&E.call(e,b&&3==this.id?10:13,a&65532)}return-1};l.Zm=function(a){var b=this.F;a=b.Nc+(a<<2);var c=b.na(a);b.ca&=-769;return this.load(b.na(a+2))+c|0};
l.Ym=function(a){var b=this.F;a<<=3;var c=b.Nc+a|0;if(7<=(b.Sd-c|0))return this.C=!0,a=kd(this,c,a),-1!==a&&(a+=this.ag),a;E.call(b,13,a|2);return-1};l.ij=function(a){return this.Aa+a|0};l.kj=function(a){return this.Aa+a|0};l.hj=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.ug()};l.ul=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.ug()};l.ug=function(){E.call(this.F,13,0);return-1};l.jj=function(a,b){return(a>>>0)+b<=this.Zb?this.Aa+a|0:this.vg()};
l.vl=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.vg()};l.vg=function(){E.call(this.F,13,0);return-1};function ld(a,b,c,d,e){a.Z=b;a.Aa=d;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=c;a.type=c&7936;a.ext=c>>16&192;a.Xb=(b&4?a.F.Bc.Aa:a.F.Fc)+(b&65528)|0;4>a.id&&id(a,!0)}function md(a,b,c){var d=a.F,e=d.na(b+2),f=d.na(b)|(e&255)<<16,d=d.na(b+4);a.Z=c;a.Aa=f;a.Ta=d;a.Zb=(d>>>0)+1;a.wb=e;a.type=e&7936;a.ext=0;a.Xb=b;4>a.id&&id(a,!0)}
function kd(a,b,c,d){var e=a.F;if(!d&&c===a.A.Z)return a.Z=c,a.Aa=a.A.Aa,a.Ta=a.A.Ta,a.Zb=(a.A.Ta>>>0)+1,a.wb=a.A.wb,a.type=a.A.type,a.ext=a.A.ext,a.Xb=a.A.Xb,a.A.Z=-1,id(a,!0,!0,!1),a.Aa;a.A.Z=-1;var f=e.na(b+0),g=e.na(b+4),h=g&7936,k=e.na(b+2)|(g&255)<<16,m=e.na(b+6),n=c&65528;if(80386<=e.ja){var t=f,k=k|(m&65280)<<16,f=f|(m&15)<<16;m&128&&(f=f<<12|4095)}switch(a.id){case 1:var q=a.C;a.df=!1;if(q&&1==c&&a.B.length){var A=a.B[a.ag-1];if(A&&!A())return-1}var F=c&3,C=(g&24576)>>13,A=-1,D,L;n||b>=e.Fc&&
b<e.zd&&(h=0);if(6144<=h)null!=d?A=0:!1!==q?(h&1024?C<=a.Lb&&(A=0):F<=a.Lb&&C==a.Lb&&(A=0),A||(c=c&-4|a.Lb&3)):F>=a.Lb&&(F>a.Lb&&(A=H(e),nd(e,H(e),!0),I(e,A),a.df=!0),A=0);else{if(256==h||2304==h)return sd(a,c,q)?a.Aa:-1;if(1024==h)A=2,L=0,F<a.Lb&&(F=a.Lb);else if(3072==h)A=4,L=0,F<a.Lb&&(F=a.Lb);else if(1536==h)A=2,L=148224;else if(3584==h)A=4,L=148224;else if(1792==h)A=2,L=147712;else if(3840==h)A=4,L=147712;else if(1280==h)return sd(a,k&65535,q)?a.Aa:-1}0<A&&!(g&32768)&&(A=0);if(0<A&&(n=a.Lb,D=
b==e.Nc+c,F<=C&&(!D||0<=e.qb||n<=C))){b=k&65535;h&2048&&(f=t|m<<16);m=h=0;d=b&3;if(d<n){if(-1===a.Ag(b,!0))return-1;m=e.Sa.Aa;e.Sa.type&2048?(c=(d<<3)+4,k=4):(c=(d<<2)+2,k=2);h=e.na(m+c+k);if(!h)return E.call(e,10,h),-1;if(-1===e.ta.Ag(h,!0))return-1;m=2==k?e.na(m+c):e.oa(m+c)}c=e.ca;e.ca&=~L;c&131072&&td(e,!0,!1);if(-1===a.Ag(b,!1))return-1;ud(e,A);a.ag=f;if(d<n){if(!0!==q)return-1;A=J(e);f=0;for(g&=31;g--;)a.N[f++]=vd(e,e.ta,A),A+=2;q=e.ta.Z;g=J(e);nd(e,h,!0);I(e,m);c&131072&&(ud(e,4),wd(e,e.Ob.Z,
4,2),e.Ob.load(0),wd(e,e.Nb.Z,4,2),e.Nb.load(0),wd(e,e.vb.Z,4,2),xd(e,0),wd(e,e.Xa.Z,4,2),yd(e,0));wd(e,q,e.ba,2);for(K(e,g);f;)K(e,a.N[--f]);a.df=!0}return a.Aa}if(A)return E.call(e,13,c&65532|(D?2:0)),-1;if(!(g&32768))return E.call(e,11,c&65532|(D?2:0)),-1;break;case 2:if(n){if(4096>h||2048==(h&2560))return E.call(e,13,c&65532),-1;if(!(g&32768))return E.call(e,11,c&65532),-1}break;case 3:if(!n||4096>h||512!=(h&2560))return E.call(e,13,c&65532),-1;if(!(g&32768))return E.call(e,12,c&65532),-1;break;
case 4:q=h&-513;if(!n||256!=q&&2304!=q)return E.call(e,13,c&65532),-1;2304==q&&(a.Zi=k+e.na(k+102)|0,a.ol=k+a.Ta|0);break;case 6:if(!(h&4096)&&768<h&&2304!=h&&2816!=h)return-1}d?(a.A.Z=c,a.A.Aa=k,a.A.Ta=f,a.A.wb=g,a.A.type=h,a.A.ext=m,a.A.Xb=b):(a.Z=c,a.Aa=k,a.Ta=f,a.Zb=(f>>>0)+1,a.wb=g,a.type=h,a.ext=m,a.Xb=b,id(a,!0,!0,!1));return k}
function sd(a,b,c){var d=a.F,e=a.Lb,f=d.Sa.Z,g=d.Sa.Aa;if(!c){if(!(d.Sa.type&512))return E.call(d,13,b&65532),!1;d.jb(d.Sa.Xb+4,d.Sa.wb&=-513)}if(-1===d.Sa.load(b))return!1;var h=d.Sa.Aa;if(!1!==c){if(d.Sa.type&512)return E.call(d,13,b&65532),!1;d.jb(d.Sa.Xb+4,d.Sa.wb|=512)}d.Sa.type=d.Sa.type&-513|d.Sa.wb&512;256==d.Sa.type||768==d.Sa.type?(d.jb(g+14,M(d)),d.jb(g+16,zd(d)),d.jb(g+18,d.G),d.jb(g+20,d.I),d.jb(g+22,d.M),d.jb(g+24,d.H),d.jb(g+26,J(d)),d.jb(g+28,d.P),d.jb(g+30,d.K),d.jb(g+32,d.J),d.jb(g+
34,d.Xa.Z),d.jb(g+36,d.wa.Z),d.jb(g+38,d.ta.Z),d.jb(g+40,d.vb.Z),d.Bc.load(d.na(h+42)),Ad(d,d.na(h+16)|(c?16384:0)),d.G=d.na(h+18),d.I=d.na(h+20),d.M=d.na(h+22),d.H=d.na(h+24),d.P=d.na(h+28),d.K=d.na(h+30),d.J=d.na(h+32),d.Xa.load(d.na(h+34)),d.vb.load(d.na(h+40)),Bd(d,d.na(h+14),d.na(h+36)),b=38,g=26,a.Lb<e&&(g=(a.Lb<<2)+2,b=g+2),nd(d,d.na(h+b),!0),I(d,d.na(h+g))):(d.nb(g+28,d.Od),d.nb(g+32,M(d)),d.nb(g+36,zd(d)),d.nb(g+40,d.G),d.nb(g+44,d.I),d.nb(g+48,d.M),d.nb(g+52,d.H),d.nb(g+56,J(d)),d.nb(g+
60,d.P),d.nb(g+64,d.K),d.nb(g+68,d.J),d.nb(g+72,d.Xa.Z),d.nb(g+76,d.wa.Z),d.nb(g+80,d.ta.Z),d.nb(g+84,d.vb.Z),d.nb(g+88,d.Nb.Z),d.nb(g+92,d.Ob.Z),Cd.call(d,d.oa(h+28)),d.Bc.load(d.na(h+96)),Ad(d,d.oa(h+36)|(c?16384:0)),d.G=d.oa(h+40),d.I=d.oa(h+44),d.M=d.oa(h+48),d.H=d.oa(h+52),d.P=d.oa(h+60),d.K=d.oa(h+64),d.J=d.oa(h+68),d.Xa.load(d.na(h+72)),d.vb.load(d.na(h+84)),d.Nb.load(d.na(h+88)),d.Ob.load(d.na(h+92)),Bd(d,d.oa(h+32),d.na(h+76)),b=80,g=56,a.Lb<e&&(g=(a.Lb<<3)+4,b=g+4),nd(d,d.na(h+b),!0),I(d,
d.oa(h+g)));c&&d.jb(h+0,f);d.$a|=8;return!0}l.save=function(){return[this.Z,this.Aa,this.Ta,this.wb,this.id,this.kc,this.Lb,this.Hc,this.Xb,this.Uc,this.Ba,this.ba,this.R,this.type,this.Zb]};l.restore=function(a){"number"==typeof a?this.load(a):(this.Z=a[0],this.Aa=a[1],this.Ta=a[2],this.wb=a[3],this.id=a[4],this.kc=a[5],this.Lb=a[6],this.Hc=a[7],this.Xb=a[8],this.Uc=a[9]||2,this.Ba=a[10]||65535,this.ba=a[11]||2,this.R=a[12]||65535,this.type=a[13]||this.wb&7936,this.Zb=a[14]||(this.Ta>>>0)+1)};
function id(a,b,c,d){void 0===c&&(c=!!(a.F.$a&1));a.cd=!1;if(c)if(a.load=a.Ag,a.Cj=a.Ym,a.mc=a.hj,a.nc=a.jj,void 0===d&&(d=!!(a.F.ca&131072)),d)a.load=a.X,a.mc=a.ga,a.nc=a.qa,a.Lb=a.Hc=3,a.ba=2,a.R=a.Ba=65535,a.Ta=65535,a.Zb=a.Ta+1,a.Uc=a.ba,a.Xb=-1,a.df=!1;else{if(!(a.Z&-4))a.mc=a.ug,a.nc=a.vg;else if(a.type&4096){6144==(a.type&6656)&&(a.mc=a.ug);if(a.type&2048||!(a.type&512))a.nc=a.vg;1024==(a.type&3072)&&(a.mc==a.hj&&(a.mc=a.ul),a.nc==a.jj&&(a.nc=a.vl),a.cd=!0);b&&6>a.id&&a.Z&-4&&-1!==a.Xb&&(c=
a.Xb+5,d=a.F.Qa(c),d&1||a.F.qc(c,d|1))}b&&(a.Lb=a.Z&3,a.Hc=(a.wb&24576)>>13,80386>a.F.ja||!(a.ext&64)?(a.ba=2,a.R=65535):(a.ba=4,a.R=-1),a.Uc=a.ba,a.Ba=a.R)}else a.load=a.uh,a.Cj=a.Zm,a.mc=a.ij,a.nc=a.kj,a.Lb=a.Hc=0,a.Xb=-1,a.df=!1}
function Dd(a){this.ja=+a.model||8088;var b=a.stepping;this.Vc=this.ja+(b?ea(b,16):0);switch(this.ja){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Sc.call(this,a,b);this.bg=61442;this.Dc=1792;this.$f=28672;this.Cd=4;this.ra=255;this.B=80286<=this.ja?zb:yb;this.W=Ed;this.fg=Fd;this.lg=Gd;this.mg=Hd;if(80186<=this.ja&&(this.W=Ed.slice(),this.fg=Fd.slice(),this.lg=Gd.slice(),this.ra=31,this.W[15]=Id,this.W[96]=Jd,this.W[97]=Kd,this.W[98]=Ld,this.W[99]=Id,this.W[100]=Id,this.W[101]=
Id,this.W[102]=Id,this.W[103]=Id,this.W[104]=Md,this.W[105]=Nd,this.W[106]=Od,this.W[107]=Pd,this.W[108]=Qd,this.W[109]=Rd,this.W[110]=Sd,this.W[111]=Td,this.W[192]=Xd,this.W[193]=Yd,this.W[200]=Zd,this.W[201]=ee,this.W[241]=fe,this.fg[7]=ge,this.lg[7]=ge,80286<=this.ja)){this.bg=2;this.Dc|=28672;this.Cd=0;this.W[15]=he;this.tc=ie.slice();for(a=0;a<this.tc.length;a++)this.tc[a]||(this.tc[a]=je);this.W[84]=ke;this.W[99]=le;if(80386<=this.ja){var c;this.$f=0;this.Dc|=196608;this.W[100]=me;this.W[101]=
ne;this.W[102]=oe;this.W[103]=pe;for(c in N)this.tc[+c]=N[+c];80546<=this.Vc&&80562>=this.Vc&&(this.tc[166]=qe,this.tc[167]=re)}}this.Hd=[];this.je=[];this.le=0;Wc(this);this.la.complete=this.la.nj=!1;this.Wg=0;this.ld=this.sa=[];this.La=this.Sb=this.Ea=this.Fd=this.jd=this.Gb=this.Db=0;se(this)}gb(Dd,Sc);function te(a,b,c,d){b=(d?a.ld:a.sa)[b>>>a.La];c?--b.Ae||Lc(b):--b.ze||Mc(b);d&&Tb(a)}
function ue(a){var b;if(a.sa===a.ld){a.sa=Array(a.Fd);a.ke=new B(null,0,0,5,null,a);Pb(a.ke,a.ha);for(b=0;b<a.Fd;b++)a.sa[b]=a.ke;a.kd=new B;a.eg=Array(512);a.me=0}else for(var c=0;c<a.Gd.length;c++){b=a.Gd[c];var d=a.sa[b];512>a.me&&(a.eg[a.me++]=d);a.sa[b]=a.ke}a.Gd=[]}function Tb(a){a.$a&-2147483648&&ue(a)}
function Kc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.ld[(a.Od+e&a.Gb)>>>a.La],g=f.Md(e);if(!(g&1))return d||ve.call(a,b,!1,c),a.kd;if(!(g&4)&&3==a.pa)return d||ve.call(a,b,!0,c),a.kd;var h=(b&4190208)>>>10,g=a.ld[((g&-4096)+h&a.Gb)>>>a.La],k=g.Md(h);if(!(k&1))return d||ve.call(a,b,!1,c),a.kd;if(!(k&4)&&3==a.pa)return d||ve.call(a,b,!0,c),a.kd;c=a.ld[((k&-4096)+(b&4095)&a.Gb)>>>a.La];if(d)return c;d=b>>>a.La;k=a.sa[d];b&=-4096;var m;0<a.me?(m=a.eg[--a.me],m.qh(b)):m=new B(b,0,0,6);b=m;b.Bd=c;b.yb=f;b.A=
e>>2;b.zb=g;b.B=h>>2;xb&&fc&&c.da&&!c.controller&&!c.ze&&!c.Ae?(b.Za=c.Za,b.de=c.de,b.da=c.da,cc(b,Qc)):(b.ga=c?Dc(32):0,b.V=c?Dc(96):0,cc(b,Oc));Pb(b,a.ha,k);a.sa[d]=b;a.Gd.push(d);return b}function we(a){a.sa!==a.ld&&(a.sa=a.ld,a.ke=null,a.Gd=null,a.kd=null)}l=Dd.prototype;l.reset=function(){this.la.Ib&&this.Wb();se(this);Wc(this);this.la.error=!1};
function xe(a,b){var c;switch(b){case 0:c=a.G;break;case 1:c=a.I;break;case 2:c=a.M;break;case 3:c=a.H;break;case 4:c=J(a);break;case 5:c=a.P;break;case 6:c=a.K;break;case 7:c=a.J}return c}function ye(a,b,c){switch(b){case 0:a.G=c;break;case 1:a.I=c;break;case 2:a.M=c;break;case 3:a.H=c;break;case 4:I(a,c);break;case 5:a.P=c;break;case 6:a.K=c;break;case 7:a.J=c}}
function se(a){a.G=0;a.H=0;a.I=0;a.M=0;a.gb=0;a.P=0;a.K=0;a.J=0;a.cb=!1;a.ia=a.va=0;a.aa=0;a.ng=0;a.L=0;a.$a=65520;a.Nc=0;a.Sd=1023;a.ca=a.Pa=0;a.Xc=a.sd=a.Wc=a.Yc=0;a.qb=-1;a.bc=a.sb=-1;a.qe=a.U=-1;a.wa=new hd(a,1,"CS");a.vb=new hd(a,2,"DS");a.Xa=new hd(a,2,"ES");a.ta=new hd(a,3,"SS");I(a,0);nd(a,0);if(80386<=a.ja){switch(a.Vc){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.$a=16;a.ti=0;a.se=0;a.Od=0;a.Ja=[0,0,0,0,null,null,0,
0];a.Ee=[null,null,null,null,null,null,0,0];a.Nb=new hd(a,2,"FS");a.Ob=new hd(a,2,"GS");we(a)}a.rf=new hd(a,0,"NULL");a.ka=a.vb;a.Ka=a.ta;a.S=a.Ia=0;a.D=a.C=-1;a.$b=a.rf;a.ua=0;if(80286>a.ja)Bd(a,0,65535);else{a.Fc=0;a.zd=65535;a.Bc=new hd(a,5,"LDT",!0);a.Sa=new hd(a,4,"TSS",!0);a.Da=new hd(a,6,"VER",!0);Bd(a,65520,61440);var b,c=M(a);b=a.wa;var d=-65536;80386>b.F.ja&&(d&=16777215);b=b.Aa=d;a.Ha=b+c|0;a.hf=(b>>>0)+(a.wa.Ta>>>0)+1}Ad(a,0);td(a)}
function ze(a){2==a.Uc?(a.cc=a.na,a.Oa=Ae,a.Ya=Be,a.Jb=Ce,2==a.ba?(a.V=De,a.ea=Ee,a.ya=He):(a.V=Ie,a.ea=Je,a.ya=Ke)):(a.cc=a.oa,a.Oa=Le,a.Ya=Me,a.Jb=Ne,2==a.ba?(a.V=Oe,a.ea=Pe,a.ya=bf):(a.V=cf,a.ea=df,a.ya=ef))}function ud(a,b){a.ba!=b&&(a.Ia|=1024,a.ba=b,a.R=2==b?65535:-1,ff(a))}function ff(a){2==a.ba?(a.Ga=32768,a.tb=a.na,a.rc=a.jb,2==a.Uc?(a.V=De,a.ea=Ee,a.ya=He):(a.V=Oe,a.ea=Pe,a.ya=bf)):(a.Ga=-2147483648,a.tb=a.oa,a.rc=a.nb,2==a.Uc?(a.V=Ie,a.ea=Je,a.ya=Ke):(a.V=cf,a.ea=df,a.ya=ef))}
function gf(a){a.Uc=a.wa.Uc;a.Ba=a.wa.Ba;ze(a);a.ba=a.wa.ba;a.R=a.wa.R;ff(a);a.Ia&=-3073}l.vj=function(){var a=this.G+this.H+this.I+this.M+J(this)+this.P+this.K+this.J|0;return a=a+M(this)+this.wa.Z+this.vb.Z+this.ta.Z+this.Xa.Z+zd(this)|0};function hf(a,b,c){void 0===a.Hd[b]&&(a.Hd[b]=[]);a.Hd[b].push(c)}function jf(a,b,c){c&&(null==a.je[b]&&a.le++,a.je[b]=c)}function kf(a,b){var c=a.je[b];null!=c&&(c(--a.le),delete a.je[b])}
function lf(a,b){for(var c=a.Ja[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ja[e],g=g&~(d>>2&3);b?a.sa[g>>>a.La].Rd(g&a.Ea,f,a):(g=a.sa[g>>>a.La],f?--g.Ae||Lc(g):--g.ze||Mc(g))}c>>=2;d>>=4}}function Ic(a,b,c,d){if(!(a.S&8192)&&a.Ja[7]&255){c--;var e=a.Ja[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Ja[g]&&b<=a.Ja[g]+h){a.Ja[6]|=1<<g;a.ua|=2;break}}e>>=2;f>>=4}}}
function td(a,b,c){void 0===b&&(b=!!(a.$a&1));void 0===c&&(c=!!(a.ca&131072));a.mg=b&&!c?mf:Hd;id(a.wa,!1,b,c);id(a.vb,!1,b,c);id(a.ta,!1,b,c);id(a.Xa,!1,b,c);80386<=a.ja&&(id(a.Nb,!1,b,c),id(a.Ob,!1,b,c));gf(a)}
l.save=function(){var a=new nf(this);a.set(0,[this.G,this.H,this.I,this.M,J(this),this.P,this.K,this.J]);var b=M(this),c=this.wa.save(),d=this.vb.save(),e=this.ta.save(),f=this.Xa.save(),g;null!=this.Fc?(g=[this.$a,this.Fc,this.zd,this.Nc,this.Sd,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ja&&(g.push(this.ti),g.push(this.se),g.push(this.Od),g.push(this.Ja),g.push(this.Ee))):g=null;b=[b,c,d,e,f,g,zd(this)];80386<=this.ja&&(b.push(this.Nb.save()),b.push(this.Ob.save()));a.set(1,b);a.set(2,[this.ka.kc,
this.Ka.kc,this.S,this.Ia,this.ua,this.D,this.C]);a.set(3,[0,this.uc,this.Y.Wd]);a.set(4,lc(this.ga,!!(this.$a&-2147483648)));return a.data()};
l.restore=function(a){var b=a[0];this.G=b[0];this.H=b[1];this.I=b[2];this.M=b[3];var c=b[4];this.P=b[5];this.K=b[6];this.J=b[7];b=a[1];this.wa.restore(b[1]);this.vb.restore(b[2]);this.ta.restore(b[3]);this.Xa.restore(b[4]);var d=b[5];d&&d.length&&(this.$a=d[0],this.Fc=d[1],this.zd=d[2],this.Nc=d[3],this.Sd=d[4],this.Bc.restore(d[5]),this.Sa.restore(d[6]),this.Pa=d[7],80386<=this.ja&&(this.ti=d[8],this.se=d[9],this.Od=d[10],this.Ja=d[11],this.Ee=d[12]),td(this));Ad(this,b[6]);var d=!1,e;a:{e=this.ga;
var f=a[4],g;for(g=0;g<f.length-1;g+=2){var h=f[g],k=f[g+1];if(k&&k.length<e.fa){for(var m=0,n=Array(e.fa),t=0;t<k.length-1;)for(var q=k[t++],A=k[t++];q--;)n[m++]=A;k=n}m=e.sa[h];if(!m||!m.restore(k)){w("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&Qb(e,f[g]);e=!0}e&&(Bd(this,b[0],this.wa.Z),I(this,c),nd(this,this.ta.Z),80386<=this.ja&&(this.Nb.restore(b[7]),this.Ob.restore(b[8])),d=!0);b=a[2];this.ka=null!=b[0]&&of(this,b[0])||this.vb;this.Ka=null!=b[1]&&of(this,b[1])||this.ta;
this.S=b[2];this.Ia=b[3];this.ua=b[4];this.D=b[5];this.C=b[6];b=a[3];this.uc=b[1];ad(this,b[2]);return d};function of(a,b){switch(b){case "CS":return a.wa;case "DS":return a.vb;case "SS":return a.ta;case "ES":return a.Xa;case "NULL":return a.rf;default:return[0,b,0,0,""]}}function pf(a,b){null!=Bd(a,M(a),b)&&(a.S|=a.Cd)}function xd(a,b){-1!==a.vb.load(b)&&(a.S|=a.Cd)}
function nd(a,b,c){var d=J(a);-1!==a.ta.load(b)&&(I(a,d),a.ta.cd?(a.Sg=a.ta.Aa+a.ta.Ba|0,a.qd=a.ta.Aa+a.ta.Ta|0):(a.Sg=a.ta.Aa+a.ta.Ta|0,a.qd=a.ta.Aa),c||(a.S|=4))}function yd(a,b){-1!==a.Xa.load(b)&&(a.S|=a.Cd)}function M(a){return a.Ha-a.wa.Aa|0}function O(a,b){a.Ha=a.wa.Aa+(b&a.R)|0}function qf(a,b){a.Ha=b;a.hf=(a.wa.Aa>>>0)+(a.wa.Ta>>>0)+1;a.pa=a.wa.Lb;gf(a)}function Bd(a,b,c,d){var e=a.wa;e.ag=b;e.C=d;b=e.load(c);return-1!==b?(qf(a,b+(a.wa.ag&a.wa.R)),a.wa.df):null}
function rf(a,b){b=(a.Ha>>>0)+b;b>a.hf&&(8088>=a.ja||a.wa.Ta==a.wa.Ba?b=a.wa.Aa+(b-a.hf&a.R):E.call(a,13,0));return b|0}function sf(a){a.Ha=a.qe}function J(a){return a.gb&~a.ta.Ba|a.fa-a.ta.Aa}function I(a,b){a.gb=b;a.fa=a.ta.Aa+(b&a.ta.Ba)|0}function tf(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&uf(a),g&2&&vf(a),g&4&&wf(a),g&8&&xf(a),g&16&&yf(a),g&32&&zf(a))}f?(a.Xc=d,a.Wc=b):(a.Xc=b,a.Wc=d);a.sd=c;a.Yc=d;a.resultType=e}
function Af(a,b,c,d,e){a.resultType=c|26;a.Yc=b;d?Bf(a):Cf(a);e?Df(a):Ef(a);return b}function Ff(a,b,c,d){c&d?Bf(a):Cf(a);(b^c)&d?Df(a):Ef(a)}function Gf(a){return uf(a)?1:0}function uf(a){a.resultType&1&&(a.ca&=-2,(a.Xc^(a.Xc^a.sd)&(a.sd^a.Wc))&a.resultType&-2147450752&&(a.ca|=1),a.resultType&=-2);return a.ca&1}function vf(a){a.resultType&2&&(a.ca&=-5,38505>>((a.Yc^a.Yc>>4)&15)&1&&(a.ca|=4),a.resultType&=-3);return a.ca&4}
function wf(a){a.resultType&4&&(a.ca&=-17,(a.Wc^a.Xc^a.sd)&16&&(a.ca|=16),a.resultType&=-5);return a.ca&16}function xf(a){a.resultType&8&&(a.ca&=-65,a.Yc&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.ca|=64),a.resultType&=-9);return a.ca&64}function yf(a){a.resultType&16&&(a.ca&=-129,a.Yc&a.resultType&-2147450752&&(a.ca|=128),a.resultType&=-17);return a.ca&128}
function zf(a){a.resultType&32&&(a.ca&=-2049,(a.Xc^a.Wc)&(a.sd^a.Wc)&a.resultType&-2147450752&&(a.ca|=2048),a.resultType&=-33);return a.ca&2048}function Cf(a){a.resultType&=-2;a.ca&=-2}function Hf(a){a.resultType&=-5;a.ca&=-17}function If(a){a.resultType&=-9;a.ca&=-65}function Ef(a){a.resultType&=-33;a.ca&=-2049}function Bf(a){a.resultType&=-2;a.ca|=1}function Jf(a){a.resultType&=-5;a.ca|=16}function Kf(a){a.resultType&=-9;a.ca|=64}function Df(a){a.resultType&=-33;a.ca|=2048}
function zd(a){return a.ca&-2262|uf(a)|vf(a)|wf(a)|xf(a)|yf(a)|zf(a)}function Lf(a,b){b|=a.$a&1|65520;a.$a=a.$a&-65536|b&65535;a.$a&1&&td(a,!0)}function Ad(a,b,c){a.$a&1||(b&=~a.$f);void 0===c&&(c=a.pa);c?b=b&-12289|a.ca&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ca&512);a.resultType=128;a.ca=a.ca&~(a.Dc|2261)|b&(a.Dc|2261)|a.bg;a.ca&256&&(a.ua|=2,a.S|=4)}
function Mf(a,b,c,d){var e=0;if(a.$a&1&&(a.pa>a.Pa||a.ca&131072)&&a.Sa.Zi)for(var f=a.Sa.Zi+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.Sa.ol&&!(a.Qa(f)&e);)e>>>=8,f++;return e?(z(a,256)&&y(a,"checkIOPM("+v(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),E.call(a,13,0),!1):!0}
l.Pb=function(a,b,c){switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.qa[b]=c;this.Wg++;a=!0;break;default:a=this.parent.Pb.call(this,a,b,c)}return a};
function Nf(a,b,c,d){var e=(d?a.ld:a.sa)[(b&a.Db)>>>a.La];e&&5==e.type&&(e=Kc(a,b,!1,!0));if(e){var f=b&a.Ea;if(!c||1==c)return e.re(f,b);if(2==c)return f<a.Ea?e.gg(f,b):e.re(f,b)|Nf(a,b+1,1,d)<<8;if(4==c)return f<a.Ea-2?e.si(f,b):f==a.Ea-1?e.gg(f,b)|Nf(a,b+2,2,d)<<16:e.re(f,b)|Nf(a,b+1,1,d)<<8|Nf(a,b+2,1,d)<<16|Nf(a,b+3,1,d)<<24}return null}l.Qa=function(a){return this.sa[(a&this.Db)>>>this.La].pc(a&this.Ea,a)};
l.na=function(a){var b=a&this.Ea,c=(a&this.Db)>>>this.La;this.A-=this.B.Kg;if(b<this.Ea)return this.sa[c].sf(b,a);b=this.sa[c].pc(b,a);this.S&4096||(b|=this.sa[c+1&this.jd].pc(0,a+1)<<8);return b};l.oa=function(a){var b=a&this.Ea,c=(a&this.Db)>>>this.La;if(b<this.Ea-2)return this.sa[c].Md(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.sa[c].pc(b++,a++)<<f;if(this.S&4096)break;--g||(c=c+1&this.jd,b=0);f+=8}return d};l.qc=function(a,b){this.sa[(a&this.Db)>>>this.La].sc(a&this.Ea,b&255,a)};
l.jb=function(a,b){var c=a&this.Ea,d=(a&this.Db)>>>this.La;this.A-=this.B.Kg;c<this.Ea?this.sa[d].zf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.S&4096||this.sa[d&this.jd].sc(0,b>>8&255,a+1))};l.nb=function(a,b){var c=a&this.Ea,d=(a&this.Db)>>>this.La;this.A-=this.B.Kg;if(c<this.Ea-2)this.sa[d].yf(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.sa[d].sc(c++,b&255,a++);if(this.S&4096)break;--f||(d=d+1&this.jd,c=0);b>>>=8}};
function Of(a,b,c){a.$b=b;a.Ca=c&a.Ba;a.D=b.mc(a.Ca,1);return a.S&1?0:a.Qa(a.D)}function P(a,b){return Of(a,a.ka,b)}function Pf(a,b){return Of(a,a.Ka,b)}function Qf(a,b,c){a.$b=b;a.Ca=c&a.Ba;a.D=b.mc(a.Ca,a.ba);return a.S&1?0:a.tb(a.D)}function Q(a,b){a.$b=a.ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,2);return a.S&1?0:a.na(a.D)}function Rf(a,b){a.$b=a.Ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,2);return a.S&1?0:a.na(a.D)}function R(a,b){a.$b=a.ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,4);return a.S&1?0:a.oa(a.D)}
function Sf(a,b){a.$b=a.Ka;a.Ca=b&a.Ba;a.D=a.$b.mc(a.Ca,4);return a.S&1?0:a.oa(a.D)}function Tf(a,b){a.S&2||a.qc(a.$b.nc(a.Ca,1),b)}function Uf(a,b){a.S&2||a.jb(a.$b.nc(a.Ca,2),b)}function Vf(a,b){a.S&2||a.nb(a.$b.nc(a.Ca,4),b)}function vd(a,b,c){return a.tb(b.mc(c,a.ba))}l.xa=function(){var a=rf(this,1),b=this.Qa(this.Ha);this.Ha=a;return b};function Wf(a){var b=rf(a,2),c=a.na(a.Ha);a.Ha=b;return c}function T(a){var b=rf(a,a.Uc),c=a.cc(a.Ha);a.Ha=b;return c}
l.Ma=function(){var a=rf(this,this.ba),b=this.tb(this.Ha);this.Ha=a;return b};l.T=function(){var a=rf(this,1),b=this.Qa(this.Ha)<<24>>24;this.Ha=a;return b};function H(a){var b=a.tb(a.fa);a.fa=a.fa+a.ba|0;var c=a.Sg-a.fa|0;0>c&&0<=(a.Sg^a.fa)&&(8088>=a.ja||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?I(a,a.fa-a.ta.Aa&a.ta.Ba):-1>c&&E.call(a,12,0));return b}
function wd(a,b,c,d){c=a.fa-c|0;0>(c-a.qd|0)&&0<=(a.qd^c)&&(8088>=a.ja||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?(I(a,c-a.ta.Aa&a.ta.Ba),c=a.fa):E.call(a,12,0));switch(d){case 1:a.qc(c,b);break;case 2:a.jb(c,b);break;case 4:a.nb(c,b)}a.fa=c}function K(a,b){var c=a.fa-a.ba|0;0>(c-a.qd|0)&&0<=(a.qd^c)&&(8088>=a.ja||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?(I(a,c-a.ta.Aa&a.ta.Ba),c=a.fa):E.call(a,12,0));a.rc(c,b);a.fa=c}
function Xf(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.ja)2<b.length&&(b=b.substr(1,2));else if("PS"==b||2<b.length)d=8;a.qa[b]&&(void 0===c&&(wb(a,"Value for "+b+" is invalid"),a.Wb()),d=!a.la.Ib||a.la.oj?r(c,d):"--------".substr(0,d),a.qa[b].textContent!=d&&(a.qa[b].textContent=d))}
l.Cc=function(a){this.Wg&&(a||!this.la.Ib||this.la.oj)&&(Xf(this,"EAX",this.G),Xf(this,"EBX",this.H),Xf(this,"ECX",this.I),Xf(this,"EDX",this.M),Xf(this,"ESP",J(this)),Xf(this,"EBP",this.P),Xf(this,"ESI",this.K),Xf(this,"EDI",this.J),Xf(this,"CS",this.wa.Z),Xf(this,"DS",this.vb.Z),Xf(this,"SS",this.ta.Z),Xf(this,"ES",this.Xa.Z),Xf(this,"EIP",M(this)),a=zd(this),Xf(this,"PS",a),Xf(this,"V",a&2048),Xf(this,"D",a&1024),Xf(this,"I",a&512),Xf(this,"T",a&256),Xf(this,"S",a&128),Xf(this,"Z",a&64),Xf(this,
"A",a&16),Xf(this,"P",a&4),Xf(this,"C",a&1),80386==this.ja&&(Xf(this,"FS",this.Nb.Z),Xf(this,"GS",this.Ob.Z),Xf(this,"CR0",this.$a),Xf(this,"CR2",this.se),Xf(this,"CR3",this.Od)));if(a=this.qa.speed)a.textContent=this.la.Ib&&this.Y.ne?this.Y.ne.toFixed(2)+"Mhz":"Stopped"};
l.wf=function(a){this.la.complete=!0;var b=this.la.nj=this.ha&&Yf(this.ha),c=a?this.la.yi?0:1:-1;this.la.yi=!1;this.fb=this.A=a;this.N&&!a&&ed(this.N);a||z(this,1024)||(this.S|=4);do{var d=this.S&3312;if(d)this.Ia|=d;else if(this.qe=this.Ha,this.ka=this.vb,this.Ka=this.ta,this.D=this.C=-1,this.Ia&3072&&gf(this),this.Ia=this.S&256,this.ua){a:{if(!(this.S&4))for(var d=80286>this.ja?0:1,e=0;2>e;e++){switch(d){case 0:if(this.ua&1&&this.ca&512){var f=Zf(this.N);if(-1<=f&&(this.ua&=-2,0<=f)){this.ua&=-5;
$f.call(this,f);d=!0;break a}}break;case 1:if(this.ua&2){this.ua&=-3;80386<=this.ja&&(this.Ja[6]|=16384);$f.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.O("interrupt dispatched");this.S=0;break}if(this.ua&4){this.S=this.A=0;break}}if(b){if(ag(this.ha,this.Ha,c)){this.Wb();break}c=1}this.S=0;this.W[this.xa()].call(this)}while(0<this.A);return this.la.complete?this.fb-this.A:void 0===this.la.complete?0:-1};
Za(function(){for(var a=qb(document,"pcx86","cpu"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new Dd(d);pb(d,c)}});
function bg(a){db.call(this,"FPU",a,bg);this.ja=a.model||8087;this.X=new Float64Array(8);this.aa=new Int32Array(this.X.buffer);this.pa=new Float32Array(1);this.ua=new Int32Array(this.pa.buffer);this.W=new Float64Array(1);this.L=new Int32Array(this.W.buffer);this.ga=Array(3);this.ea=this.fa=-1;this.V=this.U=this.ia=this.A=0;this.ka=new Float64Array(1);this.ra=new Int32Array(this.ka.buffer);this.ra[0]=0;this.ra[1]=268402688;cg(this)}gb(bg);l=bg.prototype;
l.Jc=function(a,b,c){this.F=c;this.N=Gb(a,"ChipSet");ub(this)};l.hc=function(a,b){if(!b)if(!a||!this.restore)cg(this);else if(!this.restore(a))return!1;return!0};l.gc=function(a){return a?this.save():!0};l.save=function(){var a=new nf(this),b=[],c=0;b[c++]=this.jc;b[c++]=dg(this);b[c++]=eg(this);for(var d=0;d<this.X.length;d++)b[c++]=this.X[d];a.set(0,b);return a.data()};
l.restore=function(a){a=a[0];var b=0;this.jc=a[b++]&-57409;var c=a[b++];this.ma=c&-14337;this.B=(c&14336)>>11;fg(this);gg(this,a[b++]);for(c=0;c<this.X.length;c++)this.X[c]=a[b++];return!0};function cg(a){a.C=0;a.jc=959;a.ma=0;a.B=0;a.N&&(a=a.N,a.ja>=hg&&ig(a,13))}function fg(a){a.ma&=-129;a.ma&~a.jc&63&&(a.ma|=128);if(a.ma&128&&!(a.jc&128))return a=a.N,a.ja>=hg?jg(a,13):a.ya&0||$f.call(a.F,2),!0;a=a.N;a.ja>=hg&&ig(a,13);return!1}function kg(a,b){80387<=a.ja||(b&=-65);a.ma|=b;return fg(a)}
function dg(a){return a.ma|a.B<<11}function lg(a,b){return isFinite(b)?!0:!kg(a,Infinity===b?8:16)}function mg(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,lg(a,d)||(d=null));return d}function xg(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,lg(a,d)||(d=null));return d}function yg(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,lg(a,d)||(d=null));return d}function zg(a,b,c){var d=null;null==b||null==c||!c&&kg(a,2)||(d=b/c,lg(a,d)||(d=null));return d}
function Ag(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:b||(d=16384));a.ma=a.ma&-18177|d;return!0}return!1}function Bg(a,b,c){if(null==b)return null;var d=a.jc&3072;d?d=1024==d||3072==d&&0<b?Math.floor(b):Math.ceil(b):(d=Math.round(b),.5===d-b&&d%2&&d--);if(c){if(d>=c){if(kg(a,1))return null;d=-c}else if(d<-c){if(kg(a,1))return null;d=-c}a.L[0]=d|0;2147483648<c&&(a.L[1]=d/4294967296|0,!a.L[1]&&0>d&&(a.L[1]=-1))}return d}
function Cg(a,b){var c=3;a.C&1<<b&&(a=a.X[b],c=0,a?isFinite(a)||(c=2):c=1);return c}function eg(a){for(var b=0,c=a.X.length-1;0<=c;c--)b<<=2,b|=Cg(a,c);return b}function gg(a,b){a.C=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.C|=c),b>>=2}function Dg(a){var b=a.B+0&7;return a.C&1<<b?(a.pa[0]=a.X[b],!0):kg(a,1)?!1:(a.pa[0]=a.ka[0],!0)}function Eg(a){var b=a.B+0&7;return a.C&1<<b?(a.W[0]=a.X[b],!0):kg(a,1)?!1:(a.W[0]=a.ka[0],!0)}
function U(a,b){var c=null;b=a.B+b&7;a.C&1<<b?c=a.X[b]:kg(a,1)||(c=a.ka[0]);return c}function V(a,b,c){return null!=c&&(isNaN(c)?!kg(a,1):1)?(b=a.B+b&7,a.X[b]=c,a.C|=1<<b,!0):!1}function Fg(a,b,c){var d=null;b=a.B+b&7;if(c||a.C&1<<b||!kg(a,1))c=b<<1,d=Gg(a,a.aa[c],a.aa[c+1]);return d}function Hg(a){return a.F.na(a.F.D)<<16>>16}function Ig(a){return a.F.oa(a.F.D)}function Jg(a){a.ua[0]=a.F.oa(a.F.D);return a.pa[0]}function Kg(a){a.L[0]=a.F.oa(a.F.D);a.L[1]=a.F.oa(a.F.D+4);return a.W[0]}
function Lg(a){a.ga[0]=a.F.oa(a.F.D);a.ga[1]=a.F.oa(a.F.D+4);a.ga[2]=a.F.na(a.F.D+8);return a.ga}l.xi=function(){this.F.nb(this.F.D,this.L[0])};l.Wk=function(){this.F.nb(this.F.D,this.L[0]);this.F.nb(this.F.D+4,this.L[1])};l.Yk=bg.prototype.xi;l.Xk=bg.prototype.Wk;function Mg(a){a.F.nb(a.F.D,a.ga[0]);a.F.nb(a.F.D+4,a.ga[1]);a.F.jb(a.F.D+8,a.ga[2])}
function Ng(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767;b=b[0]>>>11|c<<21;c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,b=c=0));a.L[0]=b;a.L[1]=c|(d|e)<<20;return a.W[0]}function Gg(a,b,c){var d=c>>20&2047,e=2147483648|(c&1048575)<<11|b>>>21;2047==d?d=32767:d?d+=15360:e&=2147483647;a.ga[0]=b<<11;a.ga[1]=e;a.ga[2]=c>>16&32768|d;return a.ga}function Og(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function Pg(a,b){for(var c=0,d=0;b--;)c|=a%10<<d,a/=10,d+=4;return c}
function Qg(a){var b=null,c=1<<a.B;if(!(a.C&c)&&(a.ma&=-513,kg(a,65)))return b;a.C&=~c;b=a.X[a.B];a.B=a.B+1&7;return b}function Rg(a,b){if(null!=b){var c=a.B-1&7,d=1<<c;if(a.C&d&&(a.ma|=512,kg(a,65)))return;if(isNaN(b)&&kg(a,1)){if(kg(a,1))return;b=NaN}a.X[a.B=c]=b;a.C|=d}}
function Sg(a,b){var c,d=a.F;c=d.tb(b);a.jc=c&-57409;c=d.tb(b+=d.ba);a.ma=c&-14337;a.B=(c&14336)>>11;fg(a);gg(a,d.tb(b+=d.ba));!(d.$a&1)||d.ca&131072?(a.V=d.tb(b+=d.ba),c=d.tb(b+=d.ba),a.ia=c&2047,a.V|=(c&-4096)<<4,a.ea=-1,a.U=d.tb(b+=d.ba),a.U|=(d.tb(b+=d.ba)&-4096)<<4,a.fa=-1):(a.V=d.tb(b+=d.ba),c=d.tb(b+=d.ba),a.ea=c&65535,a.ia=c>>16&2047,a.U=d.tb(b+=d.ba),a.fa=d.tb(b+=d.ba)&65535);return b+d.ba}
function Tg(a,b){var c=a.F;c.rc(b,a.jc);c.rc(b+=c.ba,dg(a));c.rc(b+=c.ba,eg(a));if(!(c.$a&1)||c.ca&131072){var d=(a.ea<<4)+a.V;c.rc(b+=c.ba,d);c.rc(b+=c.ba,d>>4&-4096|a.ia);d=(a.fa<<4)+a.U;c.rc(b+=c.ba,d);c.rc(b+=c.ba,d>>4&-4096)}else c.rc(b+=c.ba,a.V),c.rc(b+=c.ba,a.ea|a.ia<<16),c.rc(b+=c.ba,a.U),c.rc(b+=c.ba,a.fa);return b+c.ba}var Ug=Math.log(10)/Math.LN2,Vg=Math.LOG2E,Wg=Math.PI,Xg=Math.log(2)/Math.LN10,Yg=Math.LN2,Zg=Math.pow(2,63);function $g(){this.ma&=-32896;fg(this)}
function ah(){Ag(this,U(this,0),U(this,this.A))}function bh(){Ag(this,U(this,0),U(this,this.A))&&Qg(this)}function ch(){bh.call(this)}function dh(){V(this,0,zg(this,U(this,0),Jg(this)))}function eh(){this.C&=~(1<<this.B)}function fh(){cg(this)}function gh(){this.jc=this.F.na(this.F.D)&-57409}function hh(){Sg(this,this.F.D)}function ih(){for(var a=this.F,b=Sg(this,a.D),c=this.ga,d=0;d<this.X.length;d++)c[0]=a.oa(b),c[1]=a.oa(b+=4),c[2]=a.na(b+=4),c&&V(this,d,Ng(this,c)),b+=2}
function jh(){for(var a=this.F,b=Tg(this,a.D),c=0;c<this.X.length;c++){var d=Fg(this,c,!0);a.nb(b,d[0]);a.nb(b+=4,d[1]);a.jb(b+=4,d[2]);b+=2}cg(this)}function kh(){Tg(this,this.F.D);this.jc|=63}function lh(){V(this,this.A,U(this,0))&&Qg(this)}function mh(){lh.call(this)}function nh(){this.F.jb(this.F.D,this.jc)}function oh(){this.F.jb(this.F.D,dg(this))}function ph(){80287<=this.ja&&(this.F.G=this.F.G&-65536|dg(this))}function qh(){var a=U(this,0);V(this,0,U(this,this.A));V(this,this.A,a)}
function rh(){qh.call(this)}
var sh={216:{0:function(){V(this,0,mg(this,U(this,0),Jg(this)))},1:function(){V(this,0,yg(this,U(this,0),Jg(this)))},2:function(){Ag(this,U(this,0),Jg(this))},3:function(){Ag(this,U(this,0),Jg(this))&&Qg(this)},4:function(){V(this,0,xg(this,U(this,0),Jg(this)))},5:function(){V(this,0,xg(this,Jg(this),U(this,0)))},6:dh,7:dh,48:function(){V(this,0,mg(this,U(this,0),U(this,this.A)))},49:function(){V(this,0,yg(this,U(this,0),U(this,this.A)))},50:ah,51:bh,52:function(){V(this,0,xg(this,U(this,0),U(this,
this.A)))},53:function(){V(this,0,xg(this,U(this,this.A),U(this,0)))},54:function(){V(this,0,zg(this,U(this,0),U(this,this.A)))},55:function(){V(this,0,zg(this,U(this,this.A),U(this,0)))}},217:{0:function(){Rg(this,Jg(this))},2:function(){Dg(this)&&this.Yk()},3:function(){Dg(this)&&(this.Yk(),Qg(this))},4:hh,5:gh,6:kh,7:nh,48:function(){Rg(this,U(this,this.A))},49:qh,50:function(){},51:mh,64:function(){V(this,0,-U(this,0))},65:function(){V(this,0,Math.abs(U(this,0)))},68:function(){Ag(this,U(this,
0),0)},69:function(){this.ma&=-18177;this.aa[((this.B+0&7)<<1)+1]&-2147483648&&(this.ma|=512);if(3==Cg(this,this.B))this.ma|=16640;else{var a=U(this,0);this.ma=isNaN(a)?this.ma|256:0===a?this.ma|16384:Infinity===a||-Infinity===a?this.ma|1280:this.ma|1024}},80:function(){Rg(this,1)},81:function(){Rg(this,Ug)},82:function(){Rg(this,Vg)},83:function(){Rg(this,Wg)},84:function(){Rg(this,Xg)},85:function(){Rg(this,Yg)},86:function(){Rg(this,0)},96:function(){V(this,0,Math.pow(2,U(this,0))-1)},97:function(){V(this,
1,U(this,1)*Math.log(U(this,0))/Math.LN2)&&Qg(this)},98:function(){V(this,0,Math.tan(U(this,0)))&&Rg(this,1)},99:function(){V(this,1,Math.atan2(U(this,1),U(this,0)))&&Qg(this)},100:function(){var a=U(this,0);null!=a&&(this.W[0]=a,V(this,0,(this.L[1]>>20&2047)-1023),this.L[1]=(this.L[1]|1072693248)&-1073741825,Rg(this,this.W[0]))},102:function(){this.B=this.B-1&7;this.ma&=-513},103:function(){this.B=this.B+1&7;this.ma&=-513},112:function(){V(this,0,U(this,0)%U(this,1))},113:function(){V(this,1,U(this,
1)*Math.log(U(this,0)+1)/Math.LN2)&&Qg(this)},114:function(){var a=U(this,0),b=null;if(0<=a||!kg(this,1))b=Math.sqrt(a),lg(this,b)||(b=null);V(this,0,b)},116:function(){V(this,0,Bg(this,U(this,0),Zg))},117:function(){var a=U(this,0),b=U(this,1);null!=a&&null!=b&&V(this,0,a*Math.pow(2,0<b?Math.floor(b):Math.ceil(b)))}},218:{0:function(){V(this,0,mg(this,U(this,0),Ig(this)))},1:function(){V(this,0,yg(this,U(this,0),Ig(this)))},2:function(){Ag(this,U(this,0),Ig(this))},3:function(){Ag(this,U(this,0),
Ig(this))&&Qg(this)},4:function(){V(this,0,xg(this,U(this,0),Ig(this)))},5:function(){V(this,0,xg(this,Ig(this),U(this,0)))},6:function(){V(this,0,zg(this,U(this,0),Ig(this)))},7:function(){V(this,0,zg(this,Ig(this),U(this,0)))}},219:{0:function(){Rg(this,Ig(this))},2:function(){null!=Bg(this,U(this,0),2147483648)&&this.xi()},3:function(){null!=Bg(this,U(this,0),2147483648)&&(this.xi(),Qg(this))},5:function(){Rg(this,Ng(this,Lg(this)))},7:function(){Fg(this,0)&&(Mg(this),Qg(this))},64:function(){8087==
this.ja&&(this.jc&=-129)},65:function(){8087==this.ja&&(this.jc|=128)},66:$g,67:fh,68:function(){},115:function(){}},220:{0:function(){V(this,0,mg(this,U(this,0),Kg(this)))},1:function(){V(this,0,yg(this,U(this,0),Kg(this)))},2:function(){Ag(this,U(this,0),Kg(this))},3:function(){Ag(this,U(this,0),Kg(this))&&Qg(this)},4:function(){V(this,0,xg(this,U(this,0),Kg(this)))},5:function(){V(this,0,xg(this,Kg(this),U(this,0)))},6:function(){V(this,0,zg(this,U(this,0),Kg(this)))},7:function(){V(this,0,zg(this,
Kg(this),U(this,0)))},48:function(){V(this,this.A,mg(this,U(this,this.A),U(this,0)))},49:function(){V(this,this.A,yg(this,U(this,this.A),U(this,0)))},50:function(){ah.call(this)},51:ch,52:function(){V(this,this.A,xg(this,U(this,0),U(this,this.A)))},53:function(){V(this,this.A,xg(this,U(this,this.A),U(this,0)))},54:function(){V(this,this.A,zg(this,U(this,0),U(this,this.A)))},55:function(){V(this,this.A,zg(this,U(this,this.A),U(this,0)))}},221:{0:function(){Rg(this,Kg(this))},2:function(){Eg(this)&&
this.Xk()},3:function(){Eg(this)&&(this.Xk(),Qg(this))},4:ih,6:jh,7:oh,48:eh,49:rh,50:function(){V(this,this.A,U(this,0))},51:lh},222:{0:function(){V(this,0,mg(this,U(this,0),Hg(this)))},1:function(){V(this,0,yg(this,U(this,0),Hg(this)))},2:function(){Ag(this,U(this,0),Hg(this))},3:function(){Ag(this,U(this,0),Hg(this))&&Qg(this)},4:function(){V(this,0,xg(this,U(this,0),Hg(this)))},5:function(){V(this,0,xg(this,Hg(this),U(this,0)))},6:function(){V(this,0,zg(this,U(this,0),Hg(this)))},7:function(){V(this,
0,zg(this,Hg(this),U(this,0)))},48:function(){V(this,this.A,mg(this,U(this,this.A),U(this,0)))&&Qg(this)},49:function(){V(this,this.A,yg(this,U(this,this.A),U(this,0)))&&Qg(this)},50:ch,51:function(){Ag(this,U(this,0),U(this,1))&&null!=Qg(this)&&Qg(this)},52:function(){V(this,this.A,xg(this,U(this,0),U(this,this.A)))&&Qg(this)},53:function(){V(this,this.A,xg(this,U(this,this.A),U(this,0)))&&Qg(this)},54:function(){V(this,this.A,zg(this,U(this,0),U(this,this.A)))&&Qg(this)},55:function(){V(this,this.A,
zg(this,U(this,this.A),U(this,0)))&&Qg(this)}},223:{0:function(){Rg(this,Hg(this))},2:function(){null!=Bg(this,U(this,0),32768)&&this.F.jb(this.F.D,this.L[0])},3:function(){null!=Bg(this,U(this,0),32768)&&(this.F.jb(this.F.D,this.L[0]),Qg(this))},4:function(){var a=Lg(this),b=Og(a[0],8)+1E8*Og(a[1],8)+1E16*Og(a[2],2);a[2]&32768&&(b=-b);Rg(this,b)},5:function(){var a;a=this.F.oa(this.F.D);a=4294967296*this.F.oa(this.F.D+4)+(a>>>0);Rg(this,a)},6:function(){var a=Bg(this,Qg(this));null!=a&&(this.ga[0]=
Pg(a,8),this.ga[1]=Pg(a/1E8,8),this.ga[2]=Pg(a/1E16,2),0>a&&(this.ga[2]|=32768),Mg(this))},7:function(){null!=Bg(this,U(this,0),Zg)&&(this.Wk(),Qg(this))},48:function(){eh.call(this);Qg(this)},49:rh,50:mh,51:mh,52:ph}},th=[$g,fh,gh,hh,ih,jh,nh,kh,oh,ph];Za(function(){for(var a=qb(document,"pcx86","fpu"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new bg(d);pb(d,c)}});function uh(a,b){var c=a+b+Gf(this)|0;tf(this,a,b,c,191);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return c&255}
function vh(a,b){var c=a+b+Gf(this)|0;tf(this,a,b,c,this.Ga|63);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return c&this.R}function wh(a,b){var c=a+b|0;tf(this,a,b,c,191);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return c&255}function xh(a,b){var c=a+b|0;tf(this,a,b,c,this.Ga|63);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return c&this.R}
function yh(a,b){a&=b;Af(this,a,128);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return a}function zh(a,b){this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return Af(this,a&b,this.Ga)&this.R}function Ah(a,b){this.A-=10+(-1===this.D?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Kf(this),a;If(this);return a}
function Bh(a){if(-1===this.D)return E.call(this,6),a;var b=a,c=this.tb(this.D),d=this.tb(this.D+this.ba);2==this.ba&&(b=a<<16>>16,c=c<<16>>16,d=d<<16>>16);this.A-=this.B.Ij;(b<c||b>d)&&E.call(this,5);this.S|=2;return a}function Ch(a,b){var c=0;if(b){If(this);for(var d=1;d&this.R;){if(b&d){a=c;break}d<<=1;c++}}else Kf(this);this.A-=11+3*c;return a}function Dh(a,b){var c=0;if(b){If(this);for(var d=2==this.ba?15:31,e=1<<d;e;){if(b&e){a=d;break}e>>>=1;c++;d--}}else Kf(this);this.A-=11+3*c;return a}
function Eh(a,b){a&1<<(b&(2==this.ba?15:31))?Bf(this):Cf(this);this.A-=-1===this.D?3:6;this.S|=2;return a}function Fh(a,b){b=1<<(b&(2==this.ba?15:31));a&b?Bf(this):Cf(this);this.A-=-1===this.D?6:8;return a^b}function Gh(a,b){b=1<<(b&(2==this.ba?15:31));a&b?Bf(this):Cf(this);this.A-=-1===this.D?6:8;return a&~b}function Hh(a,b){b=1<<(b&(2==this.ba?15:31));a&b?Bf(this):Cf(this);this.A-=-1===this.D?6:8;return a|b}
function Ih(a,b){if(-1===this.D)return Eh.call(this,a,b);var c=this.ba<<3;if(b>=c||b<-c)a=Qf(this,this.$b,this.Ca+(b>>(2==this.ba?4:5))*this.ba);b=1<<(b&(2==this.ba?15:31));a&b?Bf(this):Cf(this);this.A-=6;this.S|=2;return a}function Jh(a,b){if(-1===this.D)return Fh.call(this,a,b);var c=this.ba<<3;if(b>=c||b<-c)a=Qf(this,this.$b,this.Ca+(b>>(2==this.ba?4:5))*this.ba);b=1<<(b&(2==this.ba?15:31));a&b?Bf(this):Cf(this);this.A-=8;return a^b}
function Kh(a,b){if(-1===this.D)return Gh.call(this,a,b);var c=this.ba<<3;if(b>=c||b<-c)a=Qf(this,this.$b,this.Ca+(b>>(2==this.ba?4:5))*this.ba);b=1<<(b&(2==this.ba?15:31));a&b?Bf(this):Cf(this);this.A-=8;return a&~b}function Lh(a,b){if(-1===this.D)return Hh.call(this,a,b);var c=this.ba<<3;if(b>=c||b<-c)a=Qf(this,this.$b,this.Ca+(b>>(2==this.ba?4:5))*this.ba);b=1<<(b&(2==this.ba?15:31));a&b?Bf(this):Cf(this);this.A-=8;return a|b}
function Mh(a,b){tf(this,a,b,a-b|0,191,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Ih:this.B.Vb;this.S|=2;return a}function Nh(a,b){tf(this,a,b,a-b|0,this.Ga|63,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Ih:this.B.Vb;this.S|=2;return a}
function Oh(a){if(this.Tb){var b=this.Tb,c=this.ng,d=this.L,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=sh[c][f]){if(0>th.indexOf(e)){var f=b.F,g=f.qe;8087==b.ja&&(f.Ia&16&&g++,f.Ia&32&&g++);b.ea=f.wa.Z;b.V=g-f.wa.Aa;-1!==f.D&&(b.fa=f.$b.Z,b.U=f.D-f.$b.Aa);b.ia=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.D?2:8;return a}function Ph(a){if(80186>this.ja)return W.call(this,a);E.call(this,13,0);return a}function ge(a){E.call(this,6);return a}
function W(a){je.call(this);return a}function Qh(a,b){a=Rh.call(this,this.T(),b);80386>this.ja&&(this.A-=12);return a}function Sh(a,b){a=this.Ma();a=2==this.ba?Rh.call(this,a,b):Th.call(this,a,b);80386>this.ja&&(this.A-=12);return a}function Uh(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);Vh.call(this,a,b);c&&(this.ia=~this.ia+1|0,this.va=~this.va+(this.ia?0:1)|0)}
function Rh(a,b){a=(a<<16>>16)*(b<<16>>16)|0;32767<a||-32768>a?(Bf(this),Df(this)):(Cf(this),Ef(this));this.A-=-1===this.D?9:12;return a&65535}function Th(a,b){Uh.call(this,a,b);this.va!=this.ia>>31?(Bf(this),Df(this)):(Cf(this),Ef(this));this.A-=-1===this.D?9:12;return this.ia}function Wh(a,b){this.A-=14+(-1===this.D?0:2);If(this);-1!==this.Da.load(b)&&this.Da.Hc>=this.pa&&this.Da.Hc>=(b&3)&&(Kf(this),a=this.Da.wb&-256,2<this.ba&&(a|=(this.Da.ext&-65281)<<16));return a}
function Xh(a,b){if(-1===this.D)return je.call(this),a;xd(this,this.na(this.D+this.ba));this.A-=this.B.pf;return b}function Yh(){this.A-=this.B.kk;return this.D}function Zh(a,b){if(-1===this.D)return je.call(this),a;yd(this,this.na(this.D+this.ba));this.A-=this.B.pf;return b}function $h(a,b){if(-1===this.D)return je.call(this),a;a=this.na(this.D+this.ba);this.Nb.load(a);this.A-=this.B.pf;return b}
function ai(a,b){if(-1===this.D)return je.call(this),a;a=this.na(this.D+this.ba);this.Ob.load(a);this.A-=this.B.pf;return b}function bi(a,b){this.A-=14+(-1===this.D?0:2);if(b&65528&&-1!==this.Da.load(b)&&(7168==(this.Da.wb&7168)||this.Da.Hc>=this.pa)&&this.Da.Hc>=(b&3))return Kf(this),this.Da.Ta;If(this);return a}function ci(a,b){if(-1===this.D)return je.call(this),a;nd(this,this.na(this.D+this.ba));this.A-=this.B.pf;return b}
function di(a,b){this.A-=-1===this.C?-1===this.D?this.B.sk:this.B.rk:this.B.pk;return b}function ei(a,b){switch(this.L>>3&7){case 4:this.aa=this.G;break;case 5:this.aa=this.I;break;case 6:this.aa=this.M;break;case 7:this.aa=this.H}return b}function fi(a,b){return b}
function gi(a,b){a=this.L>>3&7;switch(a){case 0:this.aa=this.G;break;case 2:this.aa=this.M;break;case 3:this.aa=this.H;break;default:if(80286==this.ja||80386==this.ja&&4!=a&&5!=a)E.call(this,6);else switch(a){case 1:this.aa=this.I;break;case 4:this.aa=J(this);break;case 5:this.aa=this.P;break;case 6:this.aa=this.K;break;case 7:this.aa=this.J}}return di.call(this,0,b)}
function hi(a,b){switch(this.L>>3&7){case 0:b=this.Xa.Z;break;case 1:b=this.wa.Z;break;case 2:b=this.ta.Z;break;case 3:b=this.vb.Z;break;case 4:if(80386<=this.ja){b=this.Nb.Z;break}E.call(this,6);b=a;break;case 5:if(80386<=this.ja){b=this.Ob.Z;break}default:E.call(this,6),b=a}-1!==this.C&&ud(this,2);return di.call(this,0,b)}
function Vh(a,b){if(a&-65536||b&-65536){var c=b&65535;b>>>=16;var d=a&65535;a>>>=16;var e=c*d,d=(e>>>16)+b*d,f=d>>>16,d=(d&65535)+c*a;this.ia=d<<16|e&65535;this.va=f+((d>>>16)+b*a)|0}else this.ia=a*b|0,this.va=0}function zi(a,b){this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return Af(this,a|b,128)}function Ai(a,b){this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return Af(this,a|b,this.Ga)&this.R}
function Bi(a,b){var c=a-b-Gf(this)|0;tf(this,a,b,c,191,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return c&255}function Ci(a,b){var c=a-b-Gf(this)|0;tf(this,a,b,c,this.Ga|63,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return c&this.R}function Di(){return zf(this)?1:0}function Ei(){return uf(this)?1:0}function Fi(){return uf(this)?0:1}function Gi(){return xf(this)?1:0}function Hi(){return xf(this)?0:1}function Ii(){return uf(this)||xf(this)?1:0}
function Ji(){return uf(this)||xf(this)?0:1}function Ki(){return yf(this)?1:0}function Li(){return yf(this)?0:1}function Mi(){return vf(this)?1:0}function Ni(){return vf(this)?0:1}function Oi(){return!yf(this)!=!zf(this)?1:0}function Pi(){return!yf(this)!=!zf(this)?0:1}function Qi(){return xf(this)||!yf(this)!=!zf(this)?1:0}function Ri(){return xf(this)||!yf(this)!=!zf(this)?0:1}function Si(a,b){return Ti.call(this,a,b,this.xa())}function Ui(a,b){return Vi.call(this,a,b,this.xa())}
function Wi(a,b){return Ti.call(this,a,b,this.I&31)}function Xi(a,b){return Vi.call(this,a,b,this.I&31)}function Yi(a,b){return Zi.call(this,a,b,this.xa())}function $i(a,b){return aj.call(this,a,b,this.xa())}function bj(a,b){return Zi.call(this,a,b,this.I&31)}function cj(a,b){return aj.call(this,a,b,this.I&31)}function dj(a,b){var c=a-b|0;tf(this,a,b,c,191,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return c&255}
function ej(a,b){var c=a-b|0;tf(this,a,b,c,this.Ga|63,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return c&this.R}function fj(a,b){Af(this,a&b,128);this.A-=-1===this.C?-1===this.D?this.B.ji:this.B.Xf:this.B.Xf;this.S|=2;return a}function gj(a,b){Af(this,a&b,this.Ga);this.A-=-1===this.C?-1===this.D?this.B.ji:this.B.Xf:this.B.Xf;this.S|=2;return a}function hj(a,b){var c=this.G&this.R,d=(1<<(this.I&31))-1;return a&~(d<<c)|(b&d)<<c}
function ij(a,b){return b>>(this.G&this.R)&(1<<(this.I&31))-1&this.R}function jj(a,b){if(-1===this.D){switch(this.L&7){case 0:this.G=this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.M=this.M&-256|a;break;case 3:this.H=this.H&-256|a;break;case 4:this.G=this.G&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.M=this.M&-65281|a<<8;break;case 7:this.H=this.H&-65281|a<<8}this.A-=this.B.li}else this.C=this.D,Tf(this,a),this.A-=this.B.ki;return b}
function kj(a,b){if(-1===this.D){switch(this.L&7){case 0:this.G=this.G&~this.R|a;break;case 1:this.I=this.I&~this.R|a;break;case 2:this.M=this.M&~this.R|a;break;case 3:this.H=this.H&~this.R|a;break;case 4:I(this,J(this)&~this.R|a);break;case 5:this.P=this.H&~this.R|a;break;case 6:this.K=this.K&~this.R|a;break;case 7:this.J=this.J&~this.R|a}this.A-=this.B.li}else this.C=this.D,this.S&2||this.rc(this.$b.nc(this.Ca,this.ba),a),this.A-=this.B.ki;return b}
function lj(a,b){a^=b;Af(this,a,128);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return a}function mj(a,b){this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Oc;return Af(this,a^b,this.Ga)&this.R}function nj(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function oj(a){var b=a-1|0;tf(this,a,1,b,this.Ga|62,!0);this.A-=2;return a&~this.R|b&this.R}
function pj(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1;c=[c>>>0,0];for(a=[a>>>0,b>>>0];0<nj(a,c);){var f=b=c;b[0]+=f[0];b[1]+=f[1];4294967295<b[0]&&(b[0]>>>=0,b[1]++);e+=e}do 0<=nj(a,c)&&(b=a,f=c,b[0]-=f[0],b[1]-=f[1],0>b[0]&&(b[0]>>>=0,b[1]--),d+=e),b=c,b[0]>>>=1,b[1]&1&&(b[0]=(b[0]|2147483648)>>>0),b[1]>>>=1,e/=2;while(1<=e);this.ia=d;this.va=a[0];return!0}function qj(a){var b=a+1|0;tf(this,a,1,b,this.Ga|62);this.A-=2;return a&~this.R|b&this.R}
function rj(a){this.$a=a;td(this);this.$a&-2147483648?ue(this):we(this)}function Cd(a){this.Od=a;Tb(this)}function sj(a){this.S|=1;this.Ya.call(this,a);this.A-=-1===this.D?4:5}function Ti(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a<<c-1;a=(d<<1|b>>>16-c)&65535;Af(this,a,32768,d&32768)}return a}function Vi(a,b,c){if(c){var d=a<<c-1;a=d<<1|b>>>32-c;Af(this,a,-2147483648,d&-2147483648)}return a}
function Zi(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a>>>c-1;a=(d>>>1|b<<16-c)&65535;Af(this,a,32768,d&1)}return a}function aj(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;Af(this,a,-2147483648,d&1)}return a}function tj(){this.A-=-1===this.D?2:this.B.Fk;return 1}function uj(){var a=this.I&255;this.A-=(-1===this.D?this.B.ci:this.B.bi)+(a<<this.B.di);return a}function vj(){var a=this.xa();this.A-=(-1===this.D?this.B.ci:this.B.bi)+(a<<this.B.di);return a}function wj(){return null}
function xj(){return this.aa}function yj(a,b){this.bc=this.wa.Z;this.sb=this.ta.Z;this.U=this.fa;var c=M(this),d=this.ba;null!=Bd(this,a,b,!0)&&(wd(this,this.bc,d,2),wd(this,c,d,d));this.bc=this.sb=this.U=-1}function zj(a,b,c){this.A-=this.B.ck+(c||0);c=zd(this);var d=this.wa.Z,e=M(this);a=this.wa.Cj(a);-1!==a&&(K(this,c),K(this,d),K(this,e),null!=b&&K(this,b),this.qb=-1,qf(this,a))}
function Aj(a){this.sb=this.ta.Z;this.U=this.fa;var b=H(this),c=H(this);a&&I(this,J(this)+a);Bd(this,b,c,!1)&&(a&&I(this,J(this)+a),Bj.call(this,this.vb),Bj.call(this,this.Xa),80386<=this.ja&&(Bj.call(this,this.Nb),Bj.call(this,this.Ob)));2==a&&this.le&&kf(this,this.Ha);this.sb=this.U=-1}function Cj(){8086==this.ja?(this.qb=-1,zj.call(this,0,null,2)):E.call(this,0,null,2)}function $f(a,b){this.qb=a;void 0===b&&(b=11);zj.call(this,a,null,b)}
function E(a,b,c,d){var e=!1;this.la.complete?80186<=this.ja&&(e=!0,0>this.qb?(-1!=this.bc&&(this.bc!==this.wa.Z&&(this.wa.Lb=this.bc&3,pf(this,this.bc)),this.bc=-1),this.qe!==this.Ha&&qf(this,this.qe),-1!=this.sb&&(this.sb!==this.ta.Z&&nd(this,this.sb),this.sb=-1),-1!==this.U&&(this.U!==this.fa&&I(this,this.gb&~this.ta.Ba|this.U-this.ta.Aa),this.U=-1)):8!=this.qb?(b=0,a=8):(b=0,a=-1,se(this),e=d=!1)):qf(this,this.qe);var f=a,g=b,h=32,k=Nf(this,this.Ha);204!=k||this.Sd||(d=!1);this.ca&131072&&(6==
f&&99==k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.Ha&&1048575>=this.Ha&&(d=!1);z(this,h|-2147483648)&&(d=!0);if(z(this,h)||d){var m=this.la.Ib,f="Fault "+u(f)+(null!=g?" ("+v(g)+")":"")+" on opcode "+u(k);d&&m&&(f+=" (blocked)");this.ha?(y(this,f,d||h,!0),d&&(d=m,this.ha.Wb())):(this.Na(f),this.Wb())}if(d&&e)throw-1;if(e)throw this.qb=a,zj.call(this,a,b,c),this.qe=this.Ha,this.S=1==a?this.S|8192:this.S|4096,a;}
function ve(a,b,c){this.se=a;a=0;b&&(a|=1);c&&(a|=2);3==this.pa&&(a|=4);E.call(this,14,a)}function Bj(a){var b=a.wb&7680;a.Z&65528&&(6144==b||7168==b||7168>b&&a.Hc<this.pa&&a.Hc<(a.Z&3))&&a.load(0)}
function Ae(a){var b,c;switch((this.L=this.xa())&199){case 0:c=P(this,this.H+this.K);this.A-=this.B.ed;break;case 1:c=P(this,this.H+this.J);this.A-=this.B.fd;break;case 2:c=Pf(this,this.P+this.K);this.A-=this.B.fd;break;case 3:c=Pf(this,this.P+this.J);this.A-=this.B.ed;break;case 4:c=P(this,this.K);this.A-=this.B.Kc;break;case 5:c=P(this,this.J);this.A-=this.B.Kc;break;case 6:c=P(this,T(this));this.A-=this.B.Jd;break;case 7:c=P(this,this.H);this.A-=this.B.Kc;break;case 64:c=P(this,this.H+this.K+this.T());
this.A-=this.B.dc;break;case 65:c=P(this,this.H+this.J+this.T());this.A-=this.B.ec;break;case 66:c=Pf(this,this.P+this.K+this.T());this.A-=this.B.ec;break;case 67:c=Pf(this,this.P+this.J+this.T());this.A-=this.B.dc;break;case 68:c=P(this,this.K+this.T());this.A-=this.B.ib;break;case 69:c=P(this,this.J+this.T());this.A-=this.B.ib;break;case 70:c=Pf(this,this.P+this.T());this.A-=this.B.ib;break;case 71:c=P(this,this.H+this.T());this.A-=this.B.ib;break;case 128:c=P(this,this.H+this.K+T(this));this.A-=
this.B.dc;break;case 129:c=P(this,this.H+this.J+T(this));this.A-=this.B.ec;break;case 130:c=Pf(this,this.P+this.K+T(this));this.A-=this.B.ec;break;case 131:c=Pf(this,this.P+this.J+T(this));this.A-=this.B.dc;break;case 132:c=P(this,this.K+T(this));this.A-=this.B.ib;break;case 133:c=P(this,this.J+T(this));this.A-=this.B.ib;break;case 134:c=Pf(this,this.P+T(this));this.A-=this.B.ib;break;case 135:c=P(this,this.H+T(this));this.A-=this.B.ib;break;case 192:c=this.G&255;break;case 193:c=this.I&255;break;
case 194:c=this.M&255;break;case 195:c=this.H&255;break;case 196:c=this.G>>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.M>>8&255;break;case 199:c=this.H>>8&255;break;default:c=0}var d=this.L>>3&7;switch(d){case 0:b=this.G&255;break;case 1:b=this.I&255;break;case 2:b=this.M&255;break;case 3:b=this.H&255;break;case 4:b=this.G>>8&255;break;case 5:b=this.I>>8&255;break;case 6:b=this.M>>8&255;break;case 7:b=this.H>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.G=this.G&
-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.M=this.M&-256|a;break;case 3:this.H=this.H&-256|a;break;case 4:this.G=this.G&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.M=this.M&-65281|a<<8;break;case 7:this.H=this.H&-65281|a<<8}}
function Be(a){var b,c,d=(this.L=this.xa())&199;switch(d){case 0:b=P(this,this.H+this.K);this.C=this.D;break;case 1:b=P(this,this.H+this.J);this.C=this.D;break;case 2:b=Pf(this,this.P+this.K);this.C=this.D;break;case 3:b=Pf(this,this.P+this.J);this.C=this.D;break;case 4:b=P(this,this.K);this.C=this.D;break;case 5:b=P(this,this.J);this.C=this.D;break;case 6:b=P(this,T(this));this.C=this.D;break;case 7:b=P(this,this.H);this.C=this.D;break;case 64:b=P(this,this.H+this.K+this.T());this.C=this.D;break;
case 65:b=P(this,this.H+this.J+this.T());this.C=this.D;break;case 66:b=Pf(this,this.P+this.K+this.T());this.C=this.D;break;case 67:b=Pf(this,this.P+this.J+this.T());this.C=this.D;break;case 68:b=P(this,this.K+this.T());this.C=this.D;break;case 69:b=P(this,this.J+this.T());this.C=this.D;break;case 70:b=Pf(this,this.P+this.T());this.C=this.D;break;case 71:b=P(this,this.H+this.T());this.C=this.D;break;case 128:b=P(this,this.H+this.K+T(this));this.C=this.D;break;case 129:b=P(this,this.H+this.J+T(this));
this.C=this.D;break;case 130:b=Pf(this,this.P+this.K+T(this));this.C=this.D;break;case 131:b=Pf(this,this.P+this.J+T(this));this.C=this.D;break;case 132:b=P(this,this.K+T(this));this.C=this.D;break;case 133:b=P(this,this.J+T(this));this.C=this.D;break;case 134:b=Pf(this,this.P+T(this));this.C=this.D;break;case 135:b=P(this,this.H+T(this));this.C=this.D;break;case 192:b=this.G&255;break;case 193:b=this.I&255;break;case 194:b=this.M&255;break;case 195:b=this.H&255;break;case 196:b=this.G>>8&255;break;
case 197:b=this.I>>8&255;break;case 198:b=this.M>>8&255;break;case 199:b=this.H>>8&255;break;default:b=0}switch(this.L>>3&7){case 0:c=this.G&255;break;case 1:c=this.I&255;break;case 2:c=this.M&255;break;case 3:c=this.H&255;break;case 4:c=this.G>>8&255;break;case 5:c=this.I>>8&255;break;case 6:c=this.M>>8&255;break;case 7:c=this.H>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Tf(this,a);this.A-=this.B.ed;break;case 1:case 2:Tf(this,a);this.A-=this.B.fd;break;case 4:case 5:case 7:Tf(this,
a);this.A-=this.B.Kc;break;case 6:Tf(this,a);this.A-=this.B.Jd;break;case 64:case 67:case 128:case 131:Tf(this,a);this.A-=this.B.dc;break;case 65:case 66:case 129:case 130:Tf(this,a);this.A-=this.B.ec;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Tf(this,a);this.A-=this.B.ib;break;case 192:this.G=this.G&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.M=this.M&-256|a;break;case 195:this.H=this.H&-256|a;break;case 196:this.G=this.G&-65281|a<<8;break;case 197:this.I=
this.I&-65281|a<<8;break;case 198:this.M=this.M&-65281|a<<8;break;case 199:this.H=this.H&-65281|a<<8}}
function Ce(a,b){var c,d=(this.L=this.xa())&199;switch(d){case 0:c=P(this,this.H+this.K);this.C=this.D;break;case 1:c=P(this,this.H+this.J);this.C=this.D;break;case 2:c=Pf(this,this.P+this.K);this.C=this.D;break;case 3:c=Pf(this,this.P+this.J);this.C=this.D;break;case 4:c=P(this,this.K);this.C=this.D;break;case 5:c=P(this,this.J);this.C=this.D;break;case 6:c=P(this,T(this));this.C=this.D;break;case 7:c=P(this,this.H);this.C=this.D;break;case 64:c=P(this,this.H+this.K+this.T());this.C=this.D;break;
case 65:c=P(this,this.H+this.J+this.T());this.C=this.D;break;case 66:c=Pf(this,this.P+this.K+this.T());this.C=this.D;break;case 67:c=Pf(this,this.P+this.J+this.T());this.C=this.D;break;case 68:c=P(this,this.K+this.T());this.C=this.D;break;case 69:c=P(this,this.J+this.T());this.C=this.D;break;case 70:c=Pf(this,this.P+this.T());this.C=this.D;break;case 71:c=P(this,this.H+this.T());this.C=this.D;break;case 128:c=P(this,this.H+this.K+T(this));this.C=this.D;break;case 129:c=P(this,this.H+this.J+T(this));
this.C=this.D;break;case 130:c=Pf(this,this.P+this.K+T(this));this.C=this.D;break;case 131:c=Pf(this,this.P+this.J+T(this));this.C=this.D;break;case 132:c=P(this,this.K+T(this));this.C=this.D;break;case 133:c=P(this,this.J+T(this));this.C=this.D;break;case 134:c=Pf(this,this.P+T(this));this.C=this.D;break;case 135:c=P(this,this.H+T(this));this.C=this.D;break;case 192:c=this.G&255;break;case 193:c=this.I&255;break;case 194:c=this.M&255;break;case 195:c=this.H&255;break;case 196:c=this.G>>8&255;break;
case 197:c=this.I>>8&255;break;case 198:c=this.M>>8&255;break;case 199:c=this.H>>8&255;break;default:c=0}a=a[this.L>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Tf(this,a);this.A-=this.B.ed;break;case 1:case 2:Tf(this,a);this.A-=this.B.fd;break;case 4:case 5:case 7:Tf(this,a);this.A-=this.B.Kc;break;case 6:Tf(this,a);this.A-=this.B.Jd;break;case 64:case 67:case 128:case 131:Tf(this,a);this.A-=this.B.dc;break;case 65:case 66:case 129:case 130:Tf(this,a);this.A-=this.B.ec;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Tf(this,
a);this.A-=this.B.ib;break;case 192:this.G=this.G&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.M=this.M&-256|a;break;case 195:this.H=this.H&-256|a;break;case 196:this.G=this.G&-65281|a<<8;break;case 197:this.I=this.I&-65281|a<<8;break;case 198:this.M=this.M&-65281|a<<8;break;case 199:this.H=this.H&-65281|a<<8}}
function De(a){var b,c;switch((this.L=this.xa())&199){case 0:c=Q(this,this.H+this.K);this.A-=this.B.ed;break;case 1:c=Q(this,this.H+this.J);this.A-=this.B.fd;break;case 2:c=Rf(this,this.P+this.K);this.A-=this.B.fd;break;case 3:c=Rf(this,this.P+this.J);this.A-=this.B.ed;break;case 4:c=Q(this,this.K);this.A-=this.B.Kc;break;case 5:c=Q(this,this.J);this.A-=this.B.Kc;break;case 6:c=Q(this,T(this));this.A-=this.B.Jd;break;case 7:c=Q(this,this.H);this.A-=this.B.Kc;break;case 64:c=Q(this,this.H+this.K+this.T());
this.A-=this.B.dc;break;case 65:c=Q(this,this.H+this.J+this.T());this.A-=this.B.ec;break;case 66:c=Rf(this,this.P+this.K+this.T());this.A-=this.B.ec;break;case 67:c=Rf(this,this.P+this.J+this.T());this.A-=this.B.dc;break;case 68:c=Q(this,this.K+this.T());this.A-=this.B.ib;break;case 69:c=Q(this,this.J+this.T());this.A-=this.B.ib;break;case 70:c=Rf(this,this.P+this.T());this.A-=this.B.ib;break;case 71:c=Q(this,this.H+this.T());this.A-=this.B.ib;break;case 128:c=Q(this,this.H+this.K+T(this));this.A-=
this.B.dc;break;case 129:c=Q(this,this.H+this.J+T(this));this.A-=this.B.ec;break;case 130:c=Rf(this,this.P+this.K+T(this));this.A-=this.B.ec;break;case 131:c=Rf(this,this.P+this.J+T(this));this.A-=this.B.dc;break;case 132:c=Q(this,this.K+T(this));this.A-=this.B.ib;break;case 133:c=Q(this,this.J+T(this));this.A-=this.B.ib;break;case 134:c=Rf(this,this.P+T(this));this.A-=this.B.ib;break;case 135:c=Q(this,this.H+T(this));this.A-=this.B.ib;break;case 192:c=this.G&65535;break;case 193:c=this.I&65535;break;
case 194:c=this.M&65535;break;case 195:c=this.H&65535;break;case 196:c=J(this)&65535;break;case 197:c=this.P&65535;break;case 198:c=this.K&65535;break;case 199:c=this.J&65535;break;default:c=0}var d=this.L>>3&7;switch(d){case 0:b=this.G&65535;break;case 1:b=this.I&65535;break;case 2:b=this.M&65535;break;case 3:b=this.H&65535;break;case 4:b=J(this)&65535;break;case 5:b=this.P&65535;break;case 6:b=this.K&65535;break;case 7:b=this.J&65535;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.G=
this.G&-65536|a;break;case 1:this.I=this.I&-65536|a;break;case 2:this.M=this.M&-65536|a;break;case 3:this.H=this.H&-65536|a;break;case 4:I(this,J(this)&-65536|a);break;case 5:this.P=this.P&-65536|a;break;case 6:this.K=this.K&-65536|a;break;case 7:this.J=this.J&-65536|a}}
function Ee(a){var b,c,d=(this.L=this.xa())&199;switch(d){case 0:b=Q(this,this.H+this.K);this.C=this.D;break;case 1:b=Q(this,this.H+this.J);this.C=this.D;break;case 2:b=Rf(this,this.P+this.K);this.C=this.D;break;case 3:b=Rf(this,this.P+this.J);this.C=this.D;break;case 4:b=Q(this,this.K);this.C=this.D;break;case 5:b=Q(this,this.J);this.C=this.D;break;case 6:b=Q(this,T(this));this.C=this.D;break;case 7:b=Q(this,this.H);this.C=this.D;break;case 64:b=Q(this,this.H+this.K+this.T());this.C=this.D;break;
case 65:b=Q(this,this.H+this.J+this.T());this.C=this.D;break;case 66:b=Rf(this,this.P+this.K+this.T());this.C=this.D;break;case 67:b=Rf(this,this.P+this.J+this.T());this.C=this.D;break;case 68:b=Q(this,this.K+this.T());this.C=this.D;break;case 69:b=Q(this,this.J+this.T());this.C=this.D;break;case 70:b=Rf(this,this.P+this.T());this.C=this.D;break;case 71:b=Q(this,this.H+this.T());this.C=this.D;break;case 128:b=Q(this,this.H+this.K+T(this));this.C=this.D;break;case 129:b=Q(this,this.H+this.J+T(this));
this.C=this.D;break;case 130:b=Rf(this,this.P+this.K+T(this));this.C=this.D;break;case 131:b=Rf(this,this.P+this.J+T(this));this.C=this.D;break;case 132:b=Q(this,this.K+T(this));this.C=this.D;break;case 133:b=Q(this,this.J+T(this));this.C=this.D;break;case 134:b=Rf(this,this.P+T(this));this.C=this.D;break;case 135:b=Q(this,this.H+T(this));this.C=this.D;break;case 192:b=this.G&65535;break;case 193:b=this.I&65535;break;case 194:b=this.M&65535;break;case 195:b=this.H&65535;break;case 196:b=J(this)&65535;
break;case 197:b=this.P&65535;break;case 198:b=this.K&65535;break;case 199:b=this.J&65535;break;default:b=0}switch(this.L>>3&7){case 0:c=this.G&65535;break;case 1:c=this.I&65535;break;case 2:c=this.M&65535;break;case 3:c=this.H&65535;break;case 4:c=J(this)&65535;break;case 5:c=this.P&65535;break;case 6:c=this.K&65535;break;case 7:c=this.J&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Uf(this,a);this.A-=this.B.ed;break;case 1:case 2:Uf(this,a);this.A-=this.B.fd;break;case 4:case 5:case 7:Uf(this,
a);this.A-=this.B.Kc;break;case 6:Uf(this,a);this.A-=this.B.Jd;break;case 64:case 67:case 128:case 131:Uf(this,a);this.A-=this.B.dc;break;case 65:case 66:case 129:case 130:Uf(this,a);this.A-=this.B.ec;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Uf(this,a);this.A-=this.B.ib;break;case 192:this.G=this.G&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.M=this.M&-65536|a;break;case 195:this.H=this.H&-65536|a;break;case 196:I(this,J(this)&-65536|a);break;
case 197:this.P=this.P&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a}}
function He(a,b){var c,d=(this.L=this.xa())&199;switch(d){case 0:c=Q(this,this.H+this.K);this.C=this.D;break;case 1:c=Q(this,this.H+this.J);this.C=this.D;break;case 2:c=Rf(this,this.P+this.K);this.C=this.D;break;case 3:c=Rf(this,this.P+this.J);this.C=this.D;break;case 4:c=Q(this,this.K);this.C=this.D;break;case 5:c=Q(this,this.J);this.C=this.D;break;case 6:c=Q(this,T(this));this.C=this.D;break;case 7:c=Q(this,this.H);this.C=this.D;break;case 64:c=Q(this,this.H+this.K+this.T());this.C=this.D;break;
case 65:c=Q(this,this.H+this.J+this.T());this.C=this.D;break;case 66:c=Rf(this,this.P+this.K+this.T());this.C=this.D;break;case 67:c=Rf(this,this.P+this.J+this.T());this.C=this.D;break;case 68:c=Q(this,this.K+this.T());this.C=this.D;break;case 69:c=Q(this,this.J+this.T());this.C=this.D;break;case 70:c=Rf(this,this.P+this.T());this.C=this.D;break;case 71:c=Q(this,this.H+this.T());this.C=this.D;break;case 128:c=Q(this,this.H+this.K+T(this));this.C=this.D;break;case 129:c=Q(this,this.H+this.J+T(this));
this.C=this.D;break;case 130:c=Rf(this,this.P+this.K+T(this));this.C=this.D;break;case 131:c=Rf(this,this.P+this.J+T(this));this.C=this.D;break;case 132:c=Q(this,this.K+T(this));this.C=this.D;break;case 133:c=Q(this,this.J+T(this));this.C=this.D;break;case 134:c=Rf(this,this.P+T(this));this.C=this.D;break;case 135:c=Q(this,this.H+T(this));this.C=this.D;break;case 192:c=this.G&65535;break;case 193:c=this.I&65535;break;case 194:c=this.M&65535;break;case 195:c=this.H&65535;break;case 196:c=J(this)&65535;
break;case 197:c=this.P&65535;break;case 198:c=this.K&65535;break;case 199:c=this.J&65535;break;default:c=0}a=a[this.L>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Uf(this,a);this.A-=this.B.ed;break;case 1:case 2:Uf(this,a);this.A-=this.B.fd;break;case 4:case 5:case 7:Uf(this,a);this.A-=this.B.Kc;break;case 6:Uf(this,a);this.A-=this.B.Jd;break;case 64:case 67:case 128:case 131:Uf(this,a);this.A-=this.B.dc;break;case 65:case 66:case 129:case 130:Uf(this,a);this.A-=this.B.ec;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Uf(this,
a);this.A-=this.B.ib;break;case 192:this.G=this.G&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.M=this.M&-65536|a;break;case 195:this.H=this.H&-65536|a;break;case 196:I(this,J(this)&-65536|a);break;case 197:this.P=this.P&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a}}
function Ie(a){var b,c;switch((this.L=this.xa())&199){case 0:c=R(this,this.H+this.K);this.A-=this.B.ed;break;case 1:c=R(this,this.H+this.J);this.A-=this.B.fd;break;case 2:c=Sf(this,this.P+this.K);this.A-=this.B.fd;break;case 3:c=Sf(this,this.P+this.J);this.A-=this.B.ed;break;case 4:c=R(this,this.K);this.A-=this.B.Kc;break;case 5:c=R(this,this.J);this.A-=this.B.Kc;break;case 6:c=R(this,T(this));this.A-=this.B.Jd;break;case 7:c=R(this,this.H);this.A-=this.B.Kc;break;case 64:c=R(this,this.H+this.K+this.T());
this.A-=this.B.dc;break;case 65:c=R(this,this.H+this.J+this.T());this.A-=this.B.ec;break;case 66:c=Sf(this,this.P+this.K+this.T());this.A-=this.B.ec;break;case 67:c=Sf(this,this.P+this.J+this.T());this.A-=this.B.dc;break;case 68:c=R(this,this.K+this.T());this.A-=this.B.ib;break;case 69:c=R(this,this.J+this.T());this.A-=this.B.ib;break;case 70:c=Sf(this,this.P+this.T());this.A-=this.B.ib;break;case 71:c=R(this,this.H+this.T());this.A-=this.B.ib;break;case 128:c=R(this,this.H+this.K+T(this));this.A-=
this.B.dc;break;case 129:c=R(this,this.H+this.J+T(this));this.A-=this.B.ec;break;case 130:c=Sf(this,this.P+this.K+T(this));this.A-=this.B.ec;break;case 131:c=Sf(this,this.P+this.J+T(this));this.A-=this.B.dc;break;case 132:c=R(this,this.K+T(this));this.A-=this.B.ib;break;case 133:c=R(this,this.J+T(this));this.A-=this.B.ib;break;case 134:c=Sf(this,this.P+T(this));this.A-=this.B.ib;break;case 135:c=R(this,this.H+T(this));this.A-=this.B.ib;break;case 192:c=this.G;break;case 193:c=this.I;break;case 194:c=
this.M;break;case 195:c=this.H;break;case 196:c=J(this);break;case 197:c=this.P;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}var d=this.L>>3&7;switch(d){case 0:b=this.G;break;case 1:b=this.I;break;case 2:b=this.M;break;case 3:b=this.H;break;case 4:b=J(this);break;case 5:b=this.P;break;case 6:b=this.K;break;case 7:b=this.J;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.M=a;break;case 3:this.H=a;break;case 4:I(this,a);break;
case 5:this.P=a;break;case 6:this.K=a;break;case 7:this.J=a}}
function Je(a){var b,c,d=(this.L=this.xa())&199;switch(d){case 0:b=R(this,this.H+this.K);this.C=this.D;break;case 1:b=R(this,this.H+this.J);this.C=this.D;break;case 2:b=Sf(this,this.P+this.K);this.C=this.D;break;case 3:b=Sf(this,this.P+this.J);this.C=this.D;break;case 4:b=R(this,this.K);this.C=this.D;break;case 5:b=R(this,this.J);this.C=this.D;break;case 6:b=R(this,T(this));this.C=this.D;break;case 7:b=R(this,this.H);this.C=this.D;break;case 64:b=R(this,this.H+this.K+this.T());this.C=this.D;break;
case 65:b=R(this,this.H+this.J+this.T());this.C=this.D;break;case 66:b=Sf(this,this.P+this.K+this.T());this.C=this.D;break;case 67:b=Sf(this,this.P+this.J+this.T());this.C=this.D;break;case 68:b=R(this,this.K+this.T());this.C=this.D;break;case 69:b=R(this,this.J+this.T());this.C=this.D;break;case 70:b=Sf(this,this.P+this.T());this.C=this.D;break;case 71:b=R(this,this.H+this.T());this.C=this.D;break;case 128:b=R(this,this.H+this.K+T(this));this.C=this.D;break;case 129:b=R(this,this.H+this.J+T(this));
this.C=this.D;break;case 130:b=Sf(this,this.P+this.K+T(this));this.C=this.D;break;case 131:b=Sf(this,this.P+this.J+T(this));this.C=this.D;break;case 132:b=R(this,this.K+T(this));this.C=this.D;break;case 133:b=R(this,this.J+T(this));this.C=this.D;break;case 134:b=Sf(this,this.P+T(this));this.C=this.D;break;case 135:b=R(this,this.H+T(this));this.C=this.D;break;case 192:b=this.G;break;case 193:b=this.I;break;case 194:b=this.M;break;case 195:b=this.H;break;case 196:b=J(this);break;case 197:b=this.P;break;
case 198:b=this.K;break;case 199:b=this.J;break;default:b=0}switch(this.L>>3&7){case 0:c=this.G;break;case 1:c=this.I;break;case 2:c=this.M;break;case 3:c=this.H;break;case 4:c=J(this);break;case 5:c=this.P;break;case 6:c=this.K;break;case 7:c=this.J;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Vf(this,a);this.A-=this.B.ed;break;case 1:case 2:Vf(this,a);this.A-=this.B.fd;break;case 4:case 5:case 7:Vf(this,a);this.A-=this.B.Kc;break;case 6:Vf(this,a);this.A-=this.B.Jd;break;case 64:case 67:case 128:case 131:Vf(this,
a);this.A-=this.B.dc;break;case 65:case 66:case 129:case 130:Vf(this,a);this.A-=this.B.ec;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Vf(this,a);this.A-=this.B.ib;break;case 192:this.G=a;break;case 193:this.I=a;break;case 194:this.M=a;break;case 195:this.H=a;break;case 196:I(this,a);break;case 197:this.P=a;break;case 198:this.K=a;break;case 199:this.J=a}}
function Ke(a,b){var c,d=(this.L=this.xa())&199;switch(d){case 0:c=R(this,this.H+this.K);this.C=this.D;break;case 1:c=R(this,this.H+this.J);this.C=this.D;break;case 2:c=Sf(this,this.P+this.K);this.C=this.D;break;case 3:c=Sf(this,this.P+this.J);this.C=this.D;break;case 4:c=R(this,this.K);this.C=this.D;break;case 5:c=R(this,this.J);this.C=this.D;break;case 6:c=R(this,T(this));this.C=this.D;break;case 7:c=R(this,this.H);this.C=this.D;break;case 64:c=R(this,this.H+this.K+this.T());this.C=this.D;break;
case 65:c=R(this,this.H+this.J+this.T());this.C=this.D;break;case 66:c=Sf(this,this.P+this.K+this.T());this.C=this.D;break;case 67:c=Sf(this,this.P+this.J+this.T());this.C=this.D;break;case 68:c=R(this,this.K+this.T());this.C=this.D;break;case 69:c=R(this,this.J+this.T());this.C=this.D;break;case 70:c=Sf(this,this.P+this.T());this.C=this.D;break;case 71:c=R(this,this.H+this.T());this.C=this.D;break;case 128:c=R(this,this.H+this.K+T(this));this.C=this.D;break;case 129:c=R(this,this.H+this.J+T(this));
this.C=this.D;break;case 130:c=Sf(this,this.P+this.K+T(this));this.C=this.D;break;case 131:c=Sf(this,this.P+this.J+T(this));this.C=this.D;break;case 132:c=R(this,this.K+T(this));this.C=this.D;break;case 133:c=R(this,this.J+T(this));this.C=this.D;break;case 134:c=Sf(this,this.P+T(this));this.C=this.D;break;case 135:c=R(this,this.H+T(this));this.C=this.D;break;case 192:c=this.G;break;case 193:c=this.I;break;case 194:c=this.M;break;case 195:c=this.H;break;case 196:c=J(this);break;case 197:c=this.P;break;
case 198:c=this.K;break;case 199:c=this.J}a=a[this.L>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Vf(this,a);this.A-=this.B.ed;break;case 1:case 2:Vf(this,a);this.A-=this.B.fd;break;case 4:case 5:case 7:Vf(this,a);this.A-=this.B.Kc;break;case 6:Vf(this,a);this.A-=this.B.Jd;break;case 64:case 67:case 128:case 131:Vf(this,a);this.A-=this.B.dc;break;case 65:case 66:case 129:case 130:Vf(this,a);this.A-=this.B.ec;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Vf(this,
a);this.A-=this.B.ib;break;case 192:this.G=a;break;case 193:this.I=a;break;case 194:this.M=a;break;case 195:this.H=a;break;case 196:I(this,a);break;case 197:this.P=a;break;case 198:this.K=a;break;case 199:this.J=a}}
function Le(a){var b,c;switch((this.L=this.xa())&199){case 0:c=P(this,this.G);break;case 1:c=P(this,this.I);break;case 2:c=P(this,this.M);break;case 3:c=P(this,this.H);break;case 4:c=P(this,Dj.call(this,0));break;case 5:c=P(this,T(this));break;case 6:c=P(this,this.K);break;case 7:c=P(this,this.J);break;case 64:c=P(this,this.G+this.T());break;case 65:c=P(this,this.I+this.T());break;case 66:c=P(this,this.M+this.T());break;case 67:c=P(this,this.H+this.T());break;case 68:c=P(this,Dj.call(this,1)+this.T());
break;case 69:c=Pf(this,this.P+this.T());break;case 70:c=P(this,this.K+this.T());break;case 71:c=P(this,this.J+this.T());break;case 128:c=P(this,this.G+T(this));break;case 129:c=P(this,this.I+T(this));break;case 130:c=P(this,this.M+T(this));break;case 131:c=P(this,this.H+T(this));break;case 132:c=P(this,Dj.call(this,2)+T(this));break;case 133:c=Pf(this,this.P+T(this));break;case 134:c=P(this,this.K+T(this));break;case 135:c=P(this,this.J+T(this));break;case 192:c=this.G&255;break;case 193:c=this.I&
255;break;case 194:c=this.M&255;break;case 195:c=this.H&255;break;case 196:c=this.G>>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.M>>8&255;break;case 199:c=this.H>>8&255;break;default:c=0}var d=this.L>>3&7;switch(d){case 0:b=this.G&255;break;case 1:b=this.I&255;break;case 2:b=this.M&255;break;case 3:b=this.H&255;break;case 4:b=this.G>>8&255;break;case 5:b=this.I>>8&255;break;case 6:b=this.M>>8&255;break;case 7:b=this.H>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.G=
this.G&-256|a;break;case 1:this.I=this.I&-256|a;break;case 2:this.M=this.M&-256|a;break;case 3:this.H=this.H&-256|a;break;case 4:this.G=this.G&-65281|a<<8;break;case 5:this.I=this.I&-65281|a<<8;break;case 6:this.M=this.M&-65281|a<<8;break;case 7:this.H=this.H&-65281|a<<8}}
function Me(a){var b,c,d=(this.L=this.xa())&199;switch(d){case 0:b=P(this,this.G);this.C=this.D;break;case 1:b=P(this,this.I);this.C=this.D;break;case 2:b=P(this,this.M);this.C=this.D;break;case 3:b=P(this,this.H);this.C=this.D;break;case 4:b=P(this,Dj.call(this,0));this.C=this.D;break;case 5:b=P(this,T(this));this.C=this.D;break;case 6:b=P(this,this.K);this.C=this.D;break;case 7:b=P(this,this.J);this.C=this.D;break;case 64:b=P(this,this.G+this.T());this.C=this.D;break;case 65:b=P(this,this.I+this.T());
this.C=this.D;break;case 66:b=P(this,this.M+this.T());this.C=this.D;break;case 67:b=P(this,this.H+this.T());this.C=this.D;break;case 68:b=P(this,Dj.call(this,1)+this.T());this.C=this.D;break;case 69:b=Pf(this,this.P+this.T());this.C=this.D;break;case 70:b=P(this,this.K+this.T());this.C=this.D;break;case 71:b=P(this,this.J+this.T());this.C=this.D;break;case 128:b=P(this,this.G+T(this));this.C=this.D;break;case 129:b=P(this,this.I+T(this));this.C=this.D;break;case 130:b=P(this,this.M+T(this));this.C=
this.D;break;case 131:b=P(this,this.H+T(this));this.C=this.D;break;case 132:b=P(this,Dj.call(this,2)+T(this));this.C=this.D;break;case 133:b=Pf(this,this.P+T(this));this.C=this.D;break;case 134:b=P(this,this.K+T(this));this.C=this.D;break;case 135:b=P(this,this.J+T(this));this.C=this.D;break;case 192:b=this.G&255;break;case 193:b=this.I&255;break;case 194:b=this.M&255;break;case 195:b=this.H&255;break;case 196:b=this.G>>8&255;break;case 197:b=this.I>>8&255;break;case 198:b=this.M>>8&255;break;case 199:b=
this.H>>8&255;break;default:b=0}switch(this.L>>3&7){case 0:c=this.G&255;break;case 1:c=this.I&255;break;case 2:c=this.M&255;break;case 3:c=this.H&255;break;case 4:c=this.G>>8&255;break;case 5:c=this.I>>8&255;break;case 6:c=this.M>>8&255;break;case 7:c=this.H>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.G=this.G&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.M=this.M&-256|a;break;case 195:this.H=this.H&-256|a;break;case 196:this.G=this.G&-65281|a<<8;break;case 197:this.I=
this.I&-65281|a<<8;break;case 198:this.M=this.M&-65281|a<<8;break;case 199:this.H=this.H&-65281|a<<8;break;default:Tf(this,a)}}
function Ne(a,b){var c,d=(this.L=this.xa())&199;switch(d){case 0:c=P(this,this.G);this.C=this.D;break;case 1:c=P(this,this.I);this.C=this.D;break;case 2:c=P(this,this.M);this.C=this.D;break;case 3:c=P(this,this.H);this.C=this.D;break;case 4:c=P(this,Dj.call(this,0));this.C=this.D;break;case 5:c=P(this,T(this));this.C=this.D;break;case 6:c=P(this,this.K);this.C=this.D;break;case 7:c=P(this,this.J);this.C=this.D;break;case 64:c=P(this,this.G+this.T());this.C=this.D;break;case 65:c=P(this,this.I+this.T());
this.C=this.D;break;case 66:c=P(this,this.M+this.T());this.C=this.D;break;case 67:c=P(this,this.H+this.T());this.C=this.D;break;case 68:c=P(this,Dj.call(this,1)+this.T());this.C=this.D;break;case 69:c=Pf(this,this.P+this.T());this.C=this.D;break;case 70:c=P(this,this.K+this.T());this.C=this.D;break;case 71:c=P(this,this.J+this.T());this.C=this.D;break;case 128:c=P(this,this.G+T(this));this.C=this.D;break;case 129:c=P(this,this.I+T(this));this.C=this.D;break;case 130:c=P(this,this.M+T(this));this.C=
this.D;break;case 131:c=P(this,this.H+T(this));this.C=this.D;break;case 132:c=P(this,Dj.call(this,2)+T(this));this.C=this.D;break;case 133:c=Pf(this,this.P+T(this));this.C=this.D;break;case 134:c=P(this,this.K+T(this));this.C=this.D;break;case 135:c=P(this,this.J+T(this));this.C=this.D;break;case 192:c=this.G&255;break;case 193:c=this.I&255;break;case 194:c=this.M&255;break;case 195:c=this.H&255;break;case 196:c=this.G>>8&255;break;case 197:c=this.I>>8&255;break;case 198:c=this.M>>8&255;break;case 199:c=
this.H>>8&255;break;default:c=0}a=a[this.L>>3&7].call(this,c,b.call(this));switch(d){case 192:this.G=this.G&-256|a;break;case 193:this.I=this.I&-256|a;break;case 194:this.M=this.M&-256|a;break;case 195:this.H=this.H&-256|a;break;case 196:this.G=this.G&-65281|a<<8;break;case 197:this.I=this.I&-65281|a<<8;break;case 198:this.M=this.M&-65281|a<<8;break;case 199:this.H=this.H&-65281|a<<8;break;default:Tf(this,a)}}
function Oe(a){var b,c;switch((this.L=this.xa())&199){case 0:c=Q(this,this.G);break;case 1:c=Q(this,this.I);break;case 2:c=Q(this,this.M);break;case 3:c=Q(this,this.H);break;case 4:c=Q(this,Dj.call(this,0));break;case 5:c=Q(this,T(this));break;case 6:c=Q(this,this.K);break;case 7:c=Q(this,this.J);break;case 64:c=Q(this,this.G+this.T());break;case 65:c=Q(this,this.I+this.T());break;case 66:c=Q(this,this.M+this.T());break;case 67:c=Q(this,this.H+this.T());break;case 68:c=Q(this,Dj.call(this,1)+this.T());
break;case 69:c=Rf(this,this.P+this.T());break;case 70:c=Q(this,this.K+this.T());break;case 71:c=Q(this,this.J+this.T());break;case 128:c=Q(this,this.G+T(this));break;case 129:c=Q(this,this.I+T(this));break;case 130:c=Q(this,this.M+T(this));break;case 131:c=Q(this,this.H+T(this));break;case 132:c=Q(this,Dj.call(this,2)+T(this));break;case 133:c=Rf(this,this.P+T(this));break;case 134:c=Q(this,this.K+T(this));break;case 135:c=Q(this,this.J+T(this));break;case 192:c=this.G&65535;break;case 193:c=this.I&
65535;break;case 194:c=this.M&65535;break;case 195:c=this.H&65535;break;case 196:c=J(this)&65535;break;case 197:c=this.P&65535;break;case 198:c=this.K&65535;break;case 199:c=this.J&65535;break;default:c=0}var d=this.L>>3&7;switch(d){case 0:b=this.G&65535;break;case 1:b=this.I&65535;break;case 2:b=this.M&65535;break;case 3:b=this.H&65535;break;case 4:b=J(this)&65535;break;case 5:b=this.P&65535;break;case 6:b=this.K&65535;break;case 7:b=this.J&65535;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.G=
this.G&-65536|a;break;case 1:this.I=this.I&-65536|a;break;case 2:this.M=this.M&-65536|a;break;case 3:this.H=this.H&-65536|a;break;case 4:I(this,J(this)&-65536|a);break;case 5:this.P=this.P&-65536|a;break;case 6:this.K=this.K&-65536|a;break;case 7:this.J=this.J&-65536|a}}
function Pe(a){var b,c,d=(this.L=this.xa())&199;switch(d){case 0:b=Q(this,this.G);this.C=this.D;break;case 1:b=Q(this,this.I);this.C=this.D;break;case 2:b=Q(this,this.M);this.C=this.D;break;case 3:b=Q(this,this.H);this.C=this.D;break;case 4:b=Q(this,Dj.call(this,0));this.C=this.D;break;case 5:b=Q(this,T(this));this.C=this.D;break;case 6:b=Q(this,this.K);this.C=this.D;break;case 7:b=Q(this,this.J);this.C=this.D;break;case 64:b=Q(this,this.G+this.T());this.C=this.D;break;case 65:b=Q(this,this.I+this.T());
this.C=this.D;break;case 66:b=Q(this,this.M+this.T());this.C=this.D;break;case 67:b=Q(this,this.H+this.T());this.C=this.D;break;case 68:b=Q(this,Dj.call(this,1)+this.T());this.C=this.D;break;case 69:b=Rf(this,this.P+this.T());this.C=this.D;break;case 70:b=Q(this,this.K+this.T());this.C=this.D;break;case 71:b=Q(this,this.J+this.T());this.C=this.D;break;case 128:b=Q(this,this.G+T(this));this.C=this.D;break;case 129:b=Q(this,this.I+T(this));this.C=this.D;break;case 130:b=Q(this,this.M+T(this));this.C=
this.D;break;case 131:b=Q(this,this.H+T(this));this.C=this.D;break;case 132:b=Q(this,Dj.call(this,2)+T(this));this.C=this.D;break;case 133:b=Rf(this,this.P+T(this));this.C=this.D;break;case 134:b=Q(this,this.K+T(this));this.C=this.D;break;case 135:b=Q(this,this.J+T(this));this.C=this.D;break;case 192:b=this.G&65535;break;case 193:b=this.I&65535;break;case 194:b=this.M&65535;break;case 195:b=this.H&65535;break;case 196:b=J(this)&65535;break;case 197:b=this.P&65535;break;case 198:b=this.K&65535;break;
case 199:b=this.J&65535;break;default:b=0}switch(this.L>>3&7){case 0:c=this.G&65535;break;case 1:c=this.I&65535;break;case 2:c=this.M&65535;break;case 3:c=this.H&65535;break;case 4:c=J(this)&65535;break;case 5:c=this.P&65535;break;case 6:c=this.K&65535;break;case 7:c=this.J&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.G=this.G&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.M=this.M&-65536|a;break;case 195:this.H=this.H&-65536|a;break;case 196:I(this,J(this)&
-65536|a);break;case 197:this.P=this.P&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a;break;default:Uf(this,a)}}
function bf(a,b){var c,d=(this.L=this.xa())&199;switch(d){case 0:c=Q(this,this.G);this.C=this.D;break;case 1:c=Q(this,this.I);this.C=this.D;break;case 2:c=Q(this,this.M);this.C=this.D;break;case 3:c=Q(this,this.H);this.C=this.D;break;case 4:c=Q(this,Dj.call(this,0));this.C=this.D;break;case 5:c=Q(this,T(this));this.C=this.D;break;case 6:c=Q(this,this.K);this.C=this.D;break;case 7:c=Q(this,this.J);this.C=this.D;break;case 64:c=Q(this,this.G+this.T());this.C=this.D;break;case 65:c=Q(this,this.I+this.T());
this.C=this.D;break;case 66:c=Q(this,this.M+this.T());this.C=this.D;break;case 67:c=Q(this,this.H+this.T());this.C=this.D;break;case 68:c=Q(this,Dj.call(this,1)+this.T());this.C=this.D;break;case 69:c=Rf(this,this.P+this.T());this.C=this.D;break;case 70:c=Q(this,this.K+this.T());this.C=this.D;break;case 71:c=Q(this,this.J+this.T());this.C=this.D;break;case 128:c=Q(this,this.G+T(this));this.C=this.D;break;case 129:c=Q(this,this.I+T(this));this.C=this.D;break;case 130:c=Q(this,this.M+T(this));this.C=
this.D;break;case 131:c=Q(this,this.H+T(this));this.C=this.D;break;case 132:c=Q(this,Dj.call(this,2)+T(this));this.C=this.D;break;case 133:c=Rf(this,this.P+T(this));this.C=this.D;break;case 134:c=Q(this,this.K+T(this));this.C=this.D;break;case 135:c=Q(this,this.J+T(this));this.C=this.D;break;case 192:c=this.G&65535;break;case 193:c=this.I&65535;break;case 194:c=this.M&65535;break;case 195:c=this.H&65535;break;case 196:c=J(this)&65535;break;case 197:c=this.P&65535;break;case 198:c=this.K&65535;break;
case 199:c=this.J&65535;break;default:c=0}a=a[this.L>>3&7].call(this,c,b.call(this));switch(d){case 192:this.G=this.G&-65536|a;break;case 193:this.I=this.I&-65536|a;break;case 194:this.M=this.M&-65536|a;break;case 195:this.H=this.H&-65536|a;break;case 196:I(this,J(this)&-65536|a);break;case 197:this.P=this.P&-65536|a;break;case 198:this.K=this.K&-65536|a;break;case 199:this.J=this.J&-65536|a;break;default:Uf(this,a)}}
function cf(a){var b,c;switch((this.L=this.xa())&199){case 0:c=R(this,this.G);break;case 1:c=R(this,this.I);break;case 2:c=R(this,this.M);break;case 3:c=R(this,this.H);break;case 4:c=R(this,Dj.call(this,0));break;case 5:c=R(this,T(this));break;case 6:c=R(this,this.K);break;case 7:c=R(this,this.J);break;case 64:c=R(this,this.G+this.T());break;case 65:c=R(this,this.I+this.T());break;case 66:c=R(this,this.M+this.T());break;case 67:c=R(this,this.H+this.T());break;case 68:c=R(this,Dj.call(this,1)+this.T());
break;case 69:c=Sf(this,this.P+this.T());break;case 70:c=R(this,this.K+this.T());break;case 71:c=R(this,this.J+this.T());break;case 128:c=R(this,this.G+T(this));break;case 129:c=R(this,this.I+T(this));break;case 130:c=R(this,this.M+T(this));break;case 131:c=R(this,this.H+T(this));break;case 132:c=R(this,Dj.call(this,2)+T(this));break;case 133:c=Sf(this,this.P+T(this));break;case 134:c=R(this,this.K+T(this));break;case 135:c=R(this,this.J+T(this));break;case 192:c=this.G;break;case 193:c=this.I;break;
case 194:c=this.M;break;case 195:c=this.H;break;case 196:c=J(this);break;case 197:c=this.P;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}var d=this.L>>3&7;switch(d){case 0:b=this.G;break;case 1:b=this.I;break;case 2:b=this.M;break;case 3:b=this.H;break;case 4:b=J(this);break;case 5:b=this.P;break;case 6:b=this.K;break;case 7:b=this.J;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.G=a;break;case 1:this.I=a;break;case 2:this.M=a;break;case 3:this.H=a;break;case 4:I(this,
a);break;case 5:this.P=a;break;case 6:this.K=a;break;case 7:this.J=a}}
function df(a){var b,c,d=(this.L=this.xa())&199;switch(d){case 0:b=R(this,this.G);this.C=this.D;break;case 1:b=R(this,this.I);this.C=this.D;break;case 2:b=R(this,this.M);this.C=this.D;break;case 3:b=R(this,this.H);this.C=this.D;break;case 4:b=R(this,Dj.call(this,0));this.C=this.D;break;case 5:b=R(this,T(this));this.C=this.D;break;case 6:b=R(this,this.K);this.C=this.D;break;case 7:b=R(this,this.J);this.C=this.D;break;case 64:b=R(this,this.G+this.T());this.C=this.D;break;case 65:b=R(this,this.I+this.T());
this.C=this.D;break;case 66:b=R(this,this.M+this.T());this.C=this.D;break;case 67:b=R(this,this.H+this.T());this.C=this.D;break;case 68:b=R(this,Dj.call(this,1)+this.T());this.C=this.D;break;case 69:b=Sf(this,this.P+this.T());this.C=this.D;break;case 70:b=R(this,this.K+this.T());this.C=this.D;break;case 71:b=R(this,this.J+this.T());this.C=this.D;break;case 128:b=R(this,this.G+T(this));this.C=this.D;break;case 129:b=R(this,this.I+T(this));this.C=this.D;break;case 130:b=R(this,this.M+T(this));this.C=
this.D;break;case 131:b=R(this,this.H+T(this));this.C=this.D;break;case 132:b=R(this,Dj.call(this,2)+T(this));this.C=this.D;break;case 133:b=Sf(this,this.P+T(this));this.C=this.D;break;case 134:b=R(this,this.K+T(this));this.C=this.D;break;case 135:b=R(this,this.J+T(this));this.C=this.D;break;case 192:b=this.G;break;case 193:b=this.I;break;case 194:b=this.M;break;case 195:b=this.H;break;case 196:b=J(this);break;case 197:b=this.P;break;case 198:b=this.K;break;case 199:b=this.J;break;default:b=0}switch(this.L>>
3&7){case 0:c=this.G;break;case 1:c=this.I;break;case 2:c=this.M;break;case 3:c=this.H;break;case 4:c=J(this);break;case 5:c=this.P;break;case 6:c=this.K;break;case 7:c=this.J;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.G=a;break;case 193:this.I=a;break;case 194:this.M=a;break;case 195:this.H=a;break;case 196:I(this,a);break;case 197:this.P=a;break;case 198:this.K=a;break;case 199:this.J=a;break;default:Vf(this,a)}}
function ef(a,b){var c,d=(this.L=this.xa())&199;switch(d){case 0:c=R(this,this.G);this.C=this.D;break;case 1:c=R(this,this.I);this.C=this.D;break;case 2:c=R(this,this.M);this.C=this.D;break;case 3:c=R(this,this.H);this.C=this.D;break;case 4:c=R(this,Dj.call(this,0));this.C=this.D;break;case 5:c=R(this,T(this));this.C=this.D;break;case 6:c=R(this,this.K);this.C=this.D;break;case 7:c=R(this,this.J);this.C=this.D;break;case 64:c=R(this,this.G+this.T());this.C=this.D;break;case 65:c=R(this,this.I+this.T());
this.C=this.D;break;case 66:c=R(this,this.M+this.T());this.C=this.D;break;case 67:c=R(this,this.H+this.T());this.C=this.D;break;case 68:c=R(this,Dj.call(this,1)+this.T());this.C=this.D;break;case 69:c=Sf(this,this.P+this.T());this.C=this.D;break;case 70:c=R(this,this.K+this.T());this.C=this.D;break;case 71:c=R(this,this.J+this.T());this.C=this.D;break;case 128:c=R(this,this.G+T(this));this.C=this.D;break;case 129:c=R(this,this.I+T(this));this.C=this.D;break;case 130:c=R(this,this.M+T(this));this.C=
this.D;break;case 131:c=R(this,this.H+T(this));this.C=this.D;break;case 132:c=R(this,Dj.call(this,2)+T(this));this.C=this.D;break;case 133:c=Sf(this,this.P+T(this));this.C=this.D;break;case 134:c=R(this,this.K+T(this));this.C=this.D;break;case 135:c=R(this,this.J+T(this));this.C=this.D;break;case 192:c=this.G;break;case 193:c=this.I;break;case 194:c=this.M;break;case 195:c=this.H;break;case 196:c=J(this);break;case 197:c=this.P;break;case 198:c=this.K;break;case 199:c=this.J;break;default:c=0}a=a[this.L>>
3&7].call(this,c,b.call(this));switch(d){case 192:this.G=a;break;case 193:this.I=a;break;case 194:this.M=a;break;case 195:this.H=a;break;case 196:I(this,a);break;case 197:this.P=a;break;case 198:this.K=a;break;case 199:this.J=a;break;default:Vf(this,a)}}
function Dj(a){var b=this.xa(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.G;break;case 1:d=this.I;break;case 2:d=this.M;break;case 3:d=this.H;break;case 4:d=0;break;case 5:d=this.P;break;case 6:d=this.K;break;case 7:d=this.J}switch(b&7){case 0:e=this.G;break;case 1:e=this.I;break;case 2:e=this.M;break;case 3:e=this.H;break;case 4:e=J(this);this.ka=this.Ka;break;case 5:a?(e=this.P,this.ka=this.Ka):e=T(this);break;case 6:e=this.K;break;case 7:e=this.J}return(d<<c)+e|0}
function he(){this.tc[this.xa()].call(this)}function ke(){K(this,J(this)&this.R);this.A-=this.B.Sc}function Jd(){this.U=this.fa;var a=J(this)&this.R;K(this,this.G&this.R);K(this,this.I&this.R);K(this,this.M&this.R);K(this,this.H&this.R);K(this,a);K(this,this.P&this.R);K(this,this.K&this.R);K(this,this.J&this.R);this.A-=this.B.zk;this.U=-1}
function Kd(){this.U=this.fa;this.J=this.J&~this.R|H(this);this.K=this.K&~this.R|H(this);this.P=this.P&~this.R|H(this);I(this,J(this)+this.ba);this.H=this.H&~this.R|H(this);this.M=this.M&~this.R|H(this);this.I=this.I&~this.R|H(this);this.G=this.G&~this.R|H(this);this.A-=this.B.xk;this.U=-1}function Ld(){this.V.call(this,Bh)}function le(){!(this.$a&1)||this.ca&131072?E.call(this,6):this.ea.call(this,Ah)}function me(){this.S|=20;this.ka=this.Ka=this.Nb;this.A-=this.B.od}
function ne(){this.S|=20;this.ka=this.Ka=this.Ob;this.A-=this.B.od}function oe(){this.S|=1024;this.Ia&1024||(this.ba^=6,this.R^=-65536,ff(this));this.A-=this.B.od}function pe(){this.S|=2048;this.Ia&2048||(this.Uc^=6,this.Ba^=-65536,ze(this));this.A-=this.B.od}function Md(){K(this,this.Ma());this.A-=this.B.Sc}function Nd(){this.V.call(this,Sh)}function Od(){K(this,this.T());this.A-=this.B.Sc}function Pd(){this.V.call(this,Qh)}
function Qd(){var a=1,b=0,c=this.Ba,d=5;this.Ia&192&&(a=this.I&c,b=1,this.Ia&256&&(d=4));if(a--){var e=this.M&65535;Mf(this,e,1,!0)&&(e=oc(this.ga,e,1,this.Ha-b-1),this.qc(this.Xa.nc(this.J&c,1),e),this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(sf(this),this.S|=256))}}
function Rd(){var a=1,b=0,c=this.Ba,d=5;this.Ia&192&&(a=this.I&c,b=1,this.Ia&256&&(d=4));if(a--){var e=this.M&65535;Mf(this,e,this.ba,!0)&&(e=oc(this.ga,e,this.ba,this.Ha-b-1),this.rc(this.Xa.nc(this.J&c,this.ba),e),this.J=this.J&~c|this.J+(this.ca&1024?-this.ba:this.ba)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(sf(this),this.S|=256))}}
function Sd(){var a=1,b=0,c=this.Ba,d=5;this.Ia&192&&(a=this.I&c,b=1,this.Ia&256&&(d=4));if(a--){var e=this.M&65535;if(Mf(this,e,1,!1)){var f=this.Qa(this.vb.mc(this.K&c,1));wc(this.ga,e,1,f,this.Ha-b-1);this.K=this.K&~c|this.K+(this.ca&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(sf(this),this.S|=256)}}}
function Td(){var a=1,b=0,c=this.Ba,d=5;this.Ia&192&&(a=this.I&c,b=1,this.Ia&256&&(d=4));if(a--){var e=vd(this,this.vb,this.K&c),f=this.M&65535;Mf(this,f,this.ba,!1)&&(wc(this.ga,f,this.ba,e,this.Ha-b-1),this.K=this.K&~c|this.K+(this.ca&1024?-this.ba:this.ba)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(sf(this),this.S|=256))}}function Ej(){var a=this.T();zf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb}
function Fj(){var a=this.T();zf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)}function Gj(){var a=this.T();uf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb}function Hj(){var a=this.T();uf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)}function Ij(){var a=this.T();xf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb}function Jj(){var a=this.T();xf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)}
function Kj(){var a=this.T();uf(this)||xf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb}function Lj(){var a=this.T();uf(this)||xf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)}function Mj(){var a=this.T();yf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb}function Nj(){var a=this.T();yf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)}function Oj(){var a=this.T();vf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb}
function Pj(){var a=this.T();vf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)}function Qj(){var a=this.T();!yf(this)!=!zf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb}function Rj(){var a=this.T();!yf(this)==!zf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb}function Sj(){var a=this.T();xf(this)||!yf(this)!=!zf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb}
function Tj(){var a=this.T();xf(this)||!yf(this)!=!zf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)}function Uj(){this.Jb.call(this,Vj,this.xa);this.A-=-1===this.C?1:this.B.Jg}function Wj(){this.S|=1;this.Ya.call(this,di)}function Xj(){this.S|=1;this.ea.call(this,di)}function Yj(){this.Oa.call(this,di)}function Zj(){this.V.call(this,di)}function Xd(){this.Jb.call(this,ak,vj)}function Yd(){this.ya.call(this,2==this.ba?bk:ck,vj)}
function dk(){var a=Wf(this),b=H(this);O(this,b);a&&I(this,J(this)+a);this.A-=this.B.Ek}function ek(){var a=H(this);O(this,a);this.A-=this.B.Bk}function Zd(){this.U=this.fa;var a=Wf(this),b=this.xa()&31;this.A-=11;K(this,this.P);var c=J(this)&this.R;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.P=this.P&~this.R|this.P-this.ba&this.R,K(this,vd(this,this.ta,this.P&this.R));K(this,c)}this.P=this.P&~this.R|c;I(this,J(this)&~this.ta.Ba|J(this)-a&this.ta.Ba);this.U=-1}
function ee(){this.U=this.fa;I(this,J(this)&~this.ta.Ba|this.P&this.ta.Ba);this.P=this.P&~this.R|H(this)&this.R;this.A-=5;this.U=-1}function fk(){Aj.call(this,Wf(this));this.A-=this.B.Dk}function gk(){Aj.call(this,0);this.A-=this.B.Ck}function hk(a){this.ng=a;this.V.call(this,Oh)}function ik(){this.S|=36;this.A-=this.B.od}function fe(){je.call(this)}function Id(){E.call(this,6)}
function je(){O(this,this.qe-this.wa.Aa);wb(this,"Undefined opcode "+u(this.Qa(this.Ha))+" at "+r(this.Ha,8,!0));this.Wb()}
var Ed=[function(){this.Ya.call(this,wh)},function(){this.ea.call(this,xh)},function(){this.Oa.call(this,wh)},function(){this.V.call(this,xh)},function(){this.G=this.G&-256|wh.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|xh.call(this,this.G&this.R,this.Ma());this.A--},function(){wd(this,this.Xa.Z,this.ba,2);this.A-=this.B.Ke},function(){this.U=this.fa;yd(this,H(this));this.A-=this.B.zc;this.U=-1},function(){this.Ya.call(this,zi)},function(){this.ea.call(this,Ai)},function(){this.Oa.call(this,
zi)},function(){this.V.call(this,Ai)},function(){this.G=this.G&-256|zi.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|Ai.call(this,this.G&this.R,this.Ma());this.A--},function(){wd(this,this.wa.Z,this.ba,2);this.A-=this.B.Ke},function(){pf(this,H(this));this.A-=this.B.zc},function(){this.Ya.call(this,uh)},function(){this.ea.call(this,vh)},function(){this.Oa.call(this,uh)},function(){this.V.call(this,vh)},function(){this.G=this.G&-256|uh.call(this,this.G&255,this.xa());this.A--},
function(){this.G=this.G&~this.R|vh.call(this,this.G&this.R,this.Ma());this.A--},function(){wd(this,this.ta.Z,this.ba,2);this.A-=this.B.Ke},function(){this.U=this.fa;nd(this,H(this));this.A-=this.B.zc;this.U=-1},function(){this.Ya.call(this,Bi)},function(){this.ea.call(this,Ci)},function(){this.Oa.call(this,Bi)},function(){this.V.call(this,Ci)},function(){this.G=this.G&-256|Bi.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|Ci.call(this,this.G&this.R,this.Ma());this.A--},
function(){wd(this,this.vb.Z,this.ba,2);this.A-=this.B.Ke},function(){this.U=this.fa;xd(this,H(this));this.A-=this.B.zc;this.U=-1},function(){this.Ya.call(this,yh)},function(){this.ea.call(this,zh)},function(){this.Oa.call(this,yh)},function(){this.V.call(this,zh)},function(){this.G=this.G&-256|yh.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|zh.call(this,this.G&this.R,this.Ma());this.A--},function(){this.S|=20;this.ka=this.Ka=this.Xa;this.A-=this.B.od},function(){var a=
this.G&255,b=wf(this),c=uf(this);9<(a&15)||b?(a+=6,b=16):b=0;159<a||c?(a+=96,c=1):c=0;a&=255;this.G=this.G&-256|a;Af(this,a,128);c?Bf(this):Cf(this);b?Jf(this):Hf(this);this.A-=this.B.Je},function(){this.Ya.call(this,dj)},function(){this.ea.call(this,ej)},function(){this.Oa.call(this,dj)},function(){this.V.call(this,ej)},function(){this.G=this.G&-256|dj.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|ej.call(this,this.G&this.R,this.Ma());this.A--},function(){this.S|=20;
this.ka=this.Ka=this.wa;this.A-=this.B.od},function(){var a=this.G&255,b=wf(this),c=uf(this);9<(a&15)||b?(a-=6,b=16):b=0;159<a||c?(a-=96,c=1):c=0;a&=255;this.G=this.G&-256|a;Af(this,a,128);c?Bf(this):Cf(this);b?Jf(this):Hf(this);this.A-=this.B.Je},function(){this.Ya.call(this,lj)},function(){this.ea.call(this,mj)},function(){this.Oa.call(this,lj)},function(){this.V.call(this,mj)},function(){this.G=this.G&-256|lj.call(this,this.G&255,this.xa());this.A--},function(){this.G=this.G&~this.R|mj.call(this,
this.G&this.R,this.Ma());this.A--},function(){this.S|=20;this.ka=this.Ka=this.ta;this.A-=this.B.od},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||wf(this)?(c+=6,80286<=this.ja&&255<c&&d++,d++,a=b=1):a=b=0;this.G=this.G&-65536|(d<<8|c)&65295;a?Bf(this):Cf(this);b?Jf(this):Hf(this);this.A-=this.B.Je},function(){this.Ya.call(this,Mh)},function(){this.ea.call(this,Nh)},function(){this.Oa.call(this,Mh)},function(){this.V.call(this,Nh)},function(){Mh.call(this,this.G&255,this.xa());this.A--},
function(){Nh.call(this,this.G&this.R,this.Ma());this.A--},function(){this.S|=20;this.ka=this.Ka=this.vb;this.A-=this.B.od},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||wf(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.G=this.G&-65536|d<<8|c;a?Bf(this):Cf(this);b?Jf(this):Hf(this);this.A-=this.B.Je},function(){this.G=qj.call(this,this.G)},function(){this.I=qj.call(this,this.I)},function(){this.M=qj.call(this,this.M)},function(){this.H=qj.call(this,this.H)},function(){I(this,qj.call(this,
J(this)))},function(){this.P=qj.call(this,this.P)},function(){this.K=qj.call(this,this.K)},function(){this.J=qj.call(this,this.J)},function(){this.G=oj.call(this,this.G)},function(){this.I=oj.call(this,this.I)},function(){this.M=oj.call(this,this.M)},function(){this.H=oj.call(this,this.H)},function(){I(this,oj.call(this,J(this)))},function(){this.P=oj.call(this,this.P)},function(){this.K=oj.call(this,this.K)},function(){this.J=oj.call(this,this.J)},function(){K(this,this.G&this.R);this.A-=this.B.Sc},
function(){K(this,this.I&this.R);this.A-=this.B.Sc},function(){K(this,this.M&this.R);this.A-=this.B.Sc},function(){K(this,this.H&this.R);this.A-=this.B.Sc},function(){K(this,J(this)-2&65535);this.A-=this.B.Sc},function(){K(this,this.P&this.R);this.A-=this.B.Sc},function(){K(this,this.K&this.R);this.A-=this.B.Sc},function(){K(this,this.J&this.R);this.A-=this.B.Sc},function(){this.G=this.G&~this.R|H(this);this.A-=this.B.zc},function(){this.I=this.I&~this.R|H(this);this.A-=this.B.zc},function(){this.M=
this.M&~this.R|H(this);this.A-=this.B.zc},function(){this.H=this.H&~this.R|H(this);this.A-=this.B.zc},function(){I(this,J(this)&~this.R|H(this));this.A-=this.B.zc},function(){this.P=this.P&~this.R|H(this);this.A-=this.B.zc},function(){this.K=this.K&~this.R|H(this);this.A-=this.B.zc},function(){this.J=this.J&~this.R|H(this);this.A-=this.B.zc},Ej,Fj,Gj,Hj,Ij,Jj,Kj,Lj,Mj,Nj,Oj,Pj,Qj,Rj,Sj,Tj,Ej,Fj,Gj,Hj,Ij,Jj,Kj,Lj,Mj,Nj,Oj,Pj,Qj,Rj,Sj,Tj,Uj,function(){this.ya.call(this,jk,this.Ma);this.A-=-1===this.C?
1:this.B.Jg},Uj,function(){this.ya.call(this,jk,this.T);this.A-=-1===this.C?1:this.B.Jg},function(){this.Ya.call(this,fj)},function(){this.ea.call(this,gj)},function(){this.Oa.call(this,jj)},function(){this.V.call(this,kj)},Wj,Xj,Yj,Zj,function(){this.S|=1;this.ea.call(this,hi)},function(){this.S|=1;this.ka=this.Ka=this.rf;this.V.call(this,Yh)},function(){var a;this.V.call(this,gi);switch(this.L>>3&7){case 0:a=this.G;this.G=this.aa;yd(this,a);break;case 1:a=this.I;this.I=this.aa;pf(this,a);break;
case 2:a=this.M;this.M=this.aa;nd(this,a);break;case 3:a=this.H;this.H=this.aa;xd(this,a);break;case 4:a=J(this);I(this,this.aa);80386<=this.ja?this.Nb.load(a):yd(this,a);break;case 5:a=this.P;this.P=this.aa;80386<=this.ja?this.Ob.load(a):pf(this,a);break;case 6:a=this.K;this.K=this.aa;nd(this,a);break;case 7:a=this.J,this.J=this.aa,xd(this,a)}},function(){this.S|=1;this.U=this.fa;this.aa=H(this);this.ya.call(this,kk,xj);this.U=-1},function(){this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|
this.I&this.R;this.I=this.I&~this.R|a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.M&this.R;this.M=this.M&~this.R|a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.H&this.R;this.H=this.H&~this.R|a&this.R;this.A-=3},function(){var a=this.G,b=J(this);this.G=this.G&~this.R|b&this.R;I(this,b&~this.R|a&this.R);this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.P&this.R;this.P=this.P&~this.R|a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&
~this.R|this.K&this.R;this.K=this.K&~this.R|a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.J&this.R;this.J=this.J&~this.R|a&this.R;this.A-=3},function(){this.G=2==this.ba?this.G&-65536|this.G<<24>>24&65535:this.G<<16>>16;this.A-=2},function(){this.M=2==this.ba?this.M&-65536|(this.G&32768?65535:0):this.G&-2147483648?-1:0;this.A-=this.B.Kj},function(){yj.call(this,this.Ma(),Wf(this));this.A-=this.B.Nj},function(){this.A-=3},function(){var a=zd(this);a&131072&&3>this.Pa?E.call(this,
13,0):(K(this,a&-196609),this.A-=this.B.Sc)},function(){if(this.ca&131072&&3>this.Pa)E.call(this,13,0);else{var a=H(this),a=a&65535|this.ca&-65536;Ad(this,a);this.A-=this.B.zc}},function(){var a=this.G>>8&255;a&1?Bf(this):Cf(this);a&4?(this.resultType&=-3,this.ca|=4):(this.resultType&=-3,this.ca&=-5);a&16?Jf(this):Hf(this);a&64?Kf(this):If(this);a&128?(this.resultType&=-17,this.ca|=128):(this.resultType&=-17,this.ca&=-129);this.A-=this.B.fc},function(){this.G=this.G&-65281|(zd(this)&213)<<8;this.A-=
this.B.fc},function(){var a=this.G&-256,b;b=T(this);b=this.Qa(this.ka.mc(b,1));this.G=a|b;this.A-=this.B.Sh},function(){this.G=this.G&~this.R|vd(this,this.ka,T(this));this.A-=this.B.Sh},function(){var a=T(this),b=this.G;this.qc(this.ka.nc(a,1),b);this.A-=this.B.Th},function(){var a=T(this),b=this.G;this.rc(this.ka.nc(a,this.ba),b);this.A-=this.B.Th},function(){var a=1,b=0,c=this.Ba,d=this.B.Uh;this.Ia&192&&(a=this.I&c,b=1,d=this.B.Wh,this.Ia&256||(this.A-=this.B.Vh));if(a--){var e=this.Qa(this.ka.mc(this.K&
c,1));this.qc(this.Xa.nc(this.J&c,1),e);e=this.ca&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;this.I=this.I&~c|this.I-b&c;a&&(sf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Uh;this.Ia&192&&(a=this.I&c,b=1,d=this.B.Wh,this.Ia&256||(this.A-=this.B.Vh));if(a--){var e=vd(this,this.ka,this.K&c);this.rc(this.Xa.nc(this.J&c,this.ba),e);e=this.ca&1024?-this.ba:this.ba;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.A-=d;this.I=this.I&~c|this.I-
b&c;a&&(sf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Fh;this.Ia&192&&(a=this.I&c,b=1,d=this.B.Hh,this.Ia&256||(this.A-=this.B.Gh));if(a--){var e=Of(this,this.ka,this.K),f=Of(this,this.Xa,this.J);this.C=this.D;Mh.call(this,e,f);e=this.ca&1024?-1:1;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Vb;a&&xf(this)==(this.Ia&64)&&(sf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Fh;this.Ia&192&&(a=this.I&c,b=1,d=this.B.Hh,
this.Ia&256||(this.A-=this.B.Gh));if(a--){var e=Qf(this,this.ka,this.K&c),f=Qf(this,this.Xa,this.J&c);this.C=this.D;Nh.call(this,e,f);e=this.ca&1024?-this.ba:this.ba;this.K=this.K&~c|this.K+e&c;this.J=this.J&~c|this.J+e&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Vb;a&&xf(this)==(this.Ia&64)&&(sf(this),this.S|=256)}},function(){Af(this,this.G&this.xa(),128);this.A-=this.B.Je},function(){Af(this,this.G&this.Ma(),this.Ga);this.A-=this.B.Je},function(){var a=1,b=0,c=this.Ba,d=this.B.ei;this.Ia&192&&
(a=this.I&c,b=1,d=this.B.gi,this.Ia&256||(this.A-=this.B.fi));if(a--){var e=this.G;this.qc(this.Xa.nc(this.J&c,1),e);this.I=this.I&~c|this.I-b&c;80546<=this.Vc&&80564>=this.Vc&&!(this.Ia&2048)!=(103!=this.Qa(this.Ha))&&(c^=-65536);this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c;this.A-=d;a&&(sf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.ei;this.Ia&192&&(a=this.I&c,b=1,d=this.B.gi,this.Ia&256||(this.A-=this.B.fi));if(a--){var e=this.G;this.rc(this.Xa.nc(this.J&c,this.ba),e);this.J=
this.J&~c|this.J+(this.ca&1024?-this.ba:this.ba)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(sf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Mh;this.Ia&192&&(a=this.I&c,b=1,d=this.B.Oh,this.Ia&256||(this.A-=this.B.Nh));if(a--){var e=this.Qa(this.ka.mc(this.K&c,1));this.G=this.G&-256|e;this.K=this.K&~c|this.K+(this.ca&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(sf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Mh;this.Ia&192&&(a=this.I&c,b=1,d=this.B.Oh,
this.Ia&256||(this.A-=this.B.Nh));if(a--){var e=vd(this,this.ka,this.K&c);this.G=this.G&~this.R|e;this.K=this.K&~c|this.K+(this.ca&1024?-this.ba:this.ba)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(sf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Zh;this.Ia&192&&(a=this.I&c,b=1,d=this.B.ai,this.Ia&256||(this.A-=this.B.$h));if(a--){var e=this.G&255,f=Of(this,this.Xa,this.J);this.C=this.D;Mh.call(this,e,f);this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=
d-this.B.Vb;a&&xf(this)==(this.Ia&64)&&(sf(this),this.S|=256)}},function(){var a=1,b=0,c=this.Ba,d=this.B.Zh;this.Ia&192&&(a=this.I&c,b=1,d=this.B.ai,this.Ia&256||(this.A-=this.B.$h));if(a--){var e=this.G&this.R,f=Qf(this,this.Xa,this.J&c);this.C=this.D;Nh.call(this,e,f);this.J=this.J&~c|this.J+(this.ca&1024?-this.ba:this.ba)&c;this.I=this.I&~c|this.I-b&c;this.A-=d-this.B.Vb;a&&xf(this)==(this.Ia&64)&&(sf(this),this.S|=256)}},function(){this.G=this.G&-256|this.xa();this.A-=this.B.fc},function(){this.I=
this.I&-256|this.xa();this.A-=this.B.fc},function(){this.M=this.M&-256|this.xa();this.A-=this.B.fc},function(){this.H=this.H&-256|this.xa();this.A-=this.B.fc},function(){this.G=this.G&-65281|this.xa()<<8;this.A-=this.B.fc},function(){this.I=this.I&-65281|this.xa()<<8;this.A-=this.B.fc},function(){this.M=this.M&-65281|this.xa()<<8;this.A-=this.B.fc},function(){this.H=this.H&-65281|this.xa()<<8;this.A-=this.B.fc},function(){this.G=this.G&~this.R|this.Ma();this.A-=this.B.fc},function(){this.I=this.I&
~this.R|this.Ma();this.A-=this.B.fc},function(){this.M=this.M&~this.R|this.Ma();this.A-=this.B.fc},function(){this.H=this.H&~this.R|this.Ma();this.A-=this.B.fc},function(){I(this,J(this)&~this.R|this.Ma());this.A-=this.B.fc},function(){this.P=this.P&~this.R|this.Ma();this.A-=this.B.fc},function(){this.K=this.K&~this.R|this.Ma();this.A-=this.B.fc},function(){this.J=this.J&~this.R|this.Ma();this.A-=this.B.fc},dk,ek,dk,ek,function(){this.V.call(this,Zh)},function(){this.V.call(this,Xh)},function(){this.S|=
1;this.Jb.call(this,lk,this.xa)},function(){this.S|=1;this.ya.call(this,lk,this.Ma)},fk,gk,fk,gk,function(){if(this.ca&131072&&3>this.Pa)E.call(this,13,0);else{var a=this.B.dk;this.qb=-1;zj.call(this,3,null,a)}},function(){var a=this.xa();if(this.ca&131072&&3>this.Pa)E.call(this,13,0);else{var b;a:{b=this.Hd[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c](this.Ha)){b=!1;break a}this.la.nj&&z(this,16)&&mk(this.ha,a,this.Ha);b=!0}b?(this.qb=-1,zj.call(this,a,null,0)):this.A--}},function(){if(zf(this))if(this.ca&
131072&&3>this.Pa)E.call(this,13,0);else{var a=this.B.ek;this.qb=-1;zj.call(this,4,null,a)}else this.A-=this.B.fk},function(){if(this.ca&131072&&3>this.Pa)E.call(this,13,0);else{this.sb=this.ta.Z;this.U=this.fa;this.A-=this.B.bk;if(this.$a&1&&this.ca&16384){var a=this.na(this.Sa.Aa+0);sd(this.wa,a,!1)}else{var a=this.pa,b=H(this),c=H(this),d=H(this);if(this.ca&131072)d=d&131071|this.ca&-131072;else if(d&131072){var e=H(this),f=H(this),g=H(this),h=H(this),k=H(this),m=H(this);td(this,!0,!0);nd(this,
f);I(this,e);yd(this,g);xd(this,h);this.Nb.load(k);this.Ob.load(m)}null!=Bd(this,b,c,!1)&&(Ad(this,d,a),this.le&&kf(this,this.Ha))}this.sb=this.U=-1}},function(){this.Jb.call(this,ak,tj)},function(){this.ya.call(this,2==this.ba?bk:ck,tj)},function(){this.Jb.call(this,ak,uj)},function(){this.ya.call(this,2==this.ba?bk:ck,uj)},function(){var a=this.xa();if(a){var b=this.G&255;this.G=this.G&-65536|b/a<<8|b%a;Af(this,this.G,128);this.A-=this.B.Hj}else Cj.call(this)},function(){var a=this.G&255,b=(this.G>>
8&255)*this.xa()|0,c=a+b|0;this.G=this.G&-65536|c&255;tf(this,a,b,c,191);this.A-=this.B.Gj},function(){this.G=this.G&-256|(uf(this)?255:0);this.A-=2},function(){this.G=this.G&-256|Of(this,this.ka,this.H+(this.G&255));this.A-=this.B.Gk},function(){hk.call(this,216)},function(){hk.call(this,217)},function(){hk.call(this,218)},function(){hk.call(this,219)},function(){hk.call(this,220)},function(){hk.call(this,221)},function(){hk.call(this,222)},function(){hk.call(this,223)},function(){var a=this.T(),
b=this.I-1&this.Ba;this.I=this.I&~this.Ba|b;b&&!xf(this)?(O(this,M(this)+a),this.A-=this.B.mk):this.A-=this.B.Ph},function(){var a=this.T(),b=this.I-1&this.Ba;this.I=this.I&~this.Ba|b;b&&xf(this)?(O(this,M(this)+a),this.A-=this.B.Qh):this.A-=this.B.Rh},function(){var a=this.T(),b=this.I-1&this.Ba;this.I=this.I&~this.Ba|b;b?(O(this,M(this)+a),this.A-=this.B.lk):this.A-=this.B.Ph},function(){var a=this.T();this.I&this.Ba?this.A-=this.B.Rh:(O(this,M(this)+a),this.A-=this.B.Qh)},function(){var a=this.xa();
Mf(this,a,1,!0)&&(this.G=this.G&-256|oc(this.ga,a,1,this.Ha-2)&255,this.A-=this.B.Kh)},function(){var a=this.xa();Mf(this,a,this.ba,!0)&&(this.G=this.G&~this.R|oc(this.ga,a,this.ba,this.Ha-2)&this.R,this.A-=this.B.Kh)},function(){var a=this.xa();Mf(this,a,1,!1)&&(wc(this.ga,a,1,this.G&255,this.Ha-2),this.A-=this.B.Yh)},function(){var a=this.xa();Mf(this,a,this.ba,!1)&&(wc(this.ga,a,this.ba,this.G&this.R,this.Ha-2),this.A-=this.B.Yh)},function(){var a=this.Ma(),b=M(this),a=b+a;K(this,b);O(this,a);
this.A-=this.B.Lj},function(){var a=this.Ma();O(this,M(this)+a);this.A-=this.B.Lh},function(){Bd(this,this.Ma(),Wf(this));this.A-=this.B.hk},function(){var a=this.T();O(this,M(this)+a);this.A-=this.B.Lh},function(){var a=this.M&65535;Mf(this,a,1,!0)&&(this.G=this.G&-256|oc(this.ga,a,1,this.Ha-1)&255,this.A-=this.B.Jh)},function(){var a=this.M&65535;Mf(this,a,this.ba,!0)&&(this.G=this.G&~this.R|oc(this.ga,a,this.ba,this.Ha-1)&this.R,this.A-=this.B.Jh)},function(){var a=this.M&65535;Mf(this,a,1,!1)&&
(wc(this.ga,a,1,this.G&255,this.Ha-1),this.A-=this.B.Xh)},function(){var a=this.M&65535;Mf(this,a,2,!1)&&(wc(this.ga,a,this.ba,this.G&this.R,this.Ha-1),this.A-=this.B.Xh)},ik,ik,function(){this.S|=132;this.A-=this.B.od},function(){this.S|=68;this.A-=this.B.od},function(){this.ca&131072?E.call(this,13,0):(this.ua|=4,this.A-=2,this.ha&&z(this,-2147483648)?(sf(this),this.ha.Wb()):this.ca&512||(this.ha&&sf(this),this.Wb()))},function(){uf(this)?Cf(this):Bf(this);this.A-=2},function(){this.cb=!1;this.Jb.call(this,
nk,wj);this.cb&&(this.G=this.G&~this.R|this.ia&this.R)},function(){this.cb=!1;this.ya.call(this,ok,wj);this.cb&&(this.G=this.G&~this.R|this.ia&this.R,this.M=this.M&~this.R|this.va&this.R)},function(){Cf(this);this.A-=2},function(){Bf(this);this.A-=2},function(){this.pa>this.Pa?E.call(this,13,0):(this.ca&=-513,this.A-=this.B.Jj)},function(){this.pa>this.Pa?E.call(this,13,0):(this.ca|=512,this.S|=4,this.A-=2)},function(){this.ca&=-1025;this.A-=2},function(){this.ca|=1024;this.A-=2},function(){this.Jb.call(this,
Fd,wj)},function(){this.ya.call(this,Gd,wj)}],Vj=[wh,zi,uh,Bi,yh,dj,lj,Mh],jk=[xh,Ai,vh,Ci,zh,ej,mj,Nh],kk=[function(a,b){this.A-=-1===this.C?this.B.zc:this.B.yk;return b},Ph,Ph,Ph,Ph,Ph,Ph,Ph],lk=[function(a,b){this.A-=-1===this.C?this.B.qk:this.B.nk;return b},W,W,W,W,W,W,W],ak=[function(a,b){var c=a;if(b&=this.ra){var d;(b&=7)?(d=a<<b-1,c=(a<<b|a>>8-b)&255):d=a<<7;Ff(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.ra){var d;(b&=7)?(d=a<<8-b,c=(a>>>b|d)&255):d=a;Ff(this,c,d,128)}return c},
function(a,b){var c=a;if(b&=this.ra){var d=Gf(this);(b%=9)?(c=(a<<b|d<<b-1|a>>9-b)&255,d=a<<b-1):d<<=7;Ff(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.ra){var d=Gf(this);(b%=9)?(c=(a>>b|d<<8-b|a<<9-b)&255,d=a<<8-b):d<<=7;Ff(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.ra){var d=0;8<b?c=0:(d=a<<b-1,c=d<<1&255);Af(this,c,128,d&128,(c^d)&128)}return c},function(a,b){if(b&=this.ra)b=8<b?0:a>>>b-1,a=b>>>1&255,Af(this,a,128,b&1,a&128);return a},W,function(a,b){if(b&=this.ra)9<b&&
(b=9),b=a<<24>>24>>b-1,a=b>>1&255,Af(this,a,128,b&1);return a}],bk=[function(a,b){var c=a;if(b&=this.ra){var d;(b&=15)?(d=a<<b-1,c=(a<<b|a>>16-b)&65535):d=a<<15;Ff(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.ra){var d;(b&=15)?(d=a<<16-b,c=(a>>>b|d)&65535):d=a;Ff(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.ra){var d=Gf(this);(b%=17)?(c=(a<<b|d<<b-1|a>>17-b)&65535,d=a<<b-1):d<<=15;Ff(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.ra){var d=Gf(this);(b%=17)?
(c=(a>>b|d<<16-b|a<<17-b)&65535,d=a<<16-b):d<<=15;Ff(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.ra){var d=0;16<b?c=0:(d=a<<b-1,c=d<<1&65535);Af(this,c,32768,d&32768,(c^d)&32768)}return c},function(a,b){if(b&=this.ra)b=16<b?0:a>>>b-1,a=b>>>1&65535,Af(this,a,32768,b&1,a&32768);return a},W,function(a,b){if(b&=this.ra)17<b&&(b=17),b=a<<16>>16>>b-1,a=b>>1&65535,Af(this,a,32768,b&1);return a}],ck=[function(a,b){var c=a;if(b&=this.ra)c=a<<b|a>>>32-b,Ff(this,c,a<<b-1,-2147483648);return c},
function(a,b){var c=a;if(b&=this.ra){var d=a<<32-b,c=a>>>b|d;Ff(this,c,d,-2147483648)}return c},function(a,b){var c=a;if(b&=this.ra)c=Gf(this),c=a<<b|c<<b-1|a>>>32-b>>>1,Ff(this,c,a<<b-1,-2147483648);return c},function(a,b){var c=a;if(b&=this.ra)c=Gf(this),c=a>>>b|c<<32-b|a<<32-b<<1,Ff(this,c,a<<32-b,-2147483648);return c},function(a,b){var c=a;if(b&=this.ra)a<<=b-1,c=a<<1,Af(this,c,-2147483648,a&-2147483648,(c^a)&-2147483648);return c},function(a,b){if(b&=this.ra)b=a>>>b-1,a=b>>>1,Af(this,a,-2147483648,
b&1,a&-2147483648);return a},W,function(a,b){if(b&=this.ra)b=a>>b-1,a=b>>1,Af(this,a,-2147483648,b&1);return a}],nk=[function(a,b){b=this.xa();Af(this,a&b,128);this.A-=-1===this.D?this.B.ii:this.B.hi;this.S|=2;return a},W,function(a){this.A-=-1===this.D?this.B.Wf:this.B.Vf;return a^255},function(a){var b=-a|0;tf(this,0,a,b,191,!0);this.A-=-1===this.D?this.B.Wf:this.B.Vf;return b&255},function(a){this.ia=(this.G&255)*a&65535;this.ia&65280?(Bf(this),Df(this)):(Cf(this),Ef(this));this.cb=!0;this.A-=
-1===this.D?this.B.uk:this.B.tk;this.S|=2;return a},function(a){var b=(this.G<<24>>24)*(a<<24>>24)|0;this.ia=b&65535;127<b||-128>b?(Bf(this),Df(this)):(Cf(this),Ef(this));this.cb=!0;this.A-=-1===this.D?this.B.Zj:this.B.Yj;this.S|=2;return a},function(a,b){if(!a)return Cj.call(this),a;var c=(b=this.G&65535)/a;if(255<c)return Cj.call(this),a;this.ia=c&255|(b%a&255)<<8;this.cb=!0;this.A-=-1===this.D?this.B.Rj:this.B.Qj;this.S|=2;return a},function(a,b){if(!a)return Cj.call(this),a;var c=a<<24>>24,d=
(b=this.G<<16>>16)/c|0;if(d!=d<<24>>24||8086==this.ja&&-128==d)return Cj.call(this),a;this.ia=d&255|(b%c&255)<<8;this.cb=!0;this.A-=-1===this.D?this.B.Vj:this.B.Uj;this.S|=2;return a}],ok=[function(a,b){b=this.Ma();Af(this,a&b,this.Ga);this.A-=-1===this.D?this.B.ii:this.B.hi;this.S|=2;return a},W,function(a){this.A-=-1===this.D?this.B.Wf:this.B.Vf;return a^this.R},function(a){var b=-a|0;tf(this,0,a,b,this.Ga|63,!0);this.A-=-1===this.D?this.B.Wf:this.B.Vf;return b&this.R},function(a,b){2==this.ba?
(b=this.G&65535,b=b*a|0,this.ia=b&65535,this.va=b>>16&65535):(Vh.call(this,a,this.G),80563==this.Vc&&68657152==this.G&&129==a&&(this.va=0));this.va?(Bf(this),Df(this)):(Cf(this),Ef(this));this.cb=!0;this.A-=-1===this.D?this.B.wk:this.B.vk;this.S|=2;return a},function(a,b){2==this.ba?(b=this.G&65535,b=(b<<16>>16)*(a<<16>>16)|0,this.ia=b&65535,this.va=b>>16&65535,b=32767<b||-32768>b):(Uh.call(this,a,this.G),b=this.va!=this.ia>>31);b?(Bf(this),Df(this)):(Cf(this),Ef(this));this.cb=!0;this.A-=-1===this.D?
this.B.ak:this.B.$j;this.S|=2;return a},function(a,b){if(2==this.ba){if(!a)return Cj.call(this),a;b=65536*(this.M&65535)+(this.G&65535);var c=b/a;if(65536<=c)return Cj.call(this),a;this.ia=c&65535;this.va=b%a&65535}else{if(!pj.call(this,this.G,this.M,a))return Cj.call(this),a;this.ia|=0;this.va|=0}this.cb=!0;this.A-=-1===this.D?this.B.Tj:this.B.Sj;this.S|=2;return a},function(a,b){if(2==this.ba){if(!a)return Cj.call(this),a;var c=a<<16>>16,d=(b=this.M<<16|this.G&65535)/c|0;if(d!=d<<16>>16||8086==
this.ja&&-32768==d)return Cj.call(this),a;this.ia=d&65535;this.va=b%c&65535}else{b=this.G;var c=this.M,d=a,e=0,f=0;0>d&&(d=-d|0,e=1-e);0>c&&(b=-b|0,c=~c+(b?0:1)|0,f=1,e=1-e);!pj.call(this,b,c,d)||this.ia>2147483647+e||this.va>2147483647+f?b=!1:(e&&(this.ia=-this.ia),f&&(this.va=-this.va),b=!0);if(!b)return Cj.call(this),a;this.ia|=0;this.va|=0}this.cb=!0;this.A-=-1===this.D?this.B.Xj:this.B.Wj;this.S|=2;return a}],Fd=[function(a){var b=a+1|0;tf(this,a,1,b,190);this.A-=-1===this.D?this.B.Uf:this.B.Tf;
return b&255},function(a){var b=a-1|0;tf(this,a,1,b,190,!0);this.A-=-1===this.D?this.B.Uf:this.B.Tf;return b&255},W,W,W,W,W,W],Gd=[function(a){var b=a+1|0;tf(this,a,1,b,this.Ga|62);this.A-=-1===this.D?this.B.Uf:this.B.Tf;return b&this.R},function(a){var b=a-1|0;tf(this,a,1,b,this.Ga|62,!0);this.A-=-1===this.D?this.B.Uf:this.B.Tf;return b&this.R},function(a){K(this,M(this));O(this,a);this.A-=-1===this.D?this.B.Pj:this.B.Oj;this.S|=2;return a},function(a){if(-1===this.D)return W.call(this,a);this.U=
this.fa;yj.call(this,a,this.na(this.D+this.ba));this.A-=this.B.Mj;this.S|=2;this.U=-1;return a},function(a){O(this,a);this.A-=-1===this.D?this.B.jk:this.B.ik;this.S|=2;return a},function(a){if(-1===this.D)return W.call(this,a);Bd(this,a,this.na(this.D+this.ba));this.A-=this.B.gk;this.S|=2;return a},function(a){var b=a;this.S&512&&(a=a-2&65535,80286>this.ja&&(b=a));K(this,b);this.A-=-1===this.D?this.B.Sc:this.B.Ak;this.S|=2;return a},W];function qe(){this.V.call(this,ij);this.A-=-1===this.D?6:13}
function re(){this.ea.call(this,hj);this.A-=-1===this.D?12:19}var ie=Array(256);ie[0]=function(){16>(this.Qa(this.Ha)&56)&&(this.S|=1);this.ya.call(this,this.mg,wj)};ie[1]=function(){this.Qa(this.Ha)&16||(this.S|=1);this.ya.call(this,pk,wj)};ie[2]=function(){!(this.$a&1)||this.ca&131072?E.call(this,6):this.V.call(this,Wh)};ie[3]=function(){!(this.$a&1)||this.ca&131072?E.call(this,6):this.V.call(this,bi)};
ie[5]=function(){this.pa?E.call(this,13,0,0,!0):(Lf(this,this.na(2054)),this.J=this.na(2086),this.K=this.na(2088),this.P=this.na(2090),this.H=this.na(2094),this.M=this.na(2096),this.I=this.na(2098),this.G=this.na(2100),md(this.Xa,2102,this.na(2084)),md(this.wa,2108,this.na(2082)),md(this.ta,2114,this.na(2080)),md(this.vb,2120,this.na(2078)),Ad(this,this.na(2072)),O(this,this.na(2074)),I(this,this.na(2092)),this.Fc=this.na(2126)|this.Qa(2128)<<16,this.zd=this.Fc+this.na(2130),this.Nc=this.na(2138)|
this.Qa(2140)<<16,this.Sd=this.Nc+this.na(2142),md(this.Bc,2132,this.na(2076)),md(this.Sa,2144,this.na(2070)),this.A-=195)};ie[6]=function(){this.pa?E.call(this,13,0):(this.$a&=-9,this.A-=2)};ie[11]=Id;ie[166]=Id;ie[255]=Id;var N=[];N[5]=Id;
N[7]=function(){if(this.pa)E.call(this,13,0,0,!0);else{var a=this.Xa.mc(this.J&this.Ba,204);if(-1!==a){rj.call(this,this.oa(a));var b=this.oa(a+168),c=(b&24576)>>13;Ad(this,this.oa(a+4),c);this.Fc=this.oa(a+112);this.zd=this.Fc+this.oa(a+116);this.Nc=this.oa(a+100);this.Sd=this.Nc+this.oa(a+104);ld(this.Bc,this.oa(a+56),this.oa(a+120),this.oa(a+124),this.oa(a+128));ld(this.Sa,this.oa(a+52),this.oa(a+84),this.oa(a+88),this.oa(a+92));this.J=this.oa(a+12);this.K=this.oa(a+16);this.P=this.oa(a+20);this.H=
this.oa(a+28);this.M=this.oa(a+32);this.I=this.oa(a+36);this.G=this.oa(a+40);ld(this.Ob,this.oa(a+60),this.oa(a+132),this.oa(a+136),this.oa(a+140));ld(this.Nb,this.oa(a+64),this.oa(a+144),this.oa(a+148),this.oa(a+152));ld(this.vb,this.oa(a+68),this.oa(a+156),this.oa(a+160),this.oa(a+164));ld(this.ta,this.oa(a+72),b,this.oa(a+172),this.oa(a+176));ld(this.wa,this.oa(a+76),this.oa(a+180),this.oa(a+184),this.oa(a+188));ld(this.Xa,this.oa(a+80),this.oa(a+192),this.oa(a+196),this.oa(a+200));O(this,this.oa(a+
8));I(this,this.oa(a+24))}this.A-=122<<(a&3?1:0)}};N[16]=Wj;N[17]=Xj;N[18]=Yj;N[19]=Zj;N[32]=function(){if(this.pa)E.call(this,13,0);else{var a,b=this.xa();switch((b&56)>>3){case 0:a=this.$a;break;case 2:a=this.se;break;case 3:a=this.Od;break;default:je.call(this);return}ye(this,b&7,a);this.A-=6}};N[33]=function(){if(this.pa)E.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?je.call(this):(ye(this,a&7,this.Ja[b]),this.A-=22)}};
N[34]=function(){if(this.pa)E.call(this,13,0);else{var a=this.xa(),b=xe(this,a&7);switch((a&56)>>3){case 0:rj.call(this,b);this.A-=10;break;case 2:this.se=b;this.A-=4;break;case 3:Cd.call(this,b);this.A-=5;break;default:je.call(this)}}};N[35]=function(){if(this.pa)E.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?je.call(this):(a=xe(this,a&7),a!=this.Ja[b]&&(lf(this,!1),this.Ja[b]=a,lf(this,!0)),this.A-=4>b?22:14)}};
N[36]=function(){if(this.pa)E.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;6>b?je.call(this):(ye(this,a&7,this.Ee[b]),this.A-=12)}};N[38]=function(){if(this.pa)E.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;6>b?je.call(this):(this.Ee[b]=xe(this,a&7),this.A-=12)}};N[128]=function(){var a=this.Ma();zf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};N[129]=function(){var a=this.Ma();zf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)};
N[130]=function(){var a=this.Ma();uf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};N[131]=function(){var a=this.Ma();uf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)};N[132]=function(){var a=this.Ma();xf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};N[133]=function(){var a=this.Ma();xf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)};N[134]=function(){var a=this.Ma();uf(this)||xf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};
N[135]=function(){var a=this.Ma();uf(this)||xf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)};N[136]=function(){var a=this.Ma();yf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};N[137]=function(){var a=this.Ma();yf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)};N[138]=function(){var a=this.Ma();vf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};N[139]=function(){var a=this.Ma();vf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)};
N[140]=function(){var a=this.Ma();!yf(this)!=!zf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};N[141]=function(){var a=this.Ma();!yf(this)==!zf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};N[142]=function(){var a=this.Ma();xf(this)||!yf(this)!=!zf(this)?(O(this,M(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};N[143]=function(){var a=this.Ma();xf(this)||!yf(this)!=!zf(this)?this.A-=this.B.bb:(O(this,M(this)+a),this.A-=this.B.ab)};N[144]=function(){sj.call(this,Di)};
N[145]=function(){sj.call(this,Di)};N[146]=function(){sj.call(this,Ei)};N[147]=function(){sj.call(this,Fi)};N[148]=function(){sj.call(this,Gi)};N[149]=function(){sj.call(this,Hi)};N[150]=function(){sj.call(this,Ii)};N[151]=function(){sj.call(this,Ji)};N[152]=function(){sj.call(this,Ki)};N[153]=function(){sj.call(this,Li)};N[154]=function(){sj.call(this,Mi)};N[155]=function(){sj.call(this,Ni)};N[156]=function(){sj.call(this,Oi)};N[157]=function(){sj.call(this,Pi)};N[158]=function(){sj.call(this,Qi)};
N[159]=function(){sj.call(this,Ri)};N[160]=function(){wd(this,this.Nb.Z,this.ba,2);this.A-=this.B.Ke};N[161]=function(){this.U=this.fa;var a=H(this);this.Nb.load(a);this.A-=this.B.zc;this.U=-1};N[163]=function(){this.ea.call(this,Ih);-1!==this.D&&(this.A-=6)};N[164]=function(){this.ea.call(this,2==this.ba?Si:Ui);this.A-=-1===this.D?3:7};N[165]=function(){this.ea.call(this,2==this.ba?Wi:Xi);this.A-=-1===this.D?3:7};N[168]=function(){wd(this,this.Ob.Z,this.ba,2);this.A-=this.B.Ke};
N[169]=function(){this.U=this.fa;var a=H(this);this.Ob.load(a);this.A-=this.B.zc;this.U=-1};N[171]=function(){this.ea.call(this,Lh);-1!==this.D&&(this.A-=5)};N[172]=function(){this.ea.call(this,2==this.ba?Yi:$i);this.A-=-1===this.D?3:7};N[173]=function(){this.ea.call(this,2==this.ba?bj:cj);this.A-=-1===this.D?3:7};N[175]=function(){this.V.call(this,2==this.ba?Rh:Th)};N[178]=function(){this.V.call(this,ci)};N[179]=function(){this.ea.call(this,Kh);-1!==this.D&&(this.A-=5)};
N[180]=function(){this.V.call(this,$h)};N[181]=function(){this.V.call(this,ai)};
N[182]=function(){this.Oa.call(this,ei);switch(this.L>>3&7){case 0:this.G=this.G&~this.R|this.G&255;break;case 1:this.I=this.I&~this.R|this.I&255;break;case 2:this.M=this.M&~this.R|this.M&255;break;case 3:this.H=this.H&~this.R|this.H&255;break;case 4:this.gb=this.gb&~this.R|this.G>>8&255;this.G=this.aa;break;case 5:this.P=this.P&~this.R|this.I>>8&255;this.I=this.aa;break;case 6:this.K=this.K&~this.R|this.M>>8&255;this.M=this.aa;break;case 7:this.J=this.J&~this.R|this.H>>8&255,this.H=this.aa}this.A-=
-1===this.D?3:6};N[183]=function(){ud(this,2);this.V.call(this,fi);switch(this.L>>3&7){case 0:this.G=this.G&65535;break;case 1:this.I=this.I&65535;break;case 2:this.M=this.M&65535;break;case 3:this.H=this.H&65535;break;case 4:this.gb=this.gb&65535;break;case 5:this.P=this.P&65535;break;case 6:this.K=this.K&65535;break;case 7:this.J=this.J&65535}this.A-=-1===this.D?3:6};N[186]=function(){this.ya.call(this,qk,this.xa)};N[187]=function(){this.ea.call(this,Jh);-1!==this.D&&(this.A-=5)};
N[188]=function(){this.V.call(this,Ch)};N[189]=function(){this.V.call(this,Dh)};
N[190]=function(){this.Oa.call(this,ei);switch(this.L>>3&7){case 0:this.G=this.G&~this.R|(this.G&255)<<24>>24&this.R;break;case 1:this.I=this.I&~this.R|(this.I&255)<<24>>24&this.R;break;case 2:this.M=this.M&~this.R|(this.M&255)<<24>>24&this.R;break;case 3:this.H=this.H&~this.R|(this.H&255)<<24>>24&this.R;break;case 4:this.gb=this.gb&~this.R|this.G<<16>>24&this.R;this.G=this.aa;break;case 5:this.P=this.P&~this.R|this.I<<16>>24&this.R;this.I=this.aa;break;case 6:this.K=this.K&~this.R|this.M<<16>>24&
this.R;this.M=this.aa;break;case 7:this.J=this.J&~this.R|this.H<<16>>24&this.R,this.H=this.aa}this.A-=-1===this.D?3:6};N[191]=function(){ud(this,2);this.V.call(this,fi);switch(this.L>>3&7){case 0:this.G=this.G<<16>>16;break;case 1:this.I=this.I<<16>>16;break;case 2:this.M=this.M<<16>>16;break;case 3:this.H=this.H<<16>>16;break;case 4:this.gb=this.gb<<16>>16;break;case 5:this.P=this.P<<16>>16;break;case 6:this.K=this.K<<16>>16;break;case 7:this.J=this.J<<16>>16}this.A-=-1===this.D?3:6};
var mf=[function(){this.A-=2+(-1===this.D?0:1);return this.Bc.Z},function(){this.A-=2+(-1===this.D?0:1);return this.Sa.Z},function(a){this.S|=2;this.Bc.load(a);this.A-=17+(-1===this.D?0:2);return a},function(a){this.S|=2;-1!==this.Sa.load(a)&&(this.jb(this.Sa.Xb+4,this.Sa.wb|=512),this.Sa.type|=512);this.A-=17+(-1===this.D?0:2);return a},function(a){this.S|=2;this.A-=14+(-1===this.D?0:2);if(-1!==this.Da.load(a)&&2048!=(this.Da.wb&2560)&&(this.Da.Hc>=this.pa&&this.Da.Hc>=(a&3)||7168==(this.Da.wb&7168)))return Kf(this),
a;If(this);return a},function(a){this.S|=2;this.A-=14+(-1===this.D?0:2);if(-1!==this.Da.load(a)&&512==(this.Da.wb&2560)&&this.Da.Hc>=this.pa&&this.Da.Hc>=(a&3))return Kf(this),a;If(this);return a},W,W],Hd=[ge,ge,ge,ge,ge,ge,W,W],pk=[function(a){if(-1===this.D)E.call(this,6);else{a=this.zd-this.Fc;var b=this.Fc;80286==this.ja?b|=-16777216:80386<=this.ja&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=11}return a},function(a){if(-1===this.D)E.call(this,6);else{a=this.Sd-this.Nc;var b=this.Nc;80286==
this.ja?b|=-16777216:80386<=this.ja&&2!=this.ba&&(a|=b<<16);this.nb(this.D+2,b);this.A-=12}return a},function(a){-1===this.D||this.ca&131072?E.call(this,6):(this.Fc=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.zd=this.Fc+a,this.S|=2,this.A-=11);return a},function(a){-1===this.D||this.ca&131072?E.call(this,6):(this.Nc=this.oa(this.D+2)&(this.R|this.R<<8),a&=65535,this.Sd=this.Nc+a,this.S|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.D?0:1);return this.$a},W,function(a){this.ca&131072?
E.call(this,6):(Lf(this,a),this.A-=-1===this.D?3:6,this.S|=2);return a},W],qk=[W,W,W,W,Eh,Hh,Gh,Fh];
function X(a){db.call(this,"ChipSet",a,X,32768);var b=a.model;b&&!rk[b]&&w("Unrecognized ChipSet model: "+b);this.ja=rk[b]||sk;this.C=[];b=tk(a[uk]);this.C[0]=[b,b];null==b&&(this.ia=[360,360],(b=a.floppies)&&b.length&&(this.ia=b),vk(this,wk,this.ia.length),vk(this,xk,a.monitor||(this.ja<hg?"mono":"ega")));b=tk(a[yk]);this.C[1]=[b,b];this.cb=this.Da=1;this.ja>=hg&&(this.cb=this.Da=2);this.ka=a.scaleTimers||!1;this.Ub=a.rtcDate;this.Db=!1;a.sound&&(this.sb=this.Ea=null,window&&(this.sb=window.AudioContext||
window.webkitAudioContext),this.sb&&(this.Ea=new this.sb));this.reset(!0);ub(this)}gb(X);var sk=5150.9,hg=5170,rk={5150:5150,5160:5160,5170:hg,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:sk,deskpro386:5180},uk="sw1",yk="sw2",zk={jl:1,ONE:0,jp:64,hp:128,Yo:192,Mc:192,Xg:6},Ak={ip:16,wo:32,Zo:48,Mc:48,Xg:4},wk=1,xk=4,Bk={5150:[{},{}]};Bk[5150][0][wk]={Mc:192,hd:{1:0,2:64,3:128,4:192},Pd:"Number of Floppy Drives"};Bk[5150][0][3]={Mc:2,hd:{0:0,1:2},Pd:"FPU"};
Bk[5150][0][xk]={Mc:48,hd:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,cga:32,mda:48,mono:48,ega:0,vga:0},Pd:"Monitor Type"};Bk[5150][0][5]={Mc:12,hd:{16:0,32:4,48:8,64:12},Pd:"Base Memory (16Kb Increments)"};Bk[5150][1][6]={Mc:31,hd:{0:0,32:1,64:2,96:3,128:4,160:5,192:6,224:7,256:8,288:9,320:10,352:11,384:12,416:13,448:14,480:15,512:16,544:17,576:18},Pd:"Expansion Memory (32Kb Increments)"};Bk[5160]=[{},{}];Bk[5160][0][wk]=Bk[5150][0][wk];Bk[5160][0][3]=Bk[5150][0][3];Bk[5160][0][xk]=Bk[5150][0][xk];
Bk[5160][0][5]={Mc:12,hd:{64:0,128:4,192:8,256:12},Pd:"Base Memory (64Kb Increments)"};Bk[5160][1][6]=Bk[5150][1][6];Bk[5160.101]=[{},{}];Bk[5160.101][0][5]={Mc:143,hd:{128:1,256:130,512:8,640:141},Pd:"Base Memory (128Kb Increments)"};Bk[5160.101][0][3]={Mc:16,hd:{0:0,1:16},Pd:"FPU"};Bk[5160.101][1][2]={Mc:1,hd:{0:0,1:1},Pd:"Floppy Type"};Bk[5160.101][1][wk]=Bk[5150][0][wk];Bk[5160.101][1][xk]=Bk[5150][0][xk];l=X.prototype;
l.Pb=function(a,b,c){switch(b){case uk:return this.qa[b]=c,Ck(this,0,b),!0;case yk:if(5150==(this.ja|0)||5160.101==this.ja)return this.qa[b]=c,Ck(this,1,b),!0;break;case "swdesc":return this.qa[b]=c,!0}return!1};
l.Jc=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.X=a;this.Tb=Gb(a,"FPU");vk(this,3,this.Tb?1:0,!0);this.B=Gb(a,"Keyboard");this.gb=c.Y.Id/1193181;nc(b,this,Dk);rc(b,this,Ek);this.ja<hg?5160.101!=this.ja?(nc(b,this,Fk),rc(b,this,Gk)):(nc(b,this,Hk),rc(b,this,Ik)):(nc(b,this,Jk),rc(b,this,Kk),5180==(this.ja|0)&&(nc(b,this,Lk),rc(b,this,Mk)));if(d){var e=this;Nk(d,1024,function(){for(var a=0;a<e.vc.length;a++){for(var b=e.vc[a],c="PIC"+a+":",d=0;d<b.Zc.length;d++)c+=" IC"+(d+1)+"="+u(b.Zc[d]);
c+=" IMR="+u(b.Ad)+" IRR="+u(b.lc)+" ISR="+u(b.Pc)+" DELAY="+b.nf;e.ha.O(c)}});Nk(d,2048,function(a){a=(a=a[0])?+a:null;for(var b=0;b<e.V.length;b++)if(null==a||b==a){Ok(e,b);var c=e.V[b],d="TIMER"+b+":",f=0;if(null!=c.nd)for(var n=0;n<=c.nd;n++)f|=c.Ab[n]<<8*n;d+=" mode="+(c.mode>>1)+" bytes="+c.nd+" count="+v(f);e.ha.O(d)}});Nk(d,4096,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Pk(e,b):e.A[b];a&&(a+="\n");a+="CMOS["+u(b)+"]: "+u(c)}e.ha.O(a)})}hf(c,26,this.Rm.bind(this))};
l.hc=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};l.gc=function(a){return a?this.save():!0};
l.reset=function(a){var b;Qk(this);this.L=Array(this.cb);for(b=0;b<this.cb;b++)Rk(this,b);this.vc=Array(this.Da);Sk(this,0,32);1<this.Da&&Sk(this,1,160);this.Pa=this.Oa=null;this.V=Array(5180==(this.ja|0)?6:3);for(b=0;b<this.V.length;b++)Tk(this,b);this.Ca=this.qb=this.W=this.Ya=null;this.ya=0;5160.101==this.ja&&(this.va=0);if(this.ja>=hg){this.N=16;this.ea=0;this.aa=16;this.Ja=0;this.fa=160;512<=Uk(this)&&(this.fa|=16);3==+Vk(this,xk,void 0)&&(this.fa|=64);5180==(this.ja|0)&&(this.fa|=12);this.Ka=
3;this.ra=Array(8);this.pa=0;a&&(this.A=Array(64));Wk(this,this.Ub);for(a=21;24>=a;a++)this.A[a]=0;for(a=14;46>a;a++)void 0===this.A[a]&&(this.A[a]=0);a=0|+Vk(this,xk,void 0)<<Ak.Xg&Ak.Mc;a|=+Vk(this,3,void 0)?2:0;b=+Vk(this,wk,void 0);a|=b?b-1<<zk.Xg&zk.Mc|zk.jl:0;this.A[20]=a;this.A[16]=Xk(this,0)<<4|Xk(this,1);Yk(this)}};
function Wk(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.O("CMOS date invalid ("+b+"), using "+c)):b&&a.O("CMOS date: "+c);a.A[0]=c.getSeconds();a.A[1]=0;a.A[2]=c.getMinutes();a.A[3]=0;a.A[4]=c.getHours();a.A[5]=0;a.A[6]=c.getDay()+1;a.A[7]=c.getDate();a.A[8]=c.getMonth()+1;b=c.getFullYear();a.A[9]=b%100;b/=100;a.A[50]=b%10|b/10<<4;a.A[10]=38;a.A[11]=2;a.A[12]=0;a.A[13]=128;a.Ga=a.ua=0;a.Jb=a.fb=null}
function Pk(a,b){var c=a.A[b];if(10>b){var d=!1;4!=b&&5!=b||a.A[11]&2||(12>c?c=c?c:12:c=(c-=12)?c+128:140,d=!0);a.A[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==b&&(a.A[b]^=128);return c}function Zk(a){var b;void 0===b&&(b=a.fb);a.ua=$c(a.F,a.ka)+b;a.A[11]&64&&bd(a.F,b)}function Yk(a){for(var b=0,c=16;46>c;c++)b+=a.A[c];a.A[47]=b&255;a.A[46]=b>>8}
l.save=function(){var a=new nf(this);a.set(0,[this.C]);for(var b=[],c=0;c<this.L;c++){for(var d=this.L[c],e=d,f=[],g=0;g<e.Ec.length;g++){var h=e.Ec[g];f[g]=[h.Ge,h.pg,h.Gc,h.Eb,h.Ab,h.mode,h.rg,h.oo,h.po]}b[c]=[d.Yb,d.eh,d.dj,d.Kb,f,d.ej]}a.set(1,[b]);b=[];for(c=0;c<this.vc.length;c++)d=this.vc[c],b[c]=[d.nf,d.Zc,d.Xd,d.Ad,d.lc,d.Pc,d.ye,d.Ef];a.set(2,[b]);b=[];for(c=0;c<this.V.length;c++)d=this.V[c],b[c]=[d.Gc,d.ad,d.Ab,d.Be,d.gh,d.mode,d.jg,d.Ed,d.nd,d.td,d.af,d.De,d.vd,d.Yb,d.ef];a.set(3,[this.Oa,
b,this.Pa]);a.set(4,[this.Ya,this.W,this.qb,this.Ca,this.ya]);this.ja>=hg&&(a.set(5,[this.N,this.ea,this.aa,this.Ja,this.fa,this.Ka]),a.set(6,[this.ra[7],this.ra,this.pa,this.A,this.Ga,this.ua]));return a.data()};
l.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.C=b[0]:(this.C[0][0]=b[0],this.C[1][0]=b[1]&15,this.C[0][1]=b[2],this.C[1][1]=b[3]&15);Qk(this);b=a[1];for(c=0;c<this.cb;c++)Rk(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.Da;c++)Sk(this,c,c?160:32,b[0][c]);b=a[3];this.Oa=b[0];this.Pa=b[2];for(c=0;c<this.V.length;c++)Tk(this,c,b[1][c]);b=a[4];this.Ya=b[0];this.W=b[1];this.qb=b[2];this.Ca=b[3];this.ya=b[4];if(b=a[5])this.N=b[0],this.ea=b[1],this.aa=b[2],this.Ja=b[3],this.fa=b[4],
this.Ka=b[5];if(b=a[6])this.ra=b[1],this.ra[7]=b[0],this.pa=b[2],this.A=b[3],this.Ga=b[4],this.ua=b[5],Wk(this);return!0};l.start=function(){$k(this)};l.stop=function(){$k(this)};var al=[0,null,null,0,Array(4),0];function Rk(a,b,c){var d=a.L[b];d||(d={Ec:Array(4)});c=c&&5<=c.length?c:al;d.Yb=c[0];d.eh=c[1];d.dj=c[2];d.Kb=c[3];d.an=b<<2;for(var e=0;e<d.Ec.length;e++)bl(d,e,c[4][e]);d.ej=c[5]||0;a.L[b]=d}var cl=[!0,[0,0],[0,0],[0,0],[0,0]];
function bl(a,b,c){var d=a.Ec[b];d||(d={pg:[0,0],Gc:[0,0],Eb:[0,0],Ab:[0,0]});c=c&&8==c.length?c:cl;d.Ge=c[0];d.pg[0]=c[1][0];d.pg[1]=c[1][1];d.Gc[0]=c[2][0];d.Gc[1]=c[2][1];d.Eb[0]=c[3][0];d.Eb[1]=c[3][1];d.Ab[0]=c[4][0];d.Ab[1]=c[4][1];d.mode=c[5];d.rg=c[6];d.controller=a;d.yj=b;dl(d,c[8],c[9]);a.Ec[b]=d}function dl(a,b,c,d){"string"==typeof b&&(b=lb(b));b&&(a.done=null,a.oo=b.id,a.po=c,a.wg=b,a.mh=b[c],a.Lg=d)}var el=[0,Array(4)];
function Sk(a,b,c,d){var e=a.vc[b];e||(e={Zc:[null,null,null,null]});d=d&&8==d.length?d:el;e.port=c;e.mp=b<<3;e.nf=d[0];e.Zc[0]=d[1][0];e.Zc[1]=d[1][1];e.Zc[2]=d[1][2];e.Zc[3]=d[1][3];e.Xd=d[2];e.Ad=d[3];e.lc=d[4];e.Pc=d[5];e.ye=d[6];e.Ef=d[7];a.vc[b]=e}var fl=[[0,0],[0,0],[0,0],[0,0]];
function Tk(a,b,c){var d=a.V[b];d||(d={Gc:[0,0],ad:[0,0],Ab:[0,0],Be:[0,0]});c=c&&13<=c.length?c:fl;d.Gc[0]=c[0][0];d.Gc[1]=c[0][1];d.ad[0]=c[1][0];d.ad[1]=c[1][1];d.Ab[0]=c[2][0];d.Ab[1]=c[2][1];d.Be[0]=c[3][0];d.Be[1]=c[3][1];d.gh=c[4];d.mode=c[5];d.jg=c[6];d.Ed=c[7];d.nd=c[8];d.td=c[9];d.af=c[10];d.De=c[11];d.vd=c[12];d.Yb=c[13]||0;d.ef=c[14]||!1;a.V[b]=d}
function Ck(a,b,c){for(var d="",e=a.qa[c],f=1;8>=f;f++){var g="pcjs-bitCell";f||(g+=" pcjs-bitCellLeft");d+='<div id="'+(c+"-"+f)+'" class="'+g+'" data-value="0">'+f+"</div>\n"}e.innerHTML=d;gl(a,b,c,!0)}function hl(a,b,c){if(b=(a=Bk[a.ja|0])&&a[b])for(var d in b)if(a=b[d],a.Mc&1<<c)return a;return null}
function Vk(a,b,c){for(var d=null,e=Bk[a.ja]||Bk[a.ja|0]||Bk[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b])){a=a.C[f][c?0:1]&g.Mc;for(var h in g.hd)if(g.hd[h]==a&&(d=h,"number"==typeof+d))break;break}}return d}function Xk(a,b){if(b<+Vk(a,wk,void 0)){if(!a.ia)return 1;if(b<a.ia.length)switch(a.ia[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Uk(a,b){return+Vk(a,5,b)+ +Vk(a,6,b)}
function tk(a,b){if(a){b=0;for(var c=1,d=0;d<a.length;d++)"0"==a.charAt(d)&&(b|=c),c<<=1}return b}function vk(a,b,c,d){for(var e=Bk[a.ja]||Bk[a.ja|0]||Bk[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b]))for(var h in g.hd)if(h==c){a.C[f][d?0:1]&=~g.Mc;a.C[f][d?0:1]|=g.hd[h];return}}}function il(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Qk(a){gl(a,0,uk);gl(a,1,yk);jl(a)}
function gl(a,b,c,d){if(c=a.qa[c]){d=d?a.C[b][0]:a.C[b][1]=a.C[b][0];c=qb(c,"pcjs-bitCell");for(var e=0;e<c.length;e++){var f=hl(a,b,e);c[e].setAttribute("title",f&&f.Pd||"Reserved");il(c[e],d&1<<e?!1:!0);c[e].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");il(b,c);var d=b.getAttribute("id").split("-"),e=1<<+d[1]-1;switch(d[0]){case uk:a.C[0][0]=a.C[0][0]&~e|(c?0:e);break;case yk:a.C[1][0]=a.C[1][0]&~e|(c?0:e)}jl(a)}}(a,c[e])}}}
function jl(a){var b=a.qa.swdesc;if(null!=b){var c;c=""+(Uk(a,!0)+"Kb");c+=", "+(+ +Vk(a,3,!0)?"":"No ")+"FPU";c+=", "+{0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"}[+Vk(a,xk,!0)]+" Monitor";c+=", "+ +Vk(a,wk,!0)+" Floppy Drives";if(null!=a.C[0][1]&&a.C[0][1]!=a.C[0][0]||null!=a.C[1][1]&&a.C[1][1]!=a.C[1][0])c+=" (Reset required)";b.textContent=c}}
function kl(a,b,c,d,e){var f=a.L[b],g=f.Ec[c],h=g.Eb[f.Kb];z(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.Kb+"]",h,!0);f.Kb^=1;b||c||f.Kb||(g.Eb[0]++,255<g.Eb[0]&&(g.Eb[0]=0,g.Eb[1]++,255<g.Eb[1]&&(g.Eb[1]=0)));return h}function ll(a,b,c,d,e,f){var g=a.L[b];z(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.Kb+"]",null,!0);a=g.Ec[c];a.Eb[g.Kb]=a.pg[g.Kb]=e;g.Kb^=1}
function ml(a,b,c,d,e){var f=a.L[b],g=f.Ec[c],h=g.Ab[f.Kb];z(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.Kb+"]",h,!0);f.Kb^=1;b||c||f.Kb||(g.Ab[0]--,0>g.Ab[0]&&(g.Ab[0]=255,g.Ab[1]--,0>g.Ab[1]&&(g.Ab[1]=255)));return h}function nl(a,b,c,d,e,f){var g=a.L[b];z(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.Kb+"]",null,!0);a=g.Ec[c];a.Ab[g.Kb]=a.Gc[g.Kb]=e;g.Kb^=1}function ol(a,b,c,d){var e=a.L[b],f=e.Yb|1;e.Yb&=-16;z(a,768)&&x(a,c,null,d,"DMA"+b+".STATUS",f,!0);return f}
function pl(a,b,c,d,e){var f=a.L[b];z(a,768)&&x(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.Yb=f.Yb&~(16<<a)|(d&4)<<a+2;f.dj=d}function ql(a,b,c,d,e){var f=a.L[b];z(a,768)&&x(a,c,d,e,"DMA"+b+".MASK",null,!0);b=d&3;c=f.Ec[b];c.Ge=!!(d&4);c.Ge||rl(a,f.an+b)}function sl(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA"+b+".MODE",null,!0);a.L[b].Ec[d&3].mode=d}function tl(a,b,c,d){var e=a.L[b].ej;z(a,768)&&x(a,c,null,d,"DMA"+b+".TEMP",e,!0);return e}
function ul(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA"+b+".MASTER_CLEAR",null,!0);a=a.L[b];for(b=0;b<a.Ec.length;b++)bl(a,b)}function vl(a,b,c,d,e){var f=a.L[b].Ec[c].rg;z(a,768)&&x(a,d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",f,!0);return f}function wl(a,b,c,d,e,f){z(a,768)&&x(a,d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",null,!0);a.L[b].Ec[c].rg=e}function xl(a,b,c,d){var e=a.ra[b];z(a,768)&&x(a,c,null,d,"DMA.SPARE"+b+".PAGE",e,!0);return e}
function yl(a,b,c,d,e){z(a,768)&&x(a,c,d,e,"DMA.SPARE"+b+".PAGE",null,!0);a.ra[b]=d}function zl(a,b,c,d,e){dl(a.L[b>>2].Ec[b&3],c,d,e)}function rl(a,b,c){b=a.L[b>>2].Ec[b&3];b.wg&&b.mh&&b.Lg?(c&&(b.done=c),b.Ge||Al(a,b,!0)):c&&c(!0)}
function Al(a,b,c){c&&(b.count=b.Ab[1]<<8|b.Ab[0],b.type=b.mode&12,b.uj=b.xg=!1);for(var d=!1;0<=b.count&&(c=b.rg<<16|b.Eb[1]<<8|b.Eb[0],4==b.type?(d=!0,function(c){b.mh.call(b.wg,b.Lg,-1,function(e,g){0>e&&(b.uj||(b.uj=!0),e=255);b.Ge||a.ga.qc(c,e);(d=g)&&setTimeout(function(){Bl(b)||Al(a,b)},0)})}(c)):8==b.type?(c=a.ga.Qa(c),0>b.mh.call(b.wg,b.Lg,c)&&(b.xg=!0)):0!=b.type&&(b.xg=!0)),!d&&!Bl(b););}
function Bl(a){if(!a.xg&&0<=--a.count&&(a.mode&32?(a.Eb[0]--,0>a.Eb[0]&&(a.Eb[0]=255,a.Eb[1]--,0>a.Eb[1]&&(a.Eb[1]=255))):(a.Eb[0]++,255<a.Eb[0]&&(a.Eb[0]=0,a.Eb[1]++,255<a.Eb[1]&&(a.Eb[1]=0))),!a.Ge))return!1;var b=a.controller;b.Yb=b.Yb&~(16<<a.yj)|1<<a.yj;a.mode&16||(a.Ge=!0,a.wg=a.Lg=null);a.done&&(a.done(!a.xg),a.done=null);return!0}function Cl(a,b,c){var d=0,e=a.vc[b];if(null!=e.Ef)switch(e.Ef&3){case 2:d=e.lc;break;case 3:d=e.Pc}z(a,34048)&&x(a,e.port,null,c,"PIC"+b,d,!0);return d}
function Dl(a,b,c,d){var e=a.vc[b];z(a,34048)&&x(a,e.port,c,d,"PIC"+b,null,!0);if(c&16)e.Xd=0,e.Zc[e.Xd++]=c,e.Ad=0,e.ye=7,e.lc=e.Pc=0,e.Ef=10;else if(c&8)c&100&&z(a,1073741824)&&y(a,"PIC"+b+"("+u(e.port)+"): unsupported OCW3 command "+u(c),!0,!0),e.Ef=c;else if(d=c&224,d&32){var f,g=0;if(96==(d&96))g=1<<(c&7);else for(f=e.ye+1;;){f&=7;var h=1<<f;if(e.Pc&h){g=h;break}if(f++==e.ye)break}e.Pc&g&&(e.Pc&=~g,El(a));d&128&&z(a,1073741824)&&y(a,"PIC"+b+"("+u(e.port)+"): unsupported OCW2 rotate command "+
u(c),!0,!0)}else 192==d?e.ye=c&7:z(a,1073741824)&&y(a,"PIC"+b+"("+u(e.port)+"): unsupported OCW2 automatic EOI command "+u(c),!0,!0)}function Fl(a,b,c){var d=a.vc[b],e=d.Ad;z(a,34048)&&x(a,d.port+1,null,c,"PIC"+b,e,!0);return e}function Gl(a,b,c,d){var e=a.vc[b];z(a,34048)&&x(a,e.port+1,c,d,"PIC"+b,null,!0);e.Xd<e.Zc.length?(e.Zc[e.Xd++]=c,2==e.Xd&&e.Zc[0]&2&&e.Xd++,3!=e.Xd||e.Zc[0]&1||e.Xd++):(e.Ad=c,d=a.F,d.S|=4,El(a,b||253!=c?0:6))}
function jg(a,b,c){var d=a.vc[b>>3];b=1<<(b&7);d.lc&b||(d.lc|=b,d.nf=c||0,El(a))}function ig(a,b){var c=a.vc[b>>3];b=1<<(b&7);c.lc&b&&(c.lc&=~b,El(a))}function El(a,b){var c,d=-1;1<a.Da&&(c=a.vc[1],d=~(c.Pc|c.Ad)&c.lc);c=a.vc[0];0<=d&&(c.lc=d?c.lc|4:c.lc&-5);d=~(c.Pc|c.Ad)&c.lc;a=a.F;a.N&&(a.ua=d?a.ua|1:a.ua&-2);d&&b&&(c.nf=b)}
function Zf(a,b){void 0===b&&(b=0);var c=-1,d=a.vc[b];if(d.nf)c=-2,d.nf--;else for(var e=d.lc&((d.Pc|d.Ad)^255),f=d.ye+1;;){var f=f&7,g=1<<f;if(d.Pc&g)break;if(e&g){b||2!=f?c=d.Zc[1]+f:c=Zf(a,1);0<=c&&(d.Pc|=g,d.lc&=~g);break}if(f++==d.ye)break}return c}function Hl(a,b,c,d,e){var f;f=b?3:0;var g=a.V[f+c];g.ef?(f=g.Yb,g.ef=!1):(g.Ed==g.nd&&Il(a,f+c),g.af?(f=g.Be[g.Ed++],g.Ed==g.nd&&(g.af=!1)):(Ok(a,f+c),f=g.Ab[g.Ed++]));z(a,2304)&&x(a,d,null,e,"PIT"+b+".TIMER"+c,f,!0);return f}
function Jl(a,b,c,d,e,f){z(a,2304)&&x(a,d,e,f,"PIT"+b+".TIMER"+c,null,!0);f=b?3:0;d=a.V[f+c];d.Ed==d.nd&&Il(a,f+c);d.Gc[d.Ed++]=e;d.Ed==d.nd&&(d.De&&0!=d.mode&&8!=d.mode||(d.af=!1,d.Ab[0]=d.ad[0]=d.Gc[0],d.Ab[1]=d.ad[1]=d.Gc[1],d.vd=$c(a.F,a.ka),d.De=!0,d.td=0!=d.mode,b||c||(ig(a,0),e=Kl(a,0)*a.gb|0,6==d.mode&&(e>>=1),bd(a.F,e))),b||2!=c||$k(a))}function Ll(a,b,c,d){x(a,c,null,d,"PIT"+b+".CTRL",null,2048);return b?a.Pa:a.Oa}
function Ml(a,b,c,d,e){x(a,c,d,e,"PIT"+b+".CTRL",null,2048);e=0;c=d&192;b?(e=3,a.Pa=d):a.Oa=d;if(192==c){if(!(d&16))for(c=0;2>=c;c++)if(d&2<<c){b=e+c;var f=a.V[b];f.ef||(Ok(a,b),f.Yb=f.gh|f.mode|f.jg|(f.Ed<f.nd?64:0)|(f.td?128:0),f.ef=!0)}if(!(d&32))for(c=0;2>=c;c++)d&2<<c&&Nl(a,e+c)}else{c>>=6;var f=d&1,g=d&14;if(d&=48){e+=c;var h=a.V[e];h.jg=d;h.mode=g;h.gh=f;h.Gc=[0,0];h.Ab=[0,0];h.Be=[0,0];h.td=!1;h.af=!1;h.De=!1;h.ef=!1;Il(a,e);b||c||ig(a,0);b||2!=c||255!=a.vc[0].Ad||77!=a.W||(b=a.V[0],b.ad[0]=
b.Gc[0],b.ad[1]=b.Gc[1],b.vd=$c(a.F,a.ka))}else Nl(a,e+c)}}function Kl(a,b){a=a.V[b];(b=a.Gc[1]<<8|a.Gc[0])||(b=1==a.nd?256:65536);return b}function fd(a,b){a=a.V[b];(b=a.ad[1]<<8|a.ad[0])||(b=1==a.nd?256:65536);return b}function Nl(a,b){Ok(a,b);var c=a.V[b];c.Be[0]=c.Ab[0];c.Be[1]=c.Ab[1];c.af=!0;Il(a,b)}function Il(a,b){a=a.V[b];a.Ed=32==a.jg?1:0;a.nd=48==a.jg?2:1}
function Ok(a,b,c){var d=a.V[b];if(d.De&&(2!=b||a.W&1)){var e=$c(a.F,a.ka),f=(e-d.vd)/a.gb|0;0>f&&(d.vd=e,f=0);var g=Kl(a,b),h=fd(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.td=!0,d.De=!1,b||jg(a,0))):4==d.mode?(d.td=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.ad[0]=h&255,d.ad[1]=h>>8&255,d.vd=e,!b&&d.td&&jg(a,0))):6==d.mode&&(h-=f,0>=h&&(d.td=!d.td,h=g+h,0>=h&&(h=g),d.ad[0]=h&255,d.ad[1]=h>>8&255,d.vd=e,!b&&d.td&&jg(a,0)));d.Ab[0]=h&255;d.Ab[1]=h>>8&255;c&&(a.vd=0)}return d}
function ed(a,b){for(var c=0;c<a.V.length;c++)Ok(a,c,b);if(a.ja>=hg){b=a.F.Y.Id;c=$c(a.F,a.ka);null==a.fb&&(a.Ga=$c(a.F,a.ka),a.Jb=1024,a.fb=Math.floor(a.F.Y.Id/a.Jb),Zk(a));c>=a.ua&&(a.A[12]|=64,a.A[11]&64&&(a.A[12]|=128,jg(a,8)),a.ua=c+a.fb);a.A[0]==a.A[1]&&a.A[2]==a.A[3]&&a.A[4]==a.A[5]&&(a.A[12]|=32,a.A[11]&32&&(a.A[12]|=128,jg(a,8)));var d=c-a.Ga,e=Math.floor(d/b);if(e&&!(a.A[11]&128)){for(;e--;)if(60<=++a.A[0]&&(a.A[0]=0,60<=++a.A[2]&&(a.A[2]=0,24<=++a.A[4]))){a.A[4]=0;a.A[6]=a.A[6]%7+1;var f;
f=a.A[9];var g=va[a.A[8]-1];28==g&&(f%4||!(f%100)&&f%400||g++);f=g;++a.A[7]>f&&(a.A[7]=1,12<++a.A[8]&&(a.A[8]=1,a.A[9]=(a.A[9]+1)%100))}a.A[12]|=16;a.A[11]&16&&(a.A[12]|=128,jg(a,8))}a.Ga=c-d%b}}l=X.prototype;l.Am=function(a,b){var c=this.Ya;this.Ca&16&&(this.W&128?c=this.C[0][1]:this.B&&(c=Ol(this.B)));x(this,a,null,b,"PPI_A",c);return c};l.$n=function(a,b,c){x(this,a,b,c,"PPI_A");this.Ya=b};l.Bm=function(a,b){var c=this.W;x(this,a,null,b,"PPI_B",c);return c};
l.ao=function(a,b,c){x(this,a,b,c,"PPI_B");Pl(this,b)};function Pl(a,b){var c=!!(b&2),d=!!(a.W&2);a.W=b;a.B&&Ql(a.B,!(b&128),!!(b&64));c!=d&&$k(a,c)}l.Cm=function(a,b){var c=0,c=5150==(this.ja|0)?this.W&4?c|this.C[1][1]&15:c|this.C[1][1]>>4&1:this.W&8?c|this.C[0][1]>>4:c|this.C[0][1]&15;this.W&1&&Ok(this,2).td&&(c=this.W&2?c|32:c|16);x(this,a,null,b,"PPI_C",c,32896);return c};l.bo=function(a,b,c){x(this,a,b,c,"PPI_C");this.qb=b};l.Dm=function(a,b){var c=this.Ca;x(this,a,null,b,"PPI_CTRL",c);return c};
l.co=function(a,b,c){x(this,a,b,c,"PPI_CTRL");this.Ca=b};l.Ml=function(a,b){var c=this.B?Ol(this.B):0;x(this,a,null,b,"8041_KBD",c);this.va&=-2;return c};l.kn=function(a,b,c){x(this,a,b,c,"8041_KBD")};l.Ll=function(a,b){var c=this.W;x(this,a,null,b,"8041_CTRL",c);return c};l.jn=function(a,b,c){x(this,a,b,c,"8041_CTRL");Pl(this,b)};l.Nl=function(a,b){var c=this.va;x(this,a,null,b,"8041_STATUS",c);return c};
l.Ol=function(a,b){var c=this.Ja;x(this,a,null,b,"8042_OUTBUFF",c,16384);this.N&=-258;this.B&&Rl(this.B);return c};
l.nn=function(a,b,c){x(this,a,b,c,"8042_INBUF.DATA",null,16384);if(this.N&8)switch(this.ea){case 96:Sl(this,b);break;case 209:Tl(this,b);break;default:if(Sl(this,this.aa&-17),this.B){a=this.B;c=b;var d=-1;z(a)&&y(a,"sendCmd("+u(c)+")");switch(a.V||c){case 255:d=250;Ul(a);break;case 243:a.V&&(c=0);Vl(a,250);a.V=c;break;case 237:a.V&&(c=0);Vl(a,250);a.V=c;break;default:y(a,"sendCmd(): unrecognized command")}Wl(this,d)}}this.ea=b;this.N&=-9};
l.Pl=function(a,b){var c=this.W&-209|($c(this.F)&64?16:0);x(this,a,null,b,"8042_RWREG",c,16384);return c};l.on=function(a,b,c){x(this,a,b,c,"8042_RWREG",null,16384);Pl(this,b)};l.Ql=function(a,b){x(this,a,null,b,"8042_STATUS",this.N,16384);a=this.N&255;this.N&256&&(this.N|=1,this.N&=-257);return a};
l.mn=function(a,b,c){x(this,a,b,c,"8042_INBUFF.CMD",null,16384);this.ea=b;this.N|=8;a=0;240<=this.ea&&(a=this.ea^15,this.ea=240);switch(this.ea){case 32:Wl(this,this.aa);break;case 173:Sl(this,this.aa|16);break;case 174:Sl(this,this.aa&-17);this.B&&Rl(this.B);break;case 170:this.B&&(a=this.B,a.A=[],z(a)&&y(a,"scan codes flushed"));Sl(this,this.aa|16);Wl(this,85);Tl(this,3);break;case 171:Wl(this,0);break;case 192:Wl(this,this.fa);break;case 208:Wl(this,this.Ka);break;case 224:Wl(this,this.aa&16?0:
1);break;case 240:a&1&&se(this.F)}};function Sl(a,b){a.aa=b;a.N=a.N&-5|b&4;a.B&&Ql(a.B,!!(b&8),!(b&16))}function Wl(a,b,c){0<=b&&(a.Ja=b,c?a.N|=1:(a.N&=-2,a.N|=256))}function Tl(a,b){a.Ka=b;Qb(a.ga,!!(b&2));b&1||se(a.F)}function Xl(a,b){a.ja<hg?(jg(a,1,4),a.va|=1):a.aa&16||a.N&257||(Wl(a,b,!0),Yl(a.B),jg(a,1,120))}function Zl(a,b,c,d){var e=a.C[b][1];x(a,c,null,d,"DIPSW-"+b,e,32768);return e}l.dm=function(a,b){x(this,a,null,b,"CMOS.ADDR",this.pa,4096);return this.pa};
l.Cn=function(a,b,c){x(this,a,b,c,"CMOS.ADDR",null,4096);this.pa=b;this.ya=b&128?0:128};l.em=function(a,b){var c=this.pa&63,d=13>=c?Pk(this,c):this.A[c];z(this,4352)&&x(this,a,null,b,"CMOS.DATA["+u(c)+"]",d,!0);null!=b&&12==c&&(this.A[c]&=15,d&128&&ig(this,8),d&64&&this.A[11]&64&&Zk(this));return d};
l.Dn=function(a,b,c){var d=this.pa&63;z(this,4352)&&x(this,a,b,c,"CMOS.DATA["+u(d)+"]",null,!0);a=b^this.A[d];if(13>=d){if(c=b,10>d){var e=!1;this.A[11]&4||(c=10*(c>>4)+(c&15),e=!0);if(4==d||5==d)e&&23<c&&(c+=48),this.A[11]&2||(12>=c?c=12==c?0:c:(c-=116,c=24==c?12:c))}}else c=b;this.A[d]=c;11==d&&a&64&&b&64&&Zk(this)};l.Nk=function(a,b,c){x(this,a,b,c,"NMI");this.ya=b};l.Nn=function(a,b,c){x(this,a,b,c,"FPU.CLEAR")};l.On=function(a,b,c){x(this,a,b,c,"FPU.RESET");this.Tb&&cg(this.Tb)};
l.Rm=function(a){if(z(this,16)&&mk(this.ha,26,a)){var b=this.F.G>>8;jf(this.F,a,function(a,d){return function(c){d=$c(a.F)-d;var e,g=a.F.M&255,h=a.F.M>>8,k=a.F.M&255,m=a.F.M>>8;if(2==b||3==b)e=" CH(hour)="+v(h)+" CL(min)="+u(g)+" DH(sec)="+u(m);else if(4==b||5==b)e=" CX(year)="+v(a.F.I)+" DH(month)="+u(m)+" DL(day)="+u(k);g=a.ha;h=d;g.message("INT "+u(26)+": C="+(uf(g.F)?1:0)+(e||"")+" (cycles="+h+(c?",level="+(c+1):"")+")")}}(this,$c(this.F)))}return!0};
function $k(a,b){if(a.Ea)try{void 0!==b?a.Db=b:b=a.Db&&a.F&&a.F.la.Ib;var c=Math.round(1193181/Kl(a,2));if(20>c||2E4<c)b=!1;b?a.U?(a.U.frequency.value=c,z(a,33554432)&&y(a,"speaker set to "+c+"hz",!0)):(a.U=a.Ea.createOscillator(),a.U&&(a.U.type="number"==typeof a.U.type?1:"square",a.U.connect(a.Ea.destination),a.U.frequency.value=c,"start"in a.U?a.U.start(0):a.U.noteOn(0),z(a,33554432)&&y(a,"speaker on at "+c+"hz",!0))):a.U&&("stop"in a.U?a.U.stop(0):a.U.noteOff(0),a.U.disconnect(),delete a.U,z(a,
33554432)&&y(a,"speaker off at "+c+"hz",!0))}catch(d){a.Na("AudioContext exception: "+d.message),a.Ea=null}else b&&y(a,"BEEP",33554432)}
var Dk={0:function(a,b){return kl(this,0,0,a,b)},1:function(a,b){return ml(this,0,0,a,b)},2:function(a,b){return kl(this,0,1,a,b)},3:function(a,b){return ml(this,0,1,a,b)},4:function(a,b){return kl(this,0,2,a,b)},5:function(a,b){return ml(this,0,2,a,b)},6:function(a,b){return kl(this,0,3,a,b)},7:function(a,b){return ml(this,0,3,a,b)},8:function(a,b){return ol(this,0,a,b)},13:function(a,b){return tl(this,0,a,b)},32:function(a,b){return Cl(this,0,b)},33:function(a,b){return Fl(this,0,b)},64:function(a,
b){return Hl(this,0,0,a,b)},65:function(a,b){return Hl(this,0,1,a,b)},66:function(a,b){return Hl(this,0,2,a,b)},67:function(a,b){return Ll(this,0,a,b)},129:function(a,b){return vl(this,0,2,a,b)},130:function(a,b){return vl(this,0,3,a,b)},131:function(a,b){return vl(this,0,1,a,b)},135:function(a,b){return vl(this,0,0,a,b)}},Fk={96:X.prototype.Am,97:X.prototype.Bm,98:X.prototype.Cm,99:X.prototype.Dm},Jk={96:X.prototype.Ol,97:X.prototype.Pl,100:X.prototype.Ql,112:X.prototype.dm,113:X.prototype.em,128:function(a,
b){return xl(this,7,a,b)},132:function(a,b){return xl(this,0,a,b)},133:function(a,b){return xl(this,1,a,b)},134:function(a,b){return xl(this,2,a,b)},136:function(a,b){return xl(this,3,a,b)},137:function(a,b){return vl(this,1,2,a,b)},138:function(a,b){return vl(this,1,3,a,b)},139:function(a,b){return vl(this,1,1,a,b)},140:function(a,b){return xl(this,4,a,b)},141:function(a,b){return xl(this,5,a,b)},142:function(a,b){return xl(this,6,a,b)},143:function(a,b){return vl(this,1,0,a,b)},160:function(a,b){return Cl(this,
1,b)},161:function(a,b){return Fl(this,1,b)},192:function(a,b){return kl(this,1,0,a,b)},194:function(a,b){return ml(this,1,0,a,b)},196:function(a,b){return kl(this,1,1,a,b)},198:function(a,b){return ml(this,1,1,a,b)},200:function(a,b){return kl(this,1,2,a,b)},202:function(a,b){return ml(this,1,2,a,b)},204:function(a,b){return kl(this,1,3,a,b)},206:function(a,b){return ml(this,1,3,a,b)},208:function(a,b){return ol(this,1,a,b)},218:function(a,b){return tl(this,1,a,b)}},Hk={96:X.prototype.Ml,97:X.prototype.Ll,
100:X.prototype.Nl,102:function(a,b){return Zl(this,0,a,b)},103:function(a,b){return Zl(this,1,a,b)}},Lk={72:function(a,b){return Hl(this,1,0,a,b)},73:function(a,b){return Hl(this,1,1,a,b)},74:function(a,b){return Hl(this,1,2,a,b)},75:function(a,b){return Ll(this,1,a,b)}},Ek={0:function(a,b,c){ll(this,0,0,a,b,c)},1:function(a,b,c){nl(this,0,0,a,b,c)},2:function(a,b,c){ll(this,0,1,a,b,c)},3:function(a,b,c){nl(this,0,1,a,b,c)},4:function(a,b,c){ll(this,0,2,a,b,c)},5:function(a,b,c){nl(this,0,2,a,b,
c)},6:function(a,b,c){ll(this,0,3,a,b,c)},7:function(a,b,c){nl(this,0,3,a,b,c)},8:function(a,b,c){z(this,768)&&x(this,a,b,c,"DMA0.CMD",null,!0);this.L[0].eh=b},9:function(a,b,c){pl(this,0,a,b,c)},10:function(a,b,c){ql(this,0,a,b,c)},11:function(a,b,c){sl(this,0,a,b,c)},12:function(a,b,c){z(this,768)&&x(this,a,b,c,"DMA0.RESET_FF",null,!0);this.L[0].Kb=0},13:function(a,b,c){ul(this,0,a,b,c)},32:function(a,b,c){Dl(this,0,b,c)},33:function(a,b,c){Gl(this,0,b,c)},64:function(a,b,c){Jl(this,0,0,a,b,c)},
65:function(a,b,c){Jl(this,0,1,a,b,c)},66:function(a,b,c){Jl(this,0,2,a,b,c)},67:function(a,b,c){Ml(this,0,a,b,c)},129:function(a,b,c){wl(this,0,2,a,b,c)},130:function(a,b,c){wl(this,0,3,a,b,c)},131:function(a,b,c){wl(this,0,1,a,b,c)},135:function(a,b,c){wl(this,0,0,a,b,c)}},Gk={96:X.prototype.$n,97:X.prototype.ao,98:X.prototype.bo,99:X.prototype.co,160:X.prototype.Nk},Kk={96:X.prototype.nn,97:X.prototype.on,100:X.prototype.mn,112:X.prototype.Cn,113:X.prototype.Dn,128:function(a,b,c){yl(this,7,a,
b,c)},132:function(a,b,c){yl(this,0,a,b,c)},133:function(a,b,c){yl(this,1,a,b,c)},134:function(a,b,c){yl(this,2,a,b,c)},136:function(a,b,c){yl(this,3,a,b,c)},137:function(a,b,c){wl(this,1,2,a,b,c)},138:function(a,b,c){wl(this,1,3,a,b,c)},139:function(a,b,c){wl(this,1,1,a,b,c)},140:function(a,b,c){yl(this,4,a,b,c)},141:function(a,b,c){yl(this,5,a,b,c)},142:function(a,b,c){yl(this,6,a,b,c)},143:function(a,b,c){wl(this,1,0,a,b,c)},160:function(a,b,c){Dl(this,1,b,c)},161:function(a,b,c){Gl(this,1,b,c)},
192:function(a,b,c){ll(this,1,0,a,b,c)},194:function(a,b,c){nl(this,1,0,a,b,c)},196:function(a,b,c){ll(this,1,1,a,b,c)},198:function(a,b,c){nl(this,1,1,a,b,c)},200:function(a,b,c){ll(this,1,2,a,b,c)},202:function(a,b,c){nl(this,1,2,a,b,c)},204:function(a,b,c){ll(this,1,3,a,b,c)},206:function(a,b,c){nl(this,1,3,a,b,c)},208:function(a,b,c){z(this,768)&&x(this,a,b,c,"DMA1.CMD",null,!0);this.L[1].eh=b},210:function(a,b,c){pl(this,1,a,b,c)},212:function(a,b,c){ql(this,1,a,b,c)},214:function(a,b,c){sl(this,
1,a,b,c)},216:function(a,b,c){z(this,768)&&x(this,a,b,c,"DMA1.RESET_FF",null,!0);this.L[1].Kb=0},218:function(a,b,c){ul(this,1,a,b,c)},240:X.prototype.Nn,241:X.prototype.On},Ik={96:X.prototype.kn,97:X.prototype.jn,160:X.prototype.Nk},Mk={72:function(a,b,c){Jl(this,1,0,a,b,c)},73:function(a,b,c){Jl(this,1,1,a,b,c)},74:function(a,b,c){Jl(this,1,2,a,b,c)},75:function(a,b,c){Ml(this,1,a,b,c)}};
Za(function(){for(var a=qb(document,"pcx86","chipset"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new X(d);pb(d,c);jl(d)}});
function $l(a){db.call(this,"ROM",a,$l);this.A=null;this.X=a.addr;this.C=a.size;this.N=a.alias;this.L=a.file;this.B=a.notify;this.V=null;if(this.B&&(a=this.B.indexOf("["),0<a)){try{this.V=eval(this.B.substr(a))}catch(d){}this.B=this.B.substr(0,a)}if(this.L){a=this.L;var b=ka(ja(a));"json"!=b&&"hex"!=b&&(a=Ba()+"/api/v1/dump?file="+this.L+"&format=bytes&decimal=true");var c=this;Aa(a,null,!0,function(a,b,f){am(c,a,b,f)})}}gb($l);$l.prototype.Jc=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;bm(this)};
$l.prototype.hc=function(){this.Qd&&(this.ha&&cm(this.ha,this.id,0,this.X>>>4,0,this.X,this.C,this.Qd),delete this.Qd);return!0};$l.prototype.gc=function(){return!0};
function am(a,b,c,d){if(d)a.Na("Unable to load system ROM (error "+d+": "+b+")");else{ib(a.ce,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c<g.length;c++)a.A[d++]=g[c]&255,a.A[d++]=g[c]>>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Qd=e.symbols;if(!a.A.length){w("Empty ROM: "+b);return}if(1==a.A.length){w(a.A[0]);return}}catch(h){a.Na("ROM data error: "+h.message);return}else for(b=c.replace(/\n/gm,
" ").replace(/ +$/,"").split(" "),a.A=Array(b.length),e=0;e<b.length;e++)a.A[e]=ea(b[e],16);bm(a)}}
function bm(a){if(!vb(a))if(!a.L)ub(a);else if(a.A&&a.ga){a.C||(a.C=a.A.length);if(a.A.length!=a.C)wb(a,"ROM size ("+r(a.A.length,8,!0)+") does not match specified size ("+r(a.C,8,!0)+")");else{var b;b=a.X;if(Rb(a.ga,b,a.C,ec)){for(var c=0;c<a.A.length;c++){var d=a.ga,e=b+c;d.sa[(e&d.Gb)>>>d.La].xf(e&d.A,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.N?b.push(a.N):null!=a.N&&a.N.length&&(b=a.N);for(c=0;c<b.length;c++){var d=a,e=b[c],f=bc(d.ga,d.X,d.C);ac(d.ga,e,d.C,f)}a.B&&((b=lb(a.B,
a.id))?(c=a.A,d=a.V,5==b.Ua?dm(b,c,d||[12640,8752],8):b.Ua==em&&dm(b,c,d||[14221,16269],8),ub(b)):a.Na("Unable to find component: "+a.B));delete a.A}}ub(a)}}Za(function(){for(var a=qb(document,"pcx86","rom"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new $l(d);pb(d,c)}});function fm(a){db.call(this,"RAM",a,fm);this.B=a.addr;this.A=a.size;this.L=a.test;this.X=!!this.A;this.C=!1}gb(fm);l=fm.prototype;l.Jc=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.N=Gb(a,"ChipSet");ub(this)};
l.hc=function(a,b){return!b&&(this.reset(),a&&this.controller&&!this.restore(a))?!1:!0};l.gc=function(a){return a&&this.controller?this.save():!0};
l.reset=function(){if(!this.B&&!this.X&&this.N){var a=1024*Uk(this.N);this.A&&a!=this.A&&(dc(this.ga,this.B,this.A),this.C=!1);this.A=a}!this.C&&this.A&&Rb(this.ga,this.B,this.A,1)&&(this.C=!0,"ramCPQ"==this.xd&&(this.controller=new gm(this),Rb(this.ga,hm,4,4,this.controller)));if(this.C){if(this.L||kc(this.ga,1138,4660),"ramCPQ"!=this.xd&&this.N&&(a=this.N,a.A)){var b=1048576>this.B?21:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+1]=c>>8;Yk(a)}}else w("No RAM allocated")};
l.save=function(){var a=new nf(this);this.controller&&a.set(0,this.controller.save());return a.data()};l.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function gm(a){this.N=a;this.C=im;this.ha=jm;this.B=km;this.A=null}var hm=-2134900736,im=65535,jm=2575,km=2,lm=[null,0],mm=[function(a){return this.controller.Qa(a)},null,null,function(a,b){this.controller.qc(a,b)},null,null];l=gm.prototype;l.save=function(){return[this.C,this.B]};
l.restore=function(a){this.qc(0,a[0]&255);this.qc(2,a[1]&255);return!0};l.Qa=function(a){var b=255;2>a?b=a&1?this.ha>>8:this.ha&255:4>a&&(b=a&1?this.B>>8:this.B&255);return b};l.qc=function(a,b){if(a)2==a&&(this.B=this.B&-256|b);else if(b!=(this.C&255)){a=this.N.ga;if(b&1)this.A&&(ac(a,917504,131072,this.A),this.A=null);else{this.A||(this.A=bc(a,917504,131072));var c=bc(a,16646144,131072);ac(a,917504,131072,c,b&2?1:ec)}this.C=this.C&-256|b}};l.wj=function(){return lm};l.nh=function(){return mm};
Za(function(){for(var a=qb(document,"pcx86","ram"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new fm(d);pb(d,c)}});function nm(a){db.call(this,"Keyboard",a,nm,65536);om(this,a.model);this.ia=La("Mobi");this.pa=La("MSIE");y(this,"mobile keyboard support: "+(this.ia?"true":"false"));this.fa=0;this.ka=this.kh=!1;this.B=[];this.ua=50;ub(this)}gb(nm);
var pm=["US83","US84","US101"],qm=p.dl+4E3,rm={3016:1,1016:2,1017:8,1018:32,1091:128,1093:64,1224:128,1020:512,1144:1024,1145:2048},sm={TAB:1009,ESC:1027,F1:1112,F2:1113,F3:1114,F4:1115,F5:1116,F6:1117,F7:1118,F8:1119,F9:1120,F10:1121,LEFT:1037,UP:1038,RIGHT:1039,DOWN:1040,SYSREQ:4027,CTRL_C:qm,CTRL_BREAK:4008,CTRL_ALT_DEL:4046,CTRL_ALT_INS:4045,CTRL_ALT_ENTER:4013},tm={esc:1027,1:p["1"],2:p["2"],3:p["3"],4:p["4"],5:p["5"],6:p["6"],7:p["7"],8:p["8"],9:p["9"],0:p["0"],"-":p["-"],"=":p["="],bs:1008,
tab:1009,q:p.Q,w:p.Ui,e:p.E,r:p.Pi,t:p.Ri,y:p.Wi,u:p.Si,i:p.Hi,o:p.Ni,p:p.Oi,"[":p["["],"]":p["]"],enter:13,ctrl:1017,a:p.ue,s:p.Qi,d:p.Di,f:p.Ei,g:p.Fi,h:p.Gi,j:p.Ii,k:p.Ji,l:p.Ki,";":p[";"],quote:p["'"],"`":p["`"],shift:1016,"\\":p["\\"],z:p.og,x:p.Vi,c:p.Ci,v:p.Ti,b:p.Bi,n:p.Mi,m:p.Li,",":p[","],".":p["."],"/":p["/"],"right-shift":3016,prtsc:1044,alt:1018,space:1032,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,"num-lock":1144,"scroll-lock":1145,
"num-home":1036,"num-up":1038,"num-pgup":1033,"num-sub":1109,"num-left":1037,"num-center":1101,"num-right":1039,"num-add":1107,"num-end":1035,"num-down":1040,"num-pgdn":1034,"num-ins":1045,"num-del":1046,sysreq:84},um={"caps-lock":512,"num-lock":1024,"scroll-lock":2048},Y={1027:1};Y[p["1"]]=2;Y[p["!"]]=10754;Y[p["2"]]=3;Y[p["@"]]=10755;Y[p["3"]]=4;Y[p["#"]]=10756;Y[p["4"]]=5;Y[p.$]=10757;Y[p["5"]]=6;Y[p["%"]]=10758;Y[p["6"]]=7;Y[p["^"]]=10759;Y[p["7"]]=8;Y[p["&"]]=10760;Y[p["8"]]=9;Y[p["*"]]=10761;
Y[p["9"]]=10;Y[p["("]]=10762;Y[p["0"]]=11;Y[p[")"]]=10763;Y[p["-"]]=12;Y[p._]=10764;Y[p["="]]=13;Y[p["+"]]=10765;Y[1008]=14;Y[1009]=15;Y[p.q]=16;Y[p.Q]=10768;Y[p.so]=17;Y[p.Ui]=10769;Y[p.e]=18;Y[p.E]=10770;Y[p.r]=19;Y[p.Pi]=10771;Y[p.t]=20;Y[p.Ri]=10772;Y[p.y]=21;Y[p.Wi]=10773;Y[p.qo]=22;Y[p.Si]=10774;Y[p.Fl]=23;Y[p.Hi]=10775;Y[p.gn]=24;Y[p.Ni]=10776;Y[p.p]=25;Y[p.Oi]=10777;Y[p["["]]=26;Y[p["{"]]=10778;Y[p["]"]]=27;Y[p["}"]]=10779;Y[13]=28;Y[1017]=29;Y[p.ve]=30;Y[p.ue]=10782;Y[p.no]=31;Y[p.Qi]=10783;
Y[p.d]=32;Y[p.Di]=10784;Y[p.Cl]=33;Y[p.Ei]=10785;Y[p.Dl]=34;Y[p.Fi]=10786;Y[p.El]=35;Y[p.Gi]=10787;Y[p.Vm]=36;Y[p.Ii]=10788;Y[p.k]=37;Y[p.Ji]=10789;Y[p.Wm]=38;Y[p.Ki]=10790;Y[p[";"]]=39;Y[p[":"]]=10791;Y[p["'"]]=40;Y[p['"']]=10792;Y[p["`"]]=41;Y[p["~"]]=10793;Y[1016]=42;Y[p["\\"]]=43;Y[p["|"]]=10795;Y[p.z]=44;Y[p.og]=10796;Y[p.x]=45;Y[p.Vi]=10797;Y[p.sl]=46;Y[p.Ci]=10798;Y[p.ro]=47;Y[p.Ti]=10799;Y[p.ql]=48;Y[p.Bi]=10800;Y[p.n]=49;Y[p.Mi]=10801;Y[p.$m]=50;Y[p.Li]=10802;Y[p[","]]=51;Y[p["<"]]=10803;
Y[p["."]]=52;Y[p[">"]]=10804;Y[p["/"]]=53;Y[p["?"]]=10805;Y[3016]=54;Y[1044]=55;Y[1018]=56;Y[1032]=57;Y[1020]=58;Y[1112]=59;Y[1113]=60;Y[1114]=61;Y[1115]=62;Y[1116]=63;Y[1117]=64;Y[1118]=65;Y[1119]=66;Y[1120]=67;Y[1121]=68;Y[1144]=69;Y[1145]=70;Y[1036]=71;Y[1038]=72;Y[1033]=73;Y[1109]=74;Y[1037]=75;Y[1101]=76;Y[1039]=77;Y[1107]=78;Y[1035]=79;Y[1040]=80;Y[1034]=81;Y[1045]=82;Y[1046]=83;Y[4027]=84;Y[1122]=87;Y[1123]=88;Y[1091]=91;Y[1093]=93;Y[1224]=91;Y[qm]=7470;Y[4008]=7494;Y[4046]=3677523;
Y[4045]=3677522;Y[4013]=3677468;l=nm.prototype;
l.Pb=function(a,b,c,d){var e=this,f=a+"-"+b;if(void 0===this.qa[f])switch(b){case "kbd":case "screen":return c.onkeydown=function(a){return vm(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.L="";var b=!Y[a]||!!(e.xc&128);b||wm(e,a,!0);return b},c.onkeyup=function(a){return vm(e,a,!1)},!0;case "caps-lock":return this.qa[f]=c,c.onclick=function(){e.X&&e.X.wd();wm(e,1020,!0)},!0;case "num-lock":return this.qa[f]=c,c.onclick=function(){e.X&&e.X.wd();wm(e,1144,!0)},!0;case "scroll-lock":return this.qa[f]=
c,c.onclick=function(){e.X&&e.X.wd();wm(e,1145,!0)},!0;default:var g=b.toUpperCase().replace(/-/g,"_");if(void 0!==sm[g]&&"button"==a)return this.qa[f]=c,c.onclick=function(a,b,c){return function(){a.X&&a.X.wd();xm(a,c,!0);wm(a,c,!0)}}(this,g,sm[g]),!0;if(void 0!==tm[b])return this.fa++,this.qa[f]=c,a=function(a,b,c){return function(){wm(a,c)}}(this,b,tm[b]),b=function(a,b,c){return function(){ym(a,c)}}(this,b,tm[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=
c.onmouseout=b),!0;if(d)return this.qa[f]=c,c.onclick=function(){e.X&&e.X.wd();d&&!e.L&&(e.L=d,zm(e,300))},!0}return!1};function Am(a,b,c){if(a.fa){for(var d in da)if(b==da[d]){b=+d;(d=ca[d])&&(b=d);break}for(var e in tm)if((d=tm[e]==b)||(d=b,d>=p.ve&&d<=p.z&&(d-=p.ve-p.ue),d=tm[e]==d),d){(a=a.qa["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}l.Jc=function(a,b,c,d){this.X=a;this.ga=b;this.F=c;this.ha=d;this.N=Gb(a,"ChipSet")};
function om(a,b){var c=0;a.ja=null;"string"==typeof b&&(a.ja=b.toUpperCase(),c=pm.indexOf(a.ja),0>c&&(c=0));if(b=pm[c])a.ra=parseInt(b.substr(2),10)}function Ul(a){y(a,"keyboard reset",65792);a.A=[];Vl(a,170)}function Ql(a,b,c){a.aa!==c&&(a.aa=a.ea=c)&&(a.U=!0);a.W!==b&&(a.W=b)&&!a.ea&&Yl(a,!0);a.W&&a.ea&&(Ul(a),a.ea=!1)}function Vl(a,b){a.N&&(a.A.unshift(b),a.U=!0,Xl(a.N,b))}
function Rl(a){var b=0;a.A.length&&a.U&&(b=a.A[0],a.N&&Xl(a.N,b));z(a)&&y(a,b?"scan code "+u(b)+" available":"no scan codes available")}function Ol(a){var b=0;a.A.length&&(b=a.A[0]);z(a)&&y(a,"scan code "+u(b)+" delivered");return b}function Yl(a,b){0<a.A.length&&(a.A.shift(),(a.U=b)&&(a.A.length&&a.N?Xl(a.N,a.A[0]):b=!1),z(a)&&y(a,"scan codes shifted, notify "+(b?"true":"false")))}l.hc=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};
l.gc=function(a){return a?this.save():!0};l.reset=function(){if(!this.ja&&this.N)switch(this.N.ja){case 5150:case 5160:om(this,pm[0]);break;default:om(this,pm[1])}Bm(this);this.xc=this.C=0;this.A=[];this.U=!0;this.L=""};l.save=function(){var a=new nf(this),b=[];b[0]=this.aa;b[1]=this.W;a.set(0,b);return a.data()};l.restore=function(a){return Bm(this,a[0])};function Bm(a,b){var c=0;b||(b=[]);a.aa=a.U=b[c++];a.W=b[c];a.V=0;return!0}
function zm(a,b){if(0<a.L.length){var c=a.L.charCodeAt(0);10==c&&(c=13);a.L=a.L.substr(1);wm(a,c,!0)}0<a.L.length&&setTimeout(function(a){return function(){zm(a,b)}}(a),b)}
function xm(a,b,c,d){if(Y[b]){var e=Math.floor(b/1E3)&2;if(b=rm[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.C:a.xc)&b):d||b&255&&(b=255);if(c){a.C&=~b;d&&(a.C|=b);c=b;var f,g;for(g in um)d="led-"+g,e=um[g],c&&c!=e||!(f=a.qa[d])||(f.style.backgroundColor=a.C&e?"#00ff00":"#000000")}else a.xc&=~b,d&&(a.xc|=b);return!0}}return!1}
function wm(a,b,c){if(Y[b]&&a.F&&a.F.la.Ib){rm[b]&&a.B.length&&0<a.B[0].Kd&&(a.B[0].Kd=0);for(var d,e=0;e<a.B.length;e++)if(d=a.B[e],d.Pe==b){if(!c||0<=d.Kd){e=-1;break}0<e&&(0<a.B[0].Kd&&(a.B[0].Kd=0),a.B.splice(e,1));break}0>e||(e==a.B.length&&(d={},d.Pe=b,d.xc=a.xc,Am(a,b,!0),e++),0<e&&a.B.splice(0,0,d),d.Hf=!0,d.Kd=c?-1:rm[b]?0:1,Cm(a,d))}}
function ym(a,b,c){if(!Y[b]||!(c||a.F&&a.F.la.Ib))return!1;for(var d=!1,e=0;e<a.B.length;e++){var f=a.B[e];if(f.Pe==b||f.Pe==da[b]){a.B.splice(e,1);f.Zk&&clearTimeout(f.Zk);f.Hf&&!c&&Dm(a,f.Pe,!1);Am(a,b,!1);d=!0;break}}!a.B.length&&a.ka&&(xm(a,1020),a.ka=!1);return d}function Cm(a,b){if(!a.F||!a.F.la.Ib)ym(a,b.Pe,!0);else if(Dm(a,b.Pe,b.Hf)&&b.Kd){var c;if(0>b.Kd){if(!b.Hf){ym(a,b.Pe);return}b.Hf=!1;c=a.ua}else c=1==b.Kd++?500:100;b.Zk=setTimeout(function(a){return function(){Cm(a,b)}}(a),c)}}
function Em(a,b,c){var d=b;if(b>=p.ue&&b<=p.og)!(a.xc&515)==c&&(d=b+(p.ve-p.ue));else if(b>=p.ve&&b<=p.z)!!(a.xc&515)==c&&(d=b-(p.ve-p.ue));else if(!!(a.xc&3)==c){if(a=da[b])d=a}else if(a=ca[b])d=a;return d}l.Mg=function(a){a||(this.xc&=-256)};
function vm(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,h=Em(a,g,!0);a.kh&&h==p["`"]&&(g=h=27);if(Y[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),xm(a,h,!1,c)){if(20==g||144==g||145==g)a.pa||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k<a.B.length;k++){var m=a.B[k];m.Hf=!1;0<m.Kd&&(m.Kd=0)}}else 8==g&&8==(a.xc&40)&&(h=4008),d=!1;else if(Y[h]&&a.xc&60&&(d=!1),d&&c||a.xc&192)f=!0;d||b.preventDefault();f||a.ia&&d||(c?wm(a,h,e):ym(a,h)||(b=Em(a,g,!1),b!=h&&ym(a,b)));return d}
function Dm(a,b,c){var d=!1;xm(a,b,!0,c);var e=Y[b]||Y[b+1E3];if(void 0!==e){14==e&&40==(a.xc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.ra)return!1;d.push(f|(c?0:128));for(b=b>=p.ue&&b<=p.og||b>=p.ve&&b<=p.z;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.C&3||a.C&512&&b||(g=h):29==h?a.C&12||(g=h):56==h?a.C&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.A&&(20>e.A.length?(z(e)&&y(e,"scan code "+u(f)+" buffered"),e.A.push(f),
1==e.A.length&&e.N&&Xl(e.N,f)):(20==e.A.length&&e.A.push(255),y(e,"scan code buffer overflow")));d=!0}return d}Za(function(){for(var a=qb(document,"pcx86","keyboard"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new nm(d);pb(d,c)}});
function Z(a,b,c,d,e){var f=this;this.rf=La("Gecko/");var g=["","moz","ms","webkit"];db.call(this,"Video",a,Z,262144);this.ja=a.model;var h=Fm[this.ja]||Fm.mda;this.Ua=h[0];this.Dd=a.memory||0;this.fg=a.switches;this.va=a.mode;if(null==this.va||null==Gm[this.va])this.va=h[1];this.kd=a.charCols;this.je=a.charRows;if(void 0===this.kd||void 0===this.je)this.kd=Gm[this.va][0],this.je=Gm[this.va][1];this.ra=a.screenWidth;this.Da=a.screenHeight;this.$f=a.scale;this.to=12<=Math.round(this.ra/this.kd);this.ka=
b;this.ea=c;this.X=(this.cl=d)||b||null;b=a.smoothing;(c=Na("smoothing"))&&(b="true"==c);if(null!=b)for(c=0;c<g.length;c++)if(d=(d=g[c])?d+"ImageSmoothingEnabled":"imageSmoothingEnabled",void 0!==this.ea[d]){this.ea[d]=b;break}this.lg=a.touchScreen;this.ke=Hm;this.V=null;this.Ai=a.autoLock;this.ob=this.ac=0;this.Oa=[];this.Ca=Array(this.Ua==em?256:16);this.qb=!1;if(this.ia=e)if(this.ia.Ye=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.ia.Ye){for(c=
0;c<g.length;c++)if(d=g[c]+"fullscreenchange","on"+d in document){document.addEventListener(d,function(){Im(f,document.fullscreenElement||document.msFullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement?!0:!1)},!1);break}for(c=0;c<g.length;c++)if(d=g[c]+"fullscreenerror","on"+d in document){document.addEventListener(d,function(){Im(f,null)},!1);break}}this.X&&(this.X.onfocus=function(){return f.Mg(!0)},this.X.onblur=function(){return f.Mg(!1)},this.X.Fe=this.X.requestPointerLock||
this.X.mozRequestPointerLock||this.X.webkitRequestPointerLock,this.X.$k=this.X.exitPointerLock||this.X.mozExitPointerLock||this.X.webkitExitPointerLock,this.X.Fe&&(e=function(){f.Zf(document.pointerLockElement===f.X||document.mozPointerLockElement===f.X||document.webkitPointerLockElement===f.X)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",e,!1):"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",e,!1):"onwebkitpointerlockchange"in
document&&document.addEventListener("webkitpointerlockchange",e,!1)));if(a=a.fontROM)"json"!=ka(a)&&(a=Ba()+"/api/v1/dump?file="+a+"&format=bytes"),Aa(a,null,!0,function(a,b,c){Jm(f,a,b,c)})}gb(Z);
var em=7,Fm={mda:[1,7],cga:[3,3],ega:[5,3],vga:[em,3]},Km={2:{Ig:15700,Hg:208,Og:85,Pg:96},3:{Ig:18432,Hg:364,Og:85,Pg:96},4:{Ig:21850,Hg:364,Og:85,Pg:96},7:{Ig:16700,Hg:480,Og:85,Pg:83}},Lm={6:[1,3,!0],7:[2,3,!0],8:[6,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[6,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},Gm=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192],[80,25,1,0,1]];Gm[13]=[320,200,8];Gm[14]=[640,200,8];Gm[15]=[640,350,8];Gm[16]=[640,350,8];
Gm[17]=[640,480,8];Gm[18]=[640,480,8];Gm[19]=[320,200,1];Gm[20]=[320,240,4];Gm[21]=[320,400,4];Gm[0]=Gm[1];Gm[2]=Gm[3];Gm[5]=Gm[4];
var Mm=[[0,0,0,255],[127,192,127,255],[127,192,127,255],[127,255,127,255],[127,255,127,255]],Nm=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],Om=[[0,0,0,255],[0,0,170,255],[0,170,0,255],[0,170,170,255],[170,0,0,255],[170,0,170,255],[170,85,0,255],[170,170,170,255],[85,85,85,255],[85,85,255,255],[85,255,85,255],[85,255,255,255],[255,85,85,255],[255,85,255,255],[255,255,85,255],[255,255,255,255]],Pm=[2,4,6],Qm=[3,5,7],Rm=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Sm=[0,255,65280,65535,16711680,16711935,16776960,
16777215,-16777216,-16776961,-16711936,-16711681,-65536,-65281,-256,-1],Tm=[0];Tm[128]=1;Tm[32768]=2;Tm[32896]=3;Tm[8388608]=4;Tm[8388736]=5;Tm[8421376]=6;Tm[8421504]=7;Tm[-2147483648]=8;Tm[-2147483520]=9;Tm[-2147450880]=10;Tm[-2147450752]=11;Tm[-2139095040]=12;Tm[-2139094912]=13;Tm[-2139062272]=14;Tm[-2139062144]=15;
function Um(a,b,c,d){if(void 0!==b&&(!c||c.length)){this.video=a;var e=Vm[b],f=a.ya||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(5>b?Wm:Xm)];this.ha=a.ha;this.type=e[0];this.port=e[1];this.Ua=b;this.ob=e[2];this.ac=e[3];this.Dd=d||e[4];65536<=this.Dd&&720896<=this.ob&&(this.ac=Math.min(this.Dd>>2,32768));this.Ic=c[0];this.gd=c[1];this.tf=c[2];this.ma=c[3];this.Ac=c[4]&255;this.Qg=c[4]>>8&255;this.mb=c[5];this.wh=Wm;this.qg=Ym;if(5<=b){this.wh=Xm;this.qg=Zm;(b=c[6])||(b=[!1,0,Array(20),0,3==f?
0:1,0,0,Array(5),0,0,0,Array(9),0,[this.ob,this.ac,this.Dd],Array(this.Dd>>2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Ze=b[0];this.Nd=b[1];this.Tc=b[2];this.$g=$m;this.Tg=b[3];this.vf=b[4];this.ig=b[5];this.ae=b[6];this.Me=b[7];this.bh=an;this.Qk=b[8];this.Rk=b[9];this.$d=b[10];this.Zd=b[11];this.ah=bn;this.Fb=b[12];d=b[13];"number"==typeof d&&(d=[this.ob,this.ac,d]);this.ob=d[0];this.ac=d[1];d=this.Dd>>2;if((this.rd=b[14])&&this.rd.length<d){for(var e=this.rd,g=0,h=Array(d),
k=0;k<e.length-1;){for(var m=e[k++],n=e[k++];m--;)h[g]=n,g+=2;g==d&&(g=1)}this.rd=h}(d=b[15])&&(d&-2147483648?d&=2147483647:d=cn[d&65280]|cn[d&255]);this.Vg(d);this.mi=b[16];this.rb=b[17];this.dd=b[18];this.Mb=b[19];this.Yf=b[20];this.Yd=b[21];this.pe=b[22];this.xh=b[23];this.yh=b[24];this.Ld=b[25];this.ni=this.qf=0;this.Ua==em&&(this.vi=b[26],this.ui=b[27],this.pd=b[28],this.Lc=b[29],this.Rg=b[30],this.uf=b[31])}f=Km[f]||Km[3];this.zh=a.F.Y.Id/f.Ig|0;this.cn=this.zh*f.Og/100|0;this.Ch=this.zh*f.Hg|
0;this.en=this.Ch*f.Pg/100|0;this.Eh=c[7]||0}}
var Wm=18,Xm=25,Ym="HTOTAL HDISP HSYNC_POS HSYNC_WIDTH VTOTAL VTOTAL_ADJ VDISP VSYNC_POS INTERLACE_POS MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO LIGHT_PEN_HI LIGHT_PEN_LO".split(" "),Zm="HTOTAL HDISP_END HBLANK_START HBLANK_END HRETRACE_START HRETRACE_END VTOTAL OVERFLOW PRESET_SCAN MAX_SCAN CURSOR_START CURSOR_END START_ADDR_HI START_ADDR_LO CURSOR_ADDR_HI CURSOR_ADDR_LO VRETRACE_START VRETRACE_END VDISP_END OFFSET UNDERLINE VBLANK_START VBLANK_END MODE_CTRL LINE_COMPARE".split(" "),$m=
"PAL00 PAL01 PAL02 PAL03 PAL04 PAL05 PAL06 PAL07 PAL08 PAL09 PAL0A PAL0B PAL0C PAL0D PAL0E PAL0F MODE OVERSCAN PLANES HPAN".split(" "),an=["RESET","CLOCKING","MAPMASK","CHARMAP","MEMMODE"],bn="SRESET ESRESET COLORCMP DATAROT READMAP MODE MISC COLORDC BITMASK".split(" "),cn=[,,1024,5120];cn[16]=1280;cn[512]=0;cn[1024]=32;cn[1536]=96;cn[2560]=160;cn[3584]=224;cn[768]=16;cn[4096]=1;cn[8192]=2;cn[24576]=98;cn[40960]=162;cn[57344]=226;var dn=[];
dn[1024]=function(a){a+=this.C;return(this.controller.Fb=this.da[a])>>this.controller.mi&255};dn[17408]=function(a){return(this.controller.Fb=this.da[(a&-4)+this.C])>>((a&3)<<3)&255};dn[5120]=function(a){a+=this.C;var b=this.controller.Fb=this.da[a&-2];return(a&1?b>>8:b)&255};dn[1280]=function(a){a+=this.C;a=this.controller.Fb=this.da[a];for(var b=this.controller.yh,c=this.controller.xh&b,d=0,e=128;e;)(a&b)==c&&(d|=e),c>>>=1,b>>>=1,e>>=1;return d};
dn[0]=function(a,b){a+=this.C;b=(b|b<<8|b<<16|b<<24)&this.controller.Yd|this.controller.pe;b=b&this.controller.Mb|this.controller.Fb&~this.controller.Mb;b=b&this.controller.rb|this.da[a]&~this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};
dn[32]=function(a,b){a+=this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Yd|this.controller.pe;b=b&this.controller.Mb|this.controller.Fb&~this.controller.Mb;b=b&this.controller.rb|this.da[a]&~this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};
dn[96]=function(a,b){a+=this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Yd|this.controller.pe;b&=this.controller.Fb;b=b&this.controller.Mb|this.controller.Fb&~this.controller.Mb;b=b&this.controller.rb|this.da[a]&~this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};
dn[160]=function(a,b){a+=this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Yd|this.controller.pe;b|=this.controller.Fb;b=b&this.controller.Mb|this.controller.Fb&~this.controller.Mb;b=b&this.controller.rb|this.da[a]&~this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};
dn[224]=function(a,b){a+=this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Yd|this.controller.pe;b^=this.controller.Fb;b=b&this.controller.Mb|this.controller.Fb&~this.controller.Mb;b=b&this.controller.rb|this.da[a]&~this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};dn[4]=function(a,b){var c=(a&-4)+this.C;a=(a&3)<<3;b=b<<a&this.controller.rb|this.da[c]&~(255<<a&this.controller.rb);this.da[c]!=b&&(this.da[c]=b,this.Wa=!0)};
dn[16]=function(a,b){a+=this.C;var c=a&-2;b=(b|b<<8|b<<16|b<<24)&this.controller.Mb|this.controller.Fb&~this.controller.Mb;a=this.controller.rb&(c==a?16711935:-16711936);b=b&a|this.da[c]&~a;this.da[c]!=b&&(this.da[c]=b,this.Wa=!0)};dn[1]=function(a){a+=this.C;var b=this.da[a]&~this.controller.rb|this.controller.Fb&this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};
dn[17]=function(a){a+=this.C;var b=a&-2;a=this.controller.rb&(b==a?16711935:-16711936);a=this.da[b]&~a|this.controller.Fb&a;this.da[b]!=a&&(this.da[b]=a,this.Wa=!0)};dn[2]=function(a,b){a+=this.C;b=Sm[b&15];b=b&this.controller.Mb|this.controller.Fb&~this.controller.Mb;b=b&this.controller.rb|this.da[a]&~this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};
dn[98]=function(a,b){a+=this.C;b=Sm[b&15];b&=this.controller.Fb;b=b&this.controller.Mb|this.controller.Fb&~this.controller.Mb;b=b&this.controller.rb|this.da[a]&~this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};dn[162]=function(a,b){a+=this.C;b=Sm[b&15];b|=this.controller.Fb;b=b&this.controller.Mb|this.controller.Fb&~this.controller.Mb;b=b&this.controller.rb|this.da[a]&~this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};
dn[226]=function(a,b){a+=this.C;b=Sm[b&15];b^=this.controller.Fb;b=b&this.controller.Mb|this.controller.Fb&~this.controller.Mb;b=b&this.controller.rb|this.da[a]&~this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};dn[3]=function(a,b){a+=this.C;b=b>>this.controller.dd|b<<8-this.controller.dd&255;b=(b|b<<8|b<<16|b<<24)&this.controller.Mb;b=this.controller.Yf&b|this.controller.Fb&~b;b=b&this.controller.rb|this.da[a]&~this.controller.rb;this.da[a]!=b&&(this.da[a]=b,this.Wa=!0)};
function en(a){var b=[];if(void 0!==a.Ua){b[0]=a.Ic;b[1]=a.gd;b[2]=a.tf;b[3]=a.ma;b[4]=a.Ac|a.Qg<<8;b[5]=a.mb;if(5<=a.Ua){var c=[];c[0]=a.Ze;c[1]=a.Nd;c[2]=a.Tc;c[3]=a.Tg;c[4]=a.vf;c[5]=a.ig;c[6]=a.ae;c[7]=a.Me;c[8]=a.Qk;c[9]=a.Rk;c[10]=a.$d;c[11]=a.Zd;c[12]=a.Fb;c[13]=[a.ob,a.ac,a.Dd];var d;if(d=a.rd){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 k=d[h],m=h+2;m<d.length&&d[m]===k;)m+=2;f[e++]=m-h>>1;f[e++]=k;h=m}f.length<d.length&&(d=f)}c[14]=d;c[15]=a.Dg|-2147483648;
c[16]=a.mi;c[17]=a.rb;c[18]=a.dd;c[19]=a.Mb;c[20]=a.Yf;c[21]=a.Yd;c[22]=a.pe;c[23]=a.xh;c[24]=a.yh;c[25]=a.Ld;a.Ua==em&&(c[26]=a.vi,c[27]=a.ui,c[28]=a.pd,c[29]=a.Lc,c[30]=a.Rg,c[31]=a.uf);b[6]=c}b[7]=a.Eh}return b}function fn(a,b,c,d,e){if(d){var f,g="";for(f=0;f<e.length;f++){var h=d===a.mb?gn(a,f):d[f];g&&(g+="\n");g+=b+"["+r(f,2)+"]: "+pa(e[f],18)+(f===c?"*":" ")+r(h,255<h?4:2);null!=h&&(g+=" ("+h+".)")}a.ha.O(g)}else a.ha.O(b+": "+r(c,2))}Um.prototype.wj=function(a){return[this.rd,a-this.ob]};
Um.prototype.nh=function(){return this.A};Um.prototype.Vg=function(a){if(null!=a&&a!=this.Dg){var b=a&65280,c=dn[b];c||b&4096&&(c=dn[4096]);var b=a&255,d=dn[b];d||b&16&&(d=dn[16]);this.A||(this.A=Array(6));this.A[0]=c;this.A[1]=d;this.Dg=a}};
function gn(a,b){var c=a.mb[b];if(null!=c&&5<=a.Ua){var d=0,e=0,f=0;switch(b){case 6:d=1;a.Ua==em&&(e=32);break;case 10:5==a.Ua&&(d=32);break;case 16:d=4;a.Ua==em&&(e=128);break;case 18:d=2;a.Ua==em&&(e=64);break;case 21:d=8;a.Ua==em&&(f=32);break;case 24:d=16,a.Ua==em&&(f=64)}d&&(c|=a.mb[7]&d?256:0,c|=a.mb[7]&e?512:0,c|=a.mb[9]&f?512:0)}return c}var Vm=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];Vm[em]=["VGA",980,753664,16384,262144,7];var Hm=0;
l=Z.prototype;
l.Jc=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;c=(c=Fm[this.ja])&&c[0];3!==c&&(nc(b,this,hn),rc(b,this,jn));1!==c&&(nc(b,this,kn),rc(b,this,ln));5<=this.Ua&&(nc(b,this,mn),rc(b,this,nn));this.Ua==em&&(nc(b,this,on),rc(b,this,pn));if(d){var e=this;Nk(d,262144,function(a){if(e.C)if(a[0]){var b=e.C;if(b.rd){var c,d,f,g=!1,q=8,A=8,F=-1,C=b.video.L>>3;for(c=0;c<a.length;c++){var D=a[c];if(c){var L=D.charAt(0);d=ea(D.substr(1),16);switch(L){case "l":q=d;break;case "n":1<=d&&8>=d&&(A=d,g=!0);break;
case "p":0<=d&&3>=d&&(F=d);break;case "w":d<C&&(C=d);break;default:b.ha.O("unrecognized argument: "+D)}}else f=ea(D,16)}void 0===f?f=b.B||0:f>=b.ob&&(f-=b.ob);a="";for(c=0;c<q;c++){D=r(b.ob+f)+":";for(d=0;d<A&&f<b.rd.length;d++)L=b.rd[f++],D+=" "+(0>F?r(L):fa(L>>(F<<3),8));g&&(f+=C-A);a&&(a+="\n");a+=D}a&&b.ha.O(a);b.B=f}else b.ha.O("no buffer")}else e.ha.O("BIOSMODE: "+u(e.Ga)),b=e.C,fn(b,"CRTC",b.Ac,b.mb,b.qg),5<=b.Ua&&(fn(b," GRC",b.$d,b.Zd,b.ah),fn(b," SEQ",b.ae,b.Me,b.bh),fn(b," ATC",b.Nd,b.Tc,
b.$g),fn(b," ATCINDX",b.Nd),b.ha.O(" ATCDATA: "+b.Ze),fn(b," FEAT",b.ig),fn(b," MISC",b.vf),fn(b," STATUS0",b.Tg)),fn(b," STATUS1",b.ma),1!=b.Ua&&3!=b.Ua||fn(b," MODEREG",b.gd),3==b.Ua&&fn(b," COLOR",b.tf),5<=b.Ua&&(b.ha.O(" LATCHES: "+r(b.Fb)),b.ha.O(" ACCESS: "+r(b.Dg,4)),b.ha.O("Use 'dump video [addr]' to dump video memory"));else e.ha.O("no active video card")})}if((this.B=Gb(a,"Keyboard"))&&this.ka){for(var f in this.qa)0<f.indexOf("lock")&&this.B.Pb("led",f,this.qa[f]);this.B.Pb(this.cl?
"textarea":"canvas","screen",this.X)}this.Wc=9;(this.N=Gb(a,"ChipSet"))&&this.fg&&5==this.Ua&&(this.Wc=tk(this.fg,this.Wc));"mouse"==this.lg?(this.V=Gb(a,"Mouse"))&&qn(this,2):"keygrid"==this.lg&&this.B&&qn(this,1)};
l.Pb=function(a,b,c){var d=this;if(!this.qa[b])switch(this.qa[b]=c,b){case "fullScreen":return this.ia&&this.ia.Ye?c.onclick=function(){d.Ye()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.bl=c.textContent,this.X&&this.X.Fe?c.onclick=function(){d.Fe(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){rn(d,!0)},!0}return!1};
l.Ye=function(){var a=!1;if(this.ia){if(this.ia.Ye){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.ra/this.Da;b>c&&(a=Math.round(c/b*100)+"%")}this.rf?(this.ka.style.width=a,this.ka.style.width=a,this.ka.style.display="block",this.ka.style.margin="auto"):(this.ia.style.width=a,this.ia.style.height="auto");this.ia.style.backgroundColor="black";this.ia.Ye();a=!0}this.X&&this.X.focus()}return a};
function Im(a,b){!b&&a.ia&&(a.rf?a.ka.style.width=a.ka.style.height="":a.ia.style.width=a.ia.style.height="");y(a,"notifyFullScreen("+b+")",!0);a.B&&(a.B.kh=b)}l.Fe=function(a){var b=!1;this.X&&(a?this.X.Fe&&(this.X.Fe(),this.V&&this.V.Zf(!0),b=!0):this.X.$k&&(this.X.$k(),this.V&&this.V.Zf(!1),b=!0),this.X&&this.X.focus());return b};l.Zf=function(a){this.V&&(this.V.Zf(a),this.B&&(this.B.kh=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.bl)};
function qn(a,b){var c=a.X;c&&!a.ke&&(c.addEventListener("touchstart",function(b){sn(a,b,!0)},!1),c.addEventListener("touchmove",function(b){sn(a,b)},!0),c.addEventListener("touchend",function(b){sn(a,b,!1)},!1),a.ke=b,a.uc=a.Dc=a.mg=-1,a.Hd=!1,a.Yc=null,a.Gd=!1,a.uo=function(){a.Gd=!0;a.V.he(tn,!0)})}l.Mg=function(a){this.B&&this.B.Mg(a)};
function sn(a,b,c){var d,e,f=0,g=0;e=a.ka;do isNaN(e.offsetLeft)||(f+=e.offsetLeft,g+=e.offsetTop);while(e=e.offsetParent);var h=a.ra/a.ka.offsetWidth,k=a.Da/a.ka.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*h;e=(e-g)*k;if(1==a.ke)d=d/(a.ra/3)|0,e=e/(a.Da/3)|0,1!=e?e?wm(a.B,1040,!0):wm(a.B,1038,!0):1!=d&&(d?wm(a.B,1039,!0):wm(a.B,1037,!0));else if(a.V){g=a.Hd;f=b.timeStamp-a.mg;!0===c?(a.Hd=500<f,a.mg=b.timeStamp,
a.Yc=setTimeout(a.uo,500)):null!=a.Yc&&(clearTimeout(a.Yc),a.Yc=null);void 0===c&&(a.Hd=!1);g||b.preventDefault();if(!1===c){a.Gd?(a.V.he(tn,!1),a.Gd=!1,b=!0):b=!1;if(b)return;if(200>f){a.V.he(tn,!0);a.V.he(tn,!1);return}}if(c||0>a.uc||0>a.Dc)a.uc=d,a.Dc=e;c=Math.round(d-a.uc);b=Math.round(e-a.Dc);a.uc=d;a.Dc=e;a.V.Kf(c,b,a.uc,a.Dc)}}l.hc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.gc=function(a){return a?this.save():!0};
l.reset=function(){var a=!0,b=0;this.N&&(b=+Vk(this.N,xk,void 0));this.ja||(this.Ua=3==b?1:3);this.va=3;switch(this.Ua){case em:b=7;break;case 5:var c=Lm[this.Wc];c&&(b=c[0]);b||(b=4);break;case 1:b=3;this.va=7;break;default:b=2}this.ya!==b&&(this.ya=b,a=!0);this.C=null;this.pa=this.qd=new Um(this,1);this.aa=this.Xc=new Um(this,3);5>this.Ua?this.A=new Um:(this.A=new Um(this,this.Ua,null,this.Dd),un(this));vn(this);this.Ga=null;this.cb=this.ua=-1;this.Pa=0;wn(this,this.va);if(this.C.ob&&a){a=this.C.ob+
this.Ub;for(b=this.C.ob;b<a;b+=2){var d=65536*Math.random()|0;4==this.ya||7==this.ya?(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);kc(this.ga,b,c|d<<8)}rn(this,!0)}};function un(a){a.A.vf&1?(a.pa=a.qd,a.aa=a.A):(a.pa=a.A,a.aa=a.Xc)}l.save=function(){var a=new nf(this);a.set(0,en(this.qd));a.set(1,en(this.Xc));a.set(2,[this.ya,this.va,this.Ga]);a.set(3,en(this.A));return a.data()};
l.restore=function(a){var b=a[2];this.ya=b[0];this.va=b[1];this.Ga=b[2];this.C=null;this.pa=this.qd=new Um(this,1,a[0]);this.aa=this.Xc=new Um(this,3,a[1]);this.A=new Um(this,this.Ua,a[3],this.Dd);this.A.Ic&&un(this);vn(this);if(!xn(this))return!1;yn(this);return!0};
function Jm(a,b,c,d){if(d)a.Na("Unable to load font ROM (error "+d+": "+b+")");else{ib(a.ce,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){w("Empty font ROM: "+b);return}if(1==f.length){w(f[0]);return}if(8192==f.length)dm(a,f,[6144,0]);else if(2048==f.length)dm(a,f,[0]);else{a.Na("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Na("Font ROM data error: "+g.message);return}(a.ea||a.ha)&&ub(a)}}
function Yn(a,b){if(1==b)return a.Ca[0]=Om[0],a.Ca[1]=Om[7],a.Ca;if(2==b){var c=a.C.tf;if(a.C===a.A){var d=a.A.Tc[0],c=d&7;d&16&&(c|=8);18!=a.A.Tc[1]&&(c|=32)}a.Ca[0]=Om[c&15];c=c&32?Qm:Pm;for(d=0;d<c.length;d++)a.Ca[d+1]=Om[c[d]];return a.Ca}if(a.aa===a.Xc)return Om;a.qb&&b&&!a.Ca[16]&&(a.qb=!1);if(!a.qb){var c=a.A,d=c.uf,e,f,g,h;if(8==b)for(e=0;256>e;e++)f=d[e]||0,g=f<<2&252,h=f>>4&252,f=f>>10&252,a.Ca[e]=[g,h,f,255];else{var k=d&&d[255];b=null!=c.Tc[15]?c.Tc:Rm;for(e=0;16>e;e++)f=b[e]&63,k?(f|=
(c.Tc[20]&12)<<4,c.Tc[16]&128&&(f&=-49,f|=(c.Tc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.Ca[e]=[g,h,f,255]}a.qb=!0}return a.Ca}function dm(a,b,c,d){a.Vc=b;a.Jb=c;a.Tb=d}
function vn(a,b){var c=!1;if(window&&a.Vc&&(!b||a.U)){b=0;var d=a.Tb?a.Tb:8,e=Yn(a);null!=a.Jb[0]&&Zn(a,3,a.Jb[0],b,d,8,a.Vc,e)&&(c=!0);b=a.Tb?0:2048;d=a.Tb?a.Tb:9;null!=a.Jb[1]&&(Zn(a,1,a.Jb[1],b,d,14,a.Vc,Mm,Nm)&&(c=!0),a.Tb&&Zn(a,a.Ua,a.Jb[1],0,a.Tb,14,a.Vc,e)&&(c=!0))}return c}function Zn(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&($n(a,b,c,d,e,f,g,h,k)&&(m=!0),a.to&&$n(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m}
function $n(a,b,c,d,e,f,g,h,k){var m=!1,n=b&1?0:1,t=a.Oa[b],q=16>h.length?h.length:16;t||(t={Qc:e<<n,Rc:f<<n,Re:Array(q),Yi:h.slice(0,q),Af:k,Zg:Array(q)});for(k=0;k<q;k++){var A=h[k],F=t.Re[k]?t.Yi[k]:[];if(A[0]!==F[0]||A[1]!==F[1]||A[2]!==F[2]){var m=t,F=k,C=n,D=c,L=d,G=e,ga=f,S=g,ab=[0,0,0,0],la=document.createElement("canvas");la.width=m.Qc<<4;la.height=m.Rc<<4;var Ja=la.getContext("2d"),Da,Wa,Ka,Vb=8>ga||!L?ga:8,Pa=Ja.createImageData(m.Qc,m.Rc);for(Da=0;256>Da;Da++){for(Ka=0;Ka<ga;Ka++)for(var Ud=
m.Af&&F&1&&Ka>=ga-2,Rc=S[Ka<Vb?D+Da*Vb+Ka:L+Da*Vb+Ka-Vb],Vd=0;Vd<=C;Vd++)for(Wa=0;Wa<G;Wa++){var Fe=Wa<<C,Wd=(Ka<<C)+Vd,Ge=Ud||Rc&128>>(8<=Wa&&192<=Da&&223>=Da?7:Wa)?A:ab;ao(Pa,Fe,Wd,Ge);C&&ao(Pa,Fe+1,Wd,Ge)}Ja.putImageData(Pa,(Da&15)*m.Qc,(Da>>4)*m.Rc)}m.Re[F]="#"+r(A[0],2)+r(A[1],2)+r(A[2],2);m.Yi[F]=A;m.Zg[F]=la;m=!0}}a.Oa[b]=t;return m}function bo(a){0<a.Pa||0<=a.ua?0>a.cb&&(a.cb=0):a.cb=-1}
function yn(a){if(a.U){for(var b=10;15>=b;b++)if(null==a.C.mb[b])return;var c=a.C.mb[10],b=c&31,d=a.C.mb[11]&31,e=a.C.mb[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)co(a);else{c=a.C.mb[15]+((a.C.mb[14]&63)<<8);a.ua!=c&&(co(a),a.ua=c);d=d-b+1;if(a.ng!=b||a.Ee!=d)a.ng=b,a.Ee=d;a.Ya=e+1;bo(a)}}}
function co(a){if(0<=a.ua){if(void 0!==a.fa){var b=a.fa[a.ua];if(b&131072){var b=b&-131073,c=a.ua%a.L,d=a.ua/a.L|0;a.U&&a.Oa[a.U]&&(a.gb&&eo(a,c,d,b,a.gb),eo(a,c,d,b));a.fa[a.ua]=b}}a.ua=-1}}
function fo(a){var b,c=a.C;a.hf=!1;var d=c.Zd[5];if(null!=d){b=1024;var e=0,f=c.Zd[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.dd=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.Ua==em&&(e=3,c.dd=f&7)}d&8&&(b=1280);c=c.Me[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.hf=!0));b|=e}return b}
function go(a,b){var c=a.C;return c&&null!=b&&b!=c.Dg?(c.Vg(b),a.ga.Vg(c.ob,c.ac,c.nh(),!0),!0):!1}
function xn(a,b){var c,d=a.Ga,e=a.C;if(e)if(1==e.Ua)d=7;else if(5<=e.Ua){var d=null,f=e.Dd>>2,g=32768<f?32768:f,h=e.Zd[6];if(null!=h){switch(h&12){case 0:e.ob=655360;e.ac=f;d=255;break;case 4:e.ob=655360;e.ac=f;d=3==a.ya?15:16;break;case 8:e.ob=720896;e.ac=g;d=7;break;case 12:e.ob=753664,e.ac=g,d=3==a.ya?2:3}c=80==(e.Zd[5]&80);!c||e.ob==a.ob&&e.ac==a.ac||(b=!0);var f=gn(e,6),g=e.mb[9],k=e.mb[23],m=e.Me[1]&8;255!=d&&(h&1?655360==e.ob||c||k&1?e.Zd[5]&64?d=g&31?143>=e.mb[18]?19:20:21:g&128||350>f?d=
m?13:14:480<=f&&(d=3==a.ya?17:18):d=m?7-d:6:d-=m?2:0);c=fo(a)}}else e.gd&8&&(e.gd&2?(d=e.gd&16?6:5,e.gd&4||--d):(d=e.gd&1?3:1,e.gd&4&&--d));else a.Ga=null,null==d&&(d=a.va);if(!wn(a,d,b))return!1;go(a,c);return!0}
function wn(a,b,c){if(null!=b&&(b!=a.Ga||c)){a.Wg=0;a.Ga=b;a.qb=!1;b=a.C||(7==b?a.pa:a.aa);if(b!=a.C||b.ob!=a.ob||b.ac!=a.ac){co(a);if(a.ob){if(!dc(a.ga,a.ob,a.ac))return!1;a.C&&(a.C.Ic=!1)}a.C=b;b.Ic=!0;a.ob=b.ob;a.ac=b.ac;if(!Rb(a.ga,b.ob,b.ac,3,b===a.A?b:null))return!1}a:{a.U=0;a.L=a.kd;a.W=a.je;a.Db=a.L;a.jd=Gm[7][2];b=0;if(c=Gm[a.Ga])a.L=c[0],a.W=c[1],a.jd=c[2],b=c[3],a.U=c[4],4!=a.ya&&7!=a.ya||a.C!==a.A||3!=a.U||(7==(a.A.mb[9]&31)?a.W=350>gn(a.A,18)?43:50:a.U=a.Ua);a.eg=a.L*a.W|0;a.bg=a.eg/
a.jd|0;a.Ub=a.bg;a.sd=0;void 0!==b&&(a.Ub=(a.Ub<<1)+b|0,a.sd=a.Ub+b>>1);if(a.Oa.length){a.Ja=a.ra/a.L|0;a.Ka=a.Da/a.W|0;if(a.U){b=a.Oa[a.U];if(!b)break a;c=a.Oa[a.U<<1];a.$f&&80==a.L?c&&a.Ja>=3*c.Qc>>2&&(a.U<<=1,b=c):(c&&a.Ja>=c.Qc&&(a.U<<=1,b=c),a.$f||(a.Ja=b.Qc,a.Ka=b.Rc));a.bc=a.tc=0;b&&(a.bc=a.L*b.Qc,a.tc=a.W*b.Rc)}else a.Ja=a.Ka=1,a.bc=a.L,a.tc=a.W;a.sb=a.ea.createImageData(a.bc,a.tc);a.fb=document.createElement("canvas");a.fb.width=a.bc;a.fb.height=a.tc;a.gb=a.fb.getContext("2d");a.le=a.me=
0;a.Cd=a.ra;a.Fd=a.Da;b=a.ra-a.L*a.Ja;c=a.Da-a.W*a.Ka;0<b&&(a.le=b>>1,a.Cd-=b);0<c&&(a.me=c>>1,a.Fd-=c);if(b||c)a.ea.fillStyle=a.ka.style.backgroundColor,a.ea.fillRect(0,0,a.ra,a.Da)}}ho(a,!0);rn(a)}return!0}function ao(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function io(a){a.Pa=-1;a.Ea=!1;var b=a.bg;if(void 0===a.fa||a.fa.length!=b)a.fa=Array(b)}function ho(a,b){b||(a.qb=!1);io(a)}
function eo(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Oa[a.U];h.Af&&(d=h.Af[d]);var k=g>>4&15;h.Af&&(k=h.Af[k]);e?(b*=h.Qc,c*=h.Rc,e.fillStyle=h.Re[k],e.fillRect(b,c,h.Qc,h.Rc)):(b=b*a.Ja+a.le,c=c*a.Ka+a.me,a.ea.fillStyle=h.Re[k],a.ea.fillRect(b,c,a.Ja,a.Ka));g&256&&(k=(f&15)*h.Qc,f=(f>>4)*h.Rc,e?e.drawImage(h.Zg[d],k,f,h.Qc,h.Rc,b,c,h.Qc,h.Rc):a.ea.drawImage(h.Zg[d],k,f,h.Qc,h.Rc,b,c,a.Ja,a.Ka));g&512&&(f=a.ng,g=a.Ee,e?(a.Ya&&a.Ya!==h.Rc&&(f=f*h.Rc/a.Ya|0,g=g*h.Rc/a.Ya|0),e.fillStyle=h.Re[d],
e.fillRect(b,c+f,h.Qc,g)):(a.Ya&&a.Ya!==a.Ka&&(f=f*a.Ka/a.Ya|0,g=g*a.Ka/a.Ya|0),a.ea.fillStyle=h.Re[d],a.ea.fillRect(b,c+f,a.Ja,g)))}
function rn(a,b){if(a.la.ic){var c=!1,d=a.C;d&&(d!==a.A?d.gd&8&&(c=!0):d.Nd&32&&(c=!0));if(c||b){if(b)io(a);else if(void 0===a.fa)return;var e=!1;!(b||++a.Wg&15)&&0<=a.cb&&(a.cb++,e=!0);var f=0,g=a.eg,h=a.ob,c=h,k=c+a.ac;19<=a.Ga&&(h=c=655360,k=c+65536);if(jo(a,d)&8||d.qf&&d.qf<d.ni){var m=(d.mb[12]<<8)+d.mb[13]|0;d.Ld!==m&&(d.Ld=m,ho(a));d.qf=0}m=d.Ld;a.U&&(m<<=1);c+=m;m=a.Ub;5<=a.Ua&&d.mb[19]&&d.mb[19]<<1!=d.mb[1]+1&&(a.Db=d.mb[19]<<(a.U?1:d.mb[20]&64?3:4),m=(a.Db*(a.W-1)+a.L)/a.jd|0,7>=a.Ga&&(m<<=
1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.Ea){b=a.ga;for(var n=!0,t=c>>>b.La;0<m&&t<b.sa.length;)b.sa[t].Wa&&(b.sa[t].Wa=n=!1,b.sa[t].tj=!0),m-=b.Sb,t++;b=n}if(b){if(!e)return;if(!a.Pa){f=a.ua-d.Ld;if(0>f)return;g=f+1}}if(a.U){if(a.Oa[a.U]){d=f;f=0;e=a.Pa=0;h=1048575;m=a.C.gd&32;5<=a.Ua&&(m=a.C.Tc[16]&8);b=a.ua-a.C.Ld;m&&(e=32768,h&=~e,a.cb&2||(h&=-65537));for(c+=d<<1;c<k&&d<g;)m=jc(a.ga,c),m|=65536,m&e&&(a.Pa++,m&=h),d==b&&(m|=a.cb&1?131072:0),a.Ea&&m===a.fa[d]||(eo(a,d%a.L,d/a.L|0,m,a.gb),
a.fa[d]=m,f++),c+=2,d++;a.Ea=!0;f&&a.gb&&a.ea.drawImage(a.fb,0,0,a.bc,a.tc,a.le,a.me,a.Cd,a.Fd);bo(a)}}else if(a.sd){var g=k,q,k=c,d=a.Pa=0,f=a.jd,e=16==f?65536:196608,h=16==f?1:2;b=Yn(a,h);for(var n=m=0,t=a.L,A=0,F=a.W,C=0;k<g;){q=jc(a.ga,k);if(a.Ea&&q===a.fa[d])m+=f;else{a.fa[d]=q;q=q>>8|(q&255)<<8;var D=e,L=16;m<t&&(t=m);for(var G=0;G<f;G++){var ga=(q&(D>>=h))>>(L-=h);ao(a.sb,m++,n,b[ga])}m>A&&(A=m);n<F&&(F=n);n>=C&&(C=n+1)}k+=2;d++;if(m>=a.L){m=0;n+=2;if(n>a.W)break;n==a.W&&(n=1,k=c+a.sd)}}a.Ea=
!0;t<a.L&&(a.gb.putImageData(a.sb,0,0,t,F,A-t,C-F),a.ea.drawImage(a.fb,0,0,a.L,a.W,0,0,a.ra,a.Da))}else if(a.hf){g=h;f=a.Pa=0;e=Yn(a,8);h=a.C.rd;m=b=0;n=a.L;t=0;A=a.W;F=0;C=a.C.Me[4]&8?4:1;q=a.C.Tc[19]&15;for(D=a.Db>a.L?a.Db-a.L-q>>3:0;c<k;){d=h[c-g];G=4;q||(a.Ea&&d===a.fa[f]?(b+=G,G=0):a.fa[f]=d,f++);if(G){b<n&&(n=b);for(L=0;L<G;L++)ao(a.sb,b++,m,e[d&255]),d>>=8;b>t&&(t=b);m<A&&(A=m);m>=F&&(F=m+1)}c+=C;if(b>=a.L){b=0;if(++m>a.W)break;c+=D}}q||(a.Ea=!0);n<a.L&&(a.gb.putImageData(a.sb,0,0,n,A,t-n,
F-A),a.ea.drawImage(a.fb,0,0,a.L,a.W,0,0,a.ra,a.Da))}else{g=h;d=a.Pa=0;f=Yn(a);e=a.C.rd;b=h=0;m=a.L;n=0;t=a.W;A=0;F=a.C.Tc[19]&15;for(C=a.Db>a.L?a.Db-a.L-F>>3:0;c<k;){q=c++-g;q=e[q];L=8;F?h?(D=a.L-h,L>D&&(L=D)):(q<<=F,L-=F,a.Ea=!1):(a.Ea&&q===a.fa[d]?(h+=L,L=0):a.fa[d]=q,d++);if(L){h<m&&(m=h);for(D=0;D<L;D++)G=Tm[q&2155905152]||0,ao(a.sb,h++,b,f[G]),q<<=1;h>n&&(n=h);b<t&&(t=b);b>=A&&(A=b+1)}if(h>=a.L){h=0;if(++b>a.W)break;c+=C}}F||(a.Ea=!0);m<a.L&&(a.gb.putImageData(a.sb,0,0,m,t,n-m,A-t),a.ea.drawImage(a.fb,
0,0,a.L,a.W,0,0,a.ra,a.Da))}}}}function jo(a,b){var c=0;a=$c(a.F)-b.Eh;0>a&&(b.Eh=a,a=-a|0);a%b.zh>b.cn&&(c|=1);a%b.Ch>b.en&&(c|=9);b.ni=a/b.Ch|0;return c}l.wm=function(a,b){return ko(this,this.pa,a,b)};l.Xn=function(a,b,c){var d=this.pa;d.Qg=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};l.vm=function(a,b){return lo(this,this.pa,a,b)};l.Wn=function(a,b,c){mo(this,this.pa,a,b,c)};l.xm=function(a,b){return no(this,this.pa,b)};l.Yn=function(a,b,c){a=this.pa;x(this,a.port+4,b,c,"MODE");a.gd=b;xn(this,!1)};
l.ym=function(a,b){return oo(this,this.pa,b)};l.Mk=function(a,b,c){this.A.ig=this.A.ig&-4|b&3;x(this,a,b,c,"FEAT")};l.Vl=function(a,b){a=this.A.Nd;b&&!z(this)||x(this,960,null,b,"ATC.INDX",a);return a};l.ml=function(a,b){a=this.A.Tc[this.A.Nd&31];b&&!z(this)||x(this,960,null,b,"ATC."+this.A.$g[this.A.Nd&31],a);return a};
l.Lk=function(a,b,c){var d=this.A,e=d.Nd&32;if(d.Ze){d.Ze=!1;var f=d.Nd&31;if(16<=f||!e)c&&!z(this)||x(this,a,b,c,"ATC."+d.$g[f]),d.Tc[f]=b,ho(this,!1)}else d.Nd=b,x(this,a,b,c,"ATC.INDX"),d.Ze=!0,b&32&&!e&&vn(this,!0)&&rn(this,!0),a=(d.mb[12]<<8)+d.mb[13]|0,d.Ld!=a&&(d.Ld=a,ho(this)),d.qf=0};
l.Im=function(a,b){a=0;if(5==this.Ua)a=3-((this.A.vf&12)>>2),a=(this.Wc&1<<a)<<4-a;else{var c=this.A.uf[0];45!=(c&63)&&2880!=(c&4032)&&184320!=(c&258048)&&(a|=16)}a|=this.A.Tg&-17;this.A.Tg=a;x(this,962,null,b,"STATUS0",a);return a};l.Zn=function(a,b,c){this.A.vf=b;un(this);x(this,962,b,c,"MISC")};l.Jm=function(a,b){a=this.A.vi;x(this,963,null,b,"VGA_ENABLE",a);return a};l.io=function(a,b,c){this.A.vi=b;x(this,963,b,c,"VGA_ENABLE")};l.Gm=function(a,b){a=this.A.ae;x(this,964,null,b,"SEQ.INDX",a);return a};
l.fo=function(a,b,c){this.A.ae=b;x(this,964,b,c,"SEQ.INDX")};l.Fm=function(a,b){a=this.A.Me[this.A.ae];b&&!z(this)||x(this,965,null,b,"SEQ."+this.A.bh[this.A.ae],a);return a};l.eo=function(a,b,c){c&&!z(this)||x(this,965,b,c,"SEQ."+this.A.bh[this.A.ae]);this.A.Me[this.A.ae]=b;switch(this.A.ae){case 2:this.A.rb=Sm[b&15];break;case 4:go(this,fo(this))&&rn(this,!0)}};l.hm=function(a,b){a=this.A.ui;b&&!z(this)||x(this,966,null,b,"DAC.MASK",a);return a};
l.Gn=function(a,b,c){c&&!z(this)||x(this,966,b,c,"DAC.MASK");this.A.ui=b};l.im=function(a,b){a=this.A.Rg;b&&!z(this)||x(this,967,null,b,"DAC.STATE",a);return a};l.Hn=function(a,b,c){c&&!z(this)||x(this,967,b,c,"DAC.READ");this.A.pd=b;this.A.Rg=3;this.A.Lc=0};l.In=function(a,b,c){c&&!z(this)||x(this,968,b,c,"DAC.WRITE");this.A.pd=b;this.A.Rg=0;this.A.Lc=0};
l.gm=function(a,b){a=this.A.uf[this.A.pd]>>this.A.Lc&63;b&&!z(this)||x(this,969,null,b,"DAC.DATA["+u(this.A.pd)+"]["+u(this.A.Lc)+"]",a);this.A.Lc+=6;12<this.A.Lc&&(this.A.Lc=0,this.A.pd=this.A.pd+1&255);return a};l.Fn=function(a,b,c){a=this.A.uf[this.A.pd];c&&!z(this)||x(this,969,b,c,"DAC.DATA["+u(this.A.pd)+"]["+u(this.A.Lc)+"]");b=a&~(63<<this.A.Lc)|(b&63)<<this.A.Lc;a!==b&&(this.A.uf[this.A.pd]=b,ho(this,!1));this.A.Lc+=6;12<this.A.Lc&&(this.A.Lc=0,this.A.pd=this.A.pd+1&255)};
l.Km=function(a,b){a=this.A.ig;x(this,970,null,b,"FEAT",a);return a};l.Sn=function(a,b,c){this.A.Rk=b;x(this,970,b,c,"GRC2")};l.Lm=function(a,b){a=this.A.vf;x(this,972,null,b,"MISC",a);return a};l.Rn=function(a,b,c){this.A.Qk=b;x(this,972,b,c,"GRC1")};l.pm=function(a,b){a=this.A.$d;x(this,974,null,b,"GRC.INDX",a);return a};l.Qn=function(a,b,c){this.A.$d=b;x(this,974,b,c,"GRC.INDX")};l.om=function(a,b){a=this.A.Zd[this.A.$d];b&&!z(this)||x(this,975,null,b,"GRC."+this.A.ah[this.A.$d],a);return a};
l.Pn=function(a,b,c){c&&!z(this)||x(this,975,b,c,"GRC."+this.A.ah[this.A.$d]);this.A.Zd[this.A.$d]=b;switch(this.A.$d){case 0:this.A.Yf=Sm[b&15];this.A.pe=this.A.Yf&~this.A.Yd;break;case 1:this.A.Yd=~Sm[b&15];this.A.pe=this.A.Yf&~this.A.Yd;break;case 2:this.A.xh=Sm[b&15]&-2139062144;break;case 3:case 5:go(this,fo(this));break;case 4:this.A.mi=(b&3)<<3;break;case 6:xn(this,!1);break;case 7:this.A.yh=Sm[b&15]&-2139062144;break;case 8:this.A.Mb=b|b<<8|b<<16|b<<24}};
l.am=function(a,b){return ko(this,this.aa,a,b)};l.An=function(a,b,c){var d=this.aa;d.Qg=d.Ac;d.Ac=b&31;x(this,a,b,c,"CRTC.INDX")};l.$l=function(a,b){return lo(this,this.aa,a,b)};l.zn=function(a,b,c){mo(this,this.aa,a,b,c)};l.bm=function(a,b){return no(this,this.aa,b)};l.Bn=function(a,b,c){a=this.aa;x(this,a.port+4,b,c,"MODE");a.gd=b;xn(this,!1)};l.Zl=function(a,b){var c=this.aa.tf;b&&!z(this)||x(this,a,null,b,this.aa.type+".COLOR",c);return c};
l.yn=function(a,b,c){c&&!z(this)||x(this,a,b,c,this.aa.type+".COLOR");this.aa.tf!==b&&(this.aa.tf=b,ho(this,!1))};l.cm=function(a,b){return oo(this,this.aa,b)};function ko(a,b,c,d){var e;b.Ic&&(e=b.Ac);x(a,c,null,d,"CRTC.INDX",e);return e}function lo(a,b,c,d){var e;b.Ic&&b.Ac<b.wh&&(e=b.mb[b.Ac]);d&&!z(a)||x(a,c,null,d,"CRTC."+b.qg[b.Ac],e);return e}
function mo(a,b,c,d,e){if(b.Ac<b.wh){e&&!z(a)||x(a,c,d,e,"CRTC."+b.qg[b.Ac]);b.mb[b.Ac]=d;if(12==b.Ac||13==b.Ac)jo(a,b)&1?(c=(b.mb[12]<<8)+b.mb[13]|0,b.Ld!==c&&(b.Ld=c,ho(a))):b.qf||(b.qf=b.ni);(9==b.Ac&&8!=b.Qg||18==b.Ac&&223==d)&&xn(a,!0);yn(a)}}function no(a,b,c){var d=b.gd;x(a,b.port+4,null,c,"MODE",d);return d}function oo(a,b,c){var d=jo(a,b);b===a.A?(d|=b.ma&48^48,b.Ze=!1):d=(b.ma^=9)|240;b.ma=d;x(a,b.port+6,null,c,b===a.A?"STATUS1":"STATUS",d);return d}
var hn={948:Z.prototype.wm,949:Z.prototype.vm,952:Z.prototype.xm,954:Z.prototype.ym},jn={948:Z.prototype.Xn,949:Z.prototype.Wn,952:Z.prototype.Yn},kn={980:Z.prototype.am,981:Z.prototype.$l,984:Z.prototype.bm,985:Z.prototype.Zl,986:Z.prototype.cm},ln={980:Z.prototype.An,981:Z.prototype.zn,984:Z.prototype.Bn,985:Z.prototype.yn},mn={960:Z.prototype.Vl,961:Z.prototype.ml,962:Z.prototype.Im,964:Z.prototype.Gm,965:Z.prototype.Fm,974:Z.prototype.pm,975:Z.prototype.om},nn={954:Z.prototype.Mk,960:Z.prototype.Lk,
961:Z.prototype.Lk,962:Z.prototype.Zn,964:Z.prototype.fo,965:Z.prototype.eo,970:Z.prototype.Sn,972:Z.prototype.Rn,974:Z.prototype.Qn,975:Z.prototype.Pn,986:Z.prototype.Mk},on={963:Z.prototype.Jm,966:Z.prototype.hm,967:Z.prototype.im,969:Z.prototype.gm,970:Z.prototype.Km,972:Z.prototype.Lm},pn={963:Z.prototype.io,966:Z.prototype.Gn,967:Z.prototype.Hn,968:Z.prototype.In,969:Z.prototype.Fn};
Za(function(){for(var a=qb(document,"pcx86","video"),b=0;b<a.length;b++){var c=a[b],d=nb(c),e=document.createElement("canvas");if(!e||!e.getContext){c.innerHTML="<br/>Missing &lt;canvas&gt; support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=Ca().indexOf("MSIE")&&(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.onresize());var f=+(d.aspect||Na("aspect"));f&&.3<=f&&3.33>=f&&(Ya("onresize",function(a,b,c){return function(){b.style.height=(a.clientWidth/c|0)+"px"}}(c,e,f)),window.onresize());c.appendChild(e);f=document.createElement("textarea");La("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"));c.appendChild(f);var g=e.getContext("2d"),d=new Z(d,e,g,f,c);pb(d,c)}});
function po(a){this.V=a.adapter;switch(this.V){case 1:this.X=956;this.C=7;break;case 2:this.X=888;this.C=7;break;case 3:this.X=632;this.C=5;break;default:w("Unrecognized parallel adapter #"+this.V);return}this.A=this.B=null;db.call(this,"ParallelPort",a,po,4194304);a=a.binding;"console"==a?this.B="":ob(this,a,qo)}gb(po);var qo="buffer";l=po.prototype;l.Pb=function(a,b,c){switch(b){case qo:return this.qa[b]=this.A=c,!0}return!1};
l.Jc=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.N=Gb(a,"ChipSet");nc(b,this,ro,this.X);rc(b,this,so,this.X);ub(this)};l.hc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.gc=function(a){return a?this.save():!0};l.reset=function(){to(this)};l.save=function(){var a=new nf(this),b=0,c=[];c[b++]=this.L;c[b++]=this.Yb;c[b]=this.Df;a.set(0,c);return a.data()};l.restore=function(a){return to(this,a[0])};
function to(a,b){var c=0;b||(b=[0,0,0]);a.L=b[c++];a.Yb=b[c++];a.Df=b[c];return!0}l.jm=function(a,b){var c=this.L;x(this,a,null,b,"DATA",c);return c};l.Hm=function(a,b){var c=this.Yb;x(this,a,null,b,"STAT",c);return c};l.fm=function(a,b){var c=this.Df;x(this,a,null,b,"CTRL",c);return c};
l.Jn=function(a,b,c){x(this,a,b,c,"DATA");this.L=b;this.Yb|=64;a=!1;y(this,"transmitByte("+u(b)+")");this.A&&(8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0);if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}a&&(this.Yb&=-65);uo(this)};l.En=function(a,b,c){x(this,a,b,c,"CTRL");this.Df=b;uo(this)};
function uo(a){a.N&&a.C&&(a.Df&16&&!(a.Yb&64)?jg(a.N,a.C):ig(a.N,a.C))}var ro={0:po.prototype.jm,1:po.prototype.Hm,2:po.prototype.fm},so={0:po.prototype.Jn,2:po.prototype.En};Za(function(){for(var a=qb(document,"pcx86","parallel"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new po(d);pb(d,c)}});
function vo(a){this.Ca=a.adapter;switch(this.Ca){case 1:this.va=1016;this.ia=4;break;case 2:this.va=760;this.ia=3;break;default:w("Unrecognized serial adapter #"+this.Ca);return}this.V=this.W=null;this.Ga=a.tabSize;this.Ea=a.charBOL;this.ea=0;this.Ja=wo|xo;this.pa=!0;db.call(this,"SerialPort",a,vo,8388608);a=a.binding;"console"==a?this.W="":ob(this,a,yo);this.L=this.ua=this.Cc=null;this.exports={connect:this.zj,receiveData:this.hg,receiveStatus:this.ll}}gb(vo);var yo="buffer",wo=16,xo=32;l=vo.prototype;
l.bj=function(a,b,c){var d=null;a!=this.xd||this.L||(this.L=b,this.Cc=c,this.pa=!1,d=this);return d};l.Pb=function(a,b,c){var d=this;switch(b){case yo:return this.qa[b]=this.V=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),d.hg(b);return!0},c.onkeypress=function(a){a=a||window.event;d.hg(a.which||a.keyCode);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
l.Jc=function(a,b,c,d){this.X=a;this.ga=b;this.F=c;this.ha=d;this.N=Gb(a,"ChipSet");nc(b,this,zo,this.va);rc(b,this,Ao,this.va);ub(this)};
l.zj=function(a){if(!this.L){var b=Vc(this.X,"connection");if(b){var c=b.split("->");if(2==c.length){var d=qa(c[0]);if(d!=this.xd)return;c=qa(c[1]);if(this.L=lb(c)){var e=this.L.exports;if(e){var f=e.connect;f&&f.call(this.L,this.pa);if(this.ua=e.receiveData){this.pa=a;this.Cc=e.receiveStatus;this.status(this.ce+"."+d+" connected to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};
l.hc=function(a,b){if(!b)if(this.zj(this.pa),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.gc=function(a){return a?this.save():!0};l.reset=function(){Bo(this)};l.save=function(){var a=new nf(this),b=0,c=[];c[b++]=this.ya;c[b++]=this.Da;c[b++]=this.fa;c[b++]=this.ka;c[b++]=this.U;c[b++]=this.C;c[b++]=this.ra;c[b++]=this.B;c[b++]=this.A;c[b]=this.aa;a.set(0,c);return a.data()};l.restore=function(a){return Bo(this,a[0])};
function Bo(a,b){var c=0;b||(b=[0,0,384,0,1,0,0,96,a.Ja,[]]);a.ya=b[c++];a.Da=b[c++];a.fa=b[c++];a.ka=b[c++];a.U=b[c++];a.C=b[c++];a.ra=b[c++];a.B=b[c++];a.A=b[c++];a.aa=b[c];return!0}l.hg=function(a){if("number"==typeof a)this.aa.push(a);else if("string"==typeof a)for(var b=0;b<a.length;b++)this.aa.push(a.charCodeAt(b));else this.aa=this.aa.concat(a);Co(this);return!0};l.ll=function(a){var b=this.A;this.A&=~(wo|xo);a&32&&(this.A=this.A|wo|1);a&64&&(this.A=this.A|xo|2);b!=this.A&&Do(this)};
function Co(a){0<a.aa.length&&!(a.B&1)&&(a.ya=a.aa.shift(),a.B|=1);Do(a)}l.Em=function(a,b){var c=this.C&128?this.fa&255:this.ya;x(this,a,null,b,this.C&128?"DLL":"RBR",c);this.B&=-2;Co(this);return c};l.qm=function(a,b){var c=this.C&128?this.fa>>8:this.ka;x(this,a,null,b,this.C&128?"DLM":"IER",c);return c};l.rm=function(a,b){var c=this.U;x(this,a,null,b,"IIR",c);return c};l.sm=function(a,b){var c=this.C;x(this,a,null,b,"LCR",c);return c};l.um=function(a,b){var c=this.ra;x(this,a,null,b,"MCR",c);return c};
l.tm=function(a,b){var c=this.B;x(this,a,null,b,"LSR",c);return c};l.zm=function(a,b){var c=this.A;this.A&=-4;x(this,a,null,b,"MSR",c);return c};
l.ho=function(a,b,c){x(this,a,b,c,this.C&128?"DLL":"THR");if(this.C&128)this.fa=this.fa&-256|b;else{this.Da=b;this.B&=-97;a=!1;y(this,"transmitByte("+u(b)+")");this.ua&&this.ua.call(this.L,b)&&(a=!0);if(this.V)13==b?this.ea=0:8==b?(this.V.value=this.V.value.slice(0,-1),0<this.ea&&this.ea--):(a=(a=13!=b&&10!=b?ra[b]:null)?"<"+a+">":String.fromCharCode(b),c=a.length,32>b&&1==c&&(c=0),9==b&&(b=this.Ga||8,c=b-this.ea%b,this.Ga&&(a=pa("",c))),this.Ea&&!this.ea&&c&&(a=String.fromCharCode(this.Ea)+a),this.V.value+=
a,this.V.scrollTop=this.V.scrollHeight,this.ea+=c),a=!0;else if(null!=this.W){if(10==b||1024<=this.W.length)this.O(this.W),this.W="";10!=b&&(this.W+=String.fromCharCode(b));a=!0}a&&(this.B|=96)}};l.Tn=function(a,b,c){x(this,a,b,c,this.C&128?"DLM":"IER");this.C&128?this.fa=this.fa&255|b<<8:this.ka=b};l.Un=function(a,b,c){x(this,a,b,c,"LCR");this.C=b};
l.Vn=function(a,b,c){var d=b^this.ra;x(this,a,b,c,"MCR");this.ra=b;d&3&&this.Cc&&(a=0,a=this.pa?a|(b&2?32:0)|(b&1?320:0):a|(b&2?16:0)|(b&1?1048576:0),this.Cc.call(this.L,a))};function Do(a){var b=-1;a.B&1&&a.ka&1?b=4:a.A&3&&a.ka&8&&(b=0);0<=b?(a.U&=-8,a.U|=b,a.N&&a.ia&&jg(a.N,a.ia,100)):(a.U|=1,a.N&&a.ia&&ig(a.N,a.ia))}
var zo={0:vo.prototype.Em,1:vo.prototype.qm,2:vo.prototype.rm,3:vo.prototype.sm,4:vo.prototype.um,5:vo.prototype.tm,6:vo.prototype.zm},Ao={0:vo.prototype.ho,1:vo.prototype.Tn,3:vo.prototype.Un,4:vo.prototype.Vn};Za(function(){for(var a=qb(document,"pcx86","serial"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new vo(d);pb(d,c)}});function Eo(a){db.call(this,"Mouse",a,Eo,16777216);if(this.ka=a.serial)this.pa="SerialPort";this.ia=this.fa=this.Ic=!1;this.C=[];this.B=[];ub(this)}gb(Eo);var tn=0;l=Eo.prototype;
l.Jc=function(a,b,c,d){this.X=a;this.ga=b;this.F=c;this.ha=d;for(b=null;b=Gb(a,"Video",b);)this.C.push(b)};l.hc=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.pa&&!this.N){for(a=null;(a=Gb(this.X,this.pa,a))&&(!a.bj||!(this.N=a.bj(this.ka,this,this.kl))););if(this.N)for(this.B=[],a=0;a<this.C.length;a++)b=this.C[a],b.V=this,(b=b.X)&&this.B.push(b);else w(this.id+": "+this.pa+" "+this.ka+" unavailable")}this.Ic?Fo(this):Go(this)}return!0};
l.gc=function(a){return a?this.save():!0};l.reset=function(){Ho(this)};l.save=function(){var a=new nf(this),b=0,c=[];c[b++]=this.Ic;c[b++]=this.L;c[b++]=this.V;c[b++]=this.U;c[b++]=this.W;c[b++]=this.aa;c[b++]=this.ea;c[b]=this.A;a.set(0,c);return a.data()};l.restore=function(a){return Ho(this,a[0])};
function Ho(a,b){var c=0;b||(b=[!1,-1,-1,0,0,!1,!1,0]);var d=b[c++];a.Ic=d;a.L=b[c++];a.V=b[c++];a.U=b[c++];a.W=b[c++];a.aa=b[c++];a.ea=b[c++];a.A=b[c];a.A&3&&(a.A=(a.A&1?1048576:0)|(a.A&2?16:0));return!0}l.Zf=function(a){this.fa=a};function Fo(a){if(!a.ia)for(var b=0;b<a.B.length;b++)Io(a,a.B[b])&&(a.ia=!0)}function Go(a){if(a.ia)for(var b=0;b<a.B.length;b++){var c=a.B[b];c&&(c.style.cursor="auto")}}
function Io(a,b){return b?(b.addEventListener("mousemove",function(b){Jo(a,b)},!1),b.addEventListener("mousedown",function(b){Jo(a,b,!0)},!1),b.addEventListener("mouseup",function(b){Jo(a,b,!1)},!1),b.style.cursor="none",!0):!1}
function Jo(a,b,c){if(void 0!==c){var d;!(d=!1!==a.fa)&&(d=a.C.length)&&(d=a.C[0],d=d.Ai?d.Fe(!0):!1);d||(a.fa=null);a.he(b.button,c)}else{if(0>a.L||0>a.V)a.L=b.clientX,a.V=b.clientY;a.fa?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.clientX-a.L,d=b.clientY-a.V);a.L=b.clientX;a.V=b.clientY;a.Kf(c,d,a.L,a.V)}}
l.he=function(a,b){if(this.Ic&&this.F&&this.F.la.Ib){var c="mouse button"+a+" "+(b?"dn":"up");switch(a){case tn:if(this.aa!=b){this.aa=b;Ko(this,c);return}break;case 2:if(this.ea!=b){this.ea=b;Ko(this,c);return}}y(this,c+": ignored")}};l.Kf=function(a,b,c,d){this.Ic&&this.F&&this.F.la.Ib&&(a||b)&&(this.U=a,this.W=b,Ko(this,null,c,d))};
function Ko(a,b,c,d){var e=64|(a.aa?32:0)|(a.ea?16:0)|(a.W&192)>>4|(a.U&192)>>6,f=a.U&63,g=a.W&63;z(a,8388608)&&y(a,(b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+u(e)+","+u(f)+","+u(g)+"]",0,!0);a.N.hg([e,f,g]);a.U=a.W=0}
l.kl=function(a){var b=1048592==(a&1048592);if(b){if(!this.Ic){var c=!1;this.A&16||(this.reset(),y(this,"serial mouse reset"),c=!0);this.A&1048576||(y(this,"serial mouse ID requested"),c=!0);c&&(this.N.hg([77,77]),y(this,"serial mouse ID sent"));Fo(this);this.Ic=b}}else this.Ic&&(y(this,"serial mouse inactive"),Go(this),this.Ic=b);this.A=a};Za(function(){for(var a=qb(document,"pcx86","mouse"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new Eo(d);pb(d,c)}});
function Lo(a,b,c){db.call(this,"Disk",{id:a.ce+".disk"+r(++Mo,4)},Lo,2097152);this.controller=a;this.X=a.X;this.ha=a.ha;this.B=b;this.ga=b.name;this.cf=b.cf;this.yg=this.N=!1;No(this,c,b.Bb,b.ub,b.lb,b.Va);this.U=[];this.ea=[];this.L=null;this.ia=0;this.fa=!1;ub(this)}var Mo=0;gb(Lo);function Oo(a,b,c,d,e,f){this.za=a;this.kc=c;this.dh=d;this.gj=e;this.xe=f}var Po=[0,2],Qo=[24,2],Ro=[60,4],So=[0,2],To=[4,2],Uo=[6,2],Vo=[28,2],Wo=[32,2],Xo=[34,2],Yo=[38,2],Zo=[44,4],$o=[50,2];
function ap(a,b,c){var d;c=c||2;var e=b&511,f=bp(a.za,a.xe[b>>9]);if(f){if(e+c<=f.length)return cp(a.za,f,e,c);for(e=d=0;c--;)d|=ap(a,b++,1)<<e,e+=8}return d}function dp(a,b,c){return ap(a,b[0]+(c||0),b[1])}function ep(a,b,c){for(var d=0;!c||b<c;){var e=ap(a,b,1);if(!e)break;var f;f=a;var g=b+1,h=e,k="";for(h||(h=-1);h--;){var m=ap(f,g++,1);if(!m)break;k+=String.fromCharCode(m)}f=k;if(!f)break;b+=1+e;if(d){if(e=ap(a,b),g=a.A[e])g=g[0],a.yd[g]&&a.yd[g].we[e].push(f)}else c||(a.kg=f);b+=2;d++}}
Oo.prototype.xj=function(a,b){var c=null;if(this.yd)for(var d in this.yd){var e=this.yd[d];if(a>=e.oi&&a<=e.Ik){d=a-=e.oi;var f,g;for(g in e.we){var h=e.we[g],k=a-h[0];if(!k){c=this.kg+"!"+h[1];break}b&&0<k&&k<d&&(f=h,d=k)}!c&&f&&(c=this.kg+"!"+f[1]+"+"+v(d));break}}return c||this.kc+"+"+r(a,8,!0)};l=Lo.prototype;l.Jc=function(a,b,c,d){this.ha=d};l.hc=function(a,b){b||!this.yg||this.N||(ub(this,!1),this.load(this.ga,this.V,null,this.Bl,this));return!0};l.Bl=function(){ub(this,!0)};
l.gc=function(a,b){if(this.N){var c,d=0;if(this.fa&&!Ea("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=fp(this,!1);)if(d=c[0]){this.controller.Na('Unable to save "'+this.ga+'" (error '+d+")");break}b&&this.N&&(b="action=close&volume="+this.V,b+="&machine="+this.controller.gf(),b+="&user="+this.controller.ie(),Aa(Ba()+"/api/v1/disk?"+b,null,!0),this.N=!1);!d&&a&&this.controller.Na(this.ga+" saved")}return!0};
function No(a,b,c,d,e,f){a.mode=b;a.Bb=c;a.ub=d;a.lb=e;a.Va=f;a.A=[];if("preload"!=a.mode){b=Array(a.Bb);for(c=0;c<b.length;c++){d=Array(a.ub);for(e=0;e<d.length;e++){f=Array(a.lb);for(var g=1;g<=f.length;g++)f[g-1]=gp(null,c,e,g,a.Va,"local"==a.mode?0:null);d[e]=f}b[c]=d}a.A=b}a.aa=null}
l.load=function(a,b,c,d,e){var f=b;if(this.W)return!0;this.ga=a;this.V=b;this.Ug=ja(b);var g=this;this.W=d;this.ka=e||this.controller;if(c){var h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ba[c];if(d){g.Bb=d[0];g.ub=d[1];g.lb=d[2];g.Va=d[3]||512;b=g.Va>>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.Bb);for(c=0;c<g.A.length;c++)for(var f=g.A[c]=Array(g.ub),F=0;F<f.length;F++)for(var C=f[F]=Array(g.lb),D=0;D<C.length;D++){for(var L=gp(null,c,F,D+1,g.Va,0),G=L.data,ga=0;ga<
b;ga++,e+=4)var S=G[ga]=a.getInt32(e,!0),d=d+S&-1;L.$c=b;C[D]=L}g.aa=d;b=g}else g.Na("Unrecognized disk format ("+c+" bytes)");g.W&&(g.W.call(g.controller,g.B,b,g.ga,g.V),g.W=null)};h.readAsArrayBuffer(c);return!0}0>b.indexOf("/api/v1/dump")&&(a=ka(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=hp(this,b),this.yg=!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"):ma(b,
"/")&&(c="dir"),f=Ba()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.cf?"":d)+"&format=json"));return!!Aa(f,null,!0,function(a,b,c){ip(g,a,b,c)})};
function ip(a,b,c,d){var e=null;a.ff=!1;var f=0>d&&a.X&&!a.X.la.ic;if(a.yg)d?a.controller.Na('Unable to connect to disk "'+a.V+'" (error '+d+": "+c+")",f):(a.N=!0,jp(a),e=a);else if(d)a.controller.Na('Unable to load disk "'+a.ga+'" (error '+d+": "+b+")",f);else{ib(a.controller.ce,b,c);try{if(0<ja(a.Ug,!0).toLowerCase().indexOf("-readonly"))a.ff=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.ff=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.ga]:
h=0>c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)w(h[0]);else{a.Bb=h.length;a.ub=h[0].length;a.lb=h[0][0].length;var k=h[0][0][0];a.Va=k&&k.length||512;for(d=c=0;d<a.Bb;d++)for(f=0;f<a.ub;f++)for(g=0;g<a.lb;g++)if(k=h[d][f][g]){var m=k.length;void 0===m&&(m=k.length=512);var m=m>>2,n=k.pattern;void 0===n&&(n=k.pattern=0);var t=k.data;if(void 0===t){var q=k.bytes;if(void 0!==q&&q.length){for(var A=
m<<2,F=q.length;F<A;F++)q[F]=n;kp(k,q,0)}else t=[],n=k.pattern=n|n<<8|n<<16|n<<24,k.data=t;delete k.bytes}gp(k,d,f);for(A=0;A<t.length;A++)c=c+t[A]&-1}a.A=h;a.aa=c;jp(a);e=a}else w("Empty disk image: "+a.ga)}catch(C){w("Disk image error ("+b+"): "+C.message)}}a.W&&(a.W.call(a.ka,a.B,e,a.ga,a.V),a.W=null)}
function jp(a){var b,c,d={},e;if(a.C&&a.C.length)for(b=a.A,c=0;c<b.length;c++)for(var f=0;f<b[c].length;f++)for(e=0;e<b[c][f].length;e++){var g=b[c][f][e];g&&(delete g.file,delete g.hn)}a.C=[];d.cg=d.Jf=0;b=a.Bb*a.ub*a.lb*a.Va;a.N&&a.log("ignore any synchronous XMLHttpRequest warnings here (for now)");if(e=bp(a,0)){d.Va=cp(a,e,11,2);if(d.Va!=a.Va){f=!1;d.If=1;d.Gg=12;d.th=d.If+2;d.Mf=1;d.Va=a.Va;if(163840==b&&254==lp(a,d,0,0))d.Jf=320,d.Dh=64,f=!0;else if(327680==b&&255==lp(a,d,0,0))d.Jf=640,d.Dh=
112,d.Mf++,f=!0;else for(c=446,b=0;4>b;b++){if(128==cp(a,e,c+0,1)){d.cg=cp(a,e,c+8,4);(e=bp(a,d.cg))&&(f=!0);break}c+=16}if(!f)return}d.Jf||(d.Jf=cp(a,e,19,2)||cp(a,e,32,4),d.If=cp(a,e,14,2),d.th=d.If+cp(a,e,22,2)*cp(a,e,16,1),d.Dh=cp(a,e,17,2),d.Mf=cp(a,e,13,1));d.rh=d.th+((32*d.Dh+(d.Va-1))/d.Va|0);d.bn=(d.Jf-d.rh)/d.Mf|0;d.Gg=4084>=d.bn?12:16;d.Il=12==d.Gg?4086:65526;b=[];for(e=d.th;e<d.rh;e++)b.push(d.cg+e);mp(a,d,a.Ug,"",b);for(b=0;b<a.C.length;b++){d=a.C[b];for(e=c=0;e<d.xe.length;e++){var f=
d.xe[e],g=c,h=a.ub*a.lb,k=f%h,m=k/a.lb|0,k=k%a.lb,n=void 0,t=void 0,q=void 0;(n=a.A[f/h|0])&&(t=n[m])&&(q=t[k])&&!q.file&&(q.file=d,q.hn=g);c+=a.Va}e=d;if((ma(e.kc,".EXE")||ma(e.kc,".DLL")||ma(e.kc,".DRV"))&&23117==dp(e,Po)&&64==dp(e,Qo)&&(c=dp(e,Ro),17742==dp(e,So,c))){m=dp(e,Vo,c);g=dp(e,Xo,c);h=dp(e,$o,c);if(g&&m){d=e;f=g+c;g=m;h=h||0;m=1;d.yd=[];for(d.A=[];g--;){if(k=ap(d,f)<<h)n=ap(d,f+2)||65536,d.yd[m++]={oi:k,Ik:k+n-1,we:[]};f+=8}d.yd[254]={oi:0,Ik:0,we:[]}}g=dp(e,To,c);h=dp(e,Uo,c);if(g&&
h)for(d=e,f=g+=c,g+=h,h=1;f<g;){k=ap(d,f);m=k&255;if(!m)break;k>>=8;f+=2;if(k)for(;m--;)ap(d,f,1),254>=k?(n=k,t=ap(d,f+1),f+=3):(n=ap(d,f+3,1),t=ap(d,f+4),f+=6),d.yd[n]&&(d.yd[n].we[h]=[t]),d.A[h]=[n,t],h++;else h+=m}(g=dp(e,Yo,c))&&ep(e,g+c);g=dp(e,Zo,c);h=dp(e,Wo,c);g&&h&&ep(e,g,g+h)}}}}
function mp(a,b,c,d,e){var f,g=a.C.length,h=b.Va/32|0;b.np=d+"\\";for(var k=0;k<e.length;k++)for(var m=e[k],n=0;n<h;n++){var t=a,q=b;f=n;q.te&&q.ri&&q.ri==m||(q.ri=m,q.te=bp(t,q.ri));if(q.te){f*=32;var A=cp(t,q.te,f,1);if(A){if(229==A)q.kc=null;else{q.kc=qa(np(t,q.te,f+0,8));A=qa(np(t,q.te,f+8,3));A.length&&(q.kc+="."+A);q.dh=cp(t,q.te,f+11,1);q.gj=cp(t,q.te,f+28,2);q.Hl=cp(t,q.te,f+26,2);f=q;var A=[],F=q.Hl;if(F){do{if(2>F)break;for(var C=q.rh+(F-2)*q.Mf,D=0;D<q.Mf;D++)A.push(q.cg+C++);F=lp(t,q,
F,0)|lp(t,q,F,1)}while(F<=q.Il)}f.xe=A}f=!0}else f=!1}else f=!1;if(!f){k=e.length;break}null!=b.kc&&"."!=b.kc&&".."!=b.kc&&(f=new Oo(a,0,b.kc,b.dh,b.gj,b.xe),a.C.push(f))}for(e=a.C.length;g<e;g++)f=a.C[g],f.dh&16&&f.xe.length&&mp(a,b,c,d+"\\"+f.kc,f.xe)}function lp(a,b,c,d){var e=0,f=8*b.Va;c=b.Gg*c+(d?8:0);var g=c/f|0;b.wi&&b.sh&&b.sh==b.If+g||(b.sh=b.If+g,b.wi=bp(a,b.cg+b.sh));b.wi&&(c=c%f|0,e=cp(a,b.wi,c>>3,1),d?e=16==b.Gg?e<<8:c&7?e<<4:(e&15)<<8:c&7&&(e>>=4));return e}
function bp(a,b){var c=a.ub*a.lb,d=b/c|0;return d<a.Bb?(b%=c,a.seek(d,b/a.lb|0,b%a.lb+1)):null}function cp(a,b,c,d){for(var e=0,f=0;d--;){var g=a.read(b,c++);if(0>g)break;e|=g<<f;f+=8}return e}function np(a,b,c,d){for(var e="";d--;){var f=a.read(b,c++);if(0>=f)break;e+=String.fromCharCode(f)}return e}function gp(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.Jl=b;a.Kl=c;a.ud=a.$c=0;a.Wa=!1;return a}
function hp(a,b){b="action=open&volume="+b+("&mode="+a.mode);b+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Va;b+="&machine="+a.controller.gf();b+="&user="+a.controller.ie();return Ba()+"/api/v1/disk?"+b}
function op(a,b,c,d,e,f,g){if(a.N){var h;h="action=read&volume="+a.V;h+="&chs="+a.Bb+":"+a.ub+":"+a.lb+":"+a.Va;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.controller.gf());h+="&user="+a.controller.ie();Aa(Ba()+"/api/v1/disk?"+h,null,f,function(h,m,n){h=[b,c,d,e,f,g];var k=!1,q=h[0],A=h[1],F=h[2],C=h[3];if(!n){m=JSON.parse(m);for(k=0;C--;){var D=a.seek(q,A,F,!0);if(!D)break;kp(D,m,k);k+=D.length;F++}k=h[4]}(h=h[5])&&h(n,k)})}else g&&g(-1,!1)}
function pp(a,b,c,d,e,f,g){if(a.N){var h={};a.fa=!0;h.action="write";h.volume=a.V;h.chs=a.Bb+":"+a.ub+":"+a.lb+":"+a.Va;h.addr=b+":"+c+":"+d+":"+e;h.machine=a.controller.gf();h.user=a.controller.ie();h.data=JSON.stringify(f);Aa(Ba()+"/api/v1/disk",h,g,function(f,h,n){var k=[b,c,d,e,g];f=k[0];h=k[1];var m=k[2],A=k[3],k=k[4];a.fa=!1;if(0<=f&&f<a.A.length&&0<=h&&h<a.A[f].length)for(--m;0<A--&&0<=m&&m<a.A[f][h].length;m++){var F=a.A[f][h][m];n?qp(a,F,!1):F.Wa||(F.ud=F.$c=0)}k&&rp(a)})}return!1}
function qp(a,b,c){b.Wa=!0;var d=a.U.indexOf(b);0<=d&&(a.U.splice(d,1),a.ea.splice(d,1));a.U.push(b);a.ea.push(ta());c&&rp(a)}function rp(a){if(a.U.length){var b=a.ea[0]+2E3;a.L&&a.ia<b&&(clearTimeout(a.L),a.L=null);if(!a.L){var c=ta(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.L=setTimeout(function(){fp(a,!0)},b);a.ia=c+b}}else a.L&&(clearTimeout(a.L),a.L=null)}
function fp(a,b){b&&(a.L=null);var c=a.U[0];if(c){for(var d=c.Jl,e=c.Kl,c=c.sector,f=0,g=[],h=c-1;h<a.A[d][e].length;h++){var k=a.A[d][e][h];if(!k.Wa)break;var m=a.U.indexOf(k);a.U.splice(m,1);a.ea.splice(m,1);g=g.concat(sp(k));k.Wa=!1;f++}a=pp(a,d,e,c,f,g,b);return b||a}return!1}l.info=function(){return this.A.length?[this.A.length,this.A[0].length,this.A[0][0].length,this.A[0][0][0].length]:[0,0,0,0]};
l.seek=function(a,b,c,d,e){var f=null,g=this.B,h=this.A[a];if(h){var k=h[b];if(!k&&g.fh&&b<g.ub)for(k=h[b]=Array(g.fe),h=0;h<k.length;h++)k[h]=gp(null,a,b,h+1,g.Hb,0);if(k){for(h=0;h<k.length;h++)if(k[h]&&k[h].sector==c){f=k[h];if(null===f.pattern)if(d)f.pattern=0;else{for(d=1;++h<k.length;)null===k[h].pattern&&d++;op(this,a,b,c,d,!!e,function(a,b){a&&(f=null);e&&e(f,b)});return e?null:f}break}!f&&g.fh&&9==g.xb&&(f=k[h]=gp(null,a,b,g.xb,g.Hb,0))}}e&&e(f,!1);return f};
function kp(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 sp(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}l.read=function(a,b){var c=-1;if(a&&b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c};
l.write=function(a,b,c){if(this.ff)return!1;if(b<a.length){if(c!=this.read(a,b,!0)){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.$c?f<a.ud?(a.$c+=a.ud-f,a.ud=f):f>=a.ud+a.$c&&(a.$c+=f-(a.ud+a.$c)+1):(a.ud=f,a.$c=1);d[f]=d[f]&~(255<<b)|c<<b;this.N&&qp(this,a,!0)}return!0}return null};function tp(a){for(var b="",c=0,d;d=bp(a,c++);)for(var e=0,f=d.length;e<f;e++)b+=String.fromCharCode(cp(a,d,e,1));return btoa(b)}
l.save=function(){var a=0,b=[];b[a++]=[this.V,this.aa,this.Bb,this.ub,this.lb,this.Va];if(!this.N&&!this.ff)for(var c=this.A,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&&g.$c){for(var h=[],k=0,m=g.ud,n=g.ud+g.$c;m<n;)h[k++]=g.data[m++];b[a++]=[d,e,f,g.ud,h]}}return b};
l.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.A.length&&6<=e.length?No(this,"local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.aa&&e[1]!=this.aa&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.aa+")",b=-2));for(this.A.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],k=g[f++],m=g[f++];if(h>=this.A.length||k>=this.A[h].length||m>=this.A[h][k].length){c="sector (CHS="+h+":"+k+":"+m+") out of range ("+
b+" changes applied)";b=-1;break}if(this.ff){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][m]){for(k=h.data.length;k<e;)h.data[k++]=h.pattern;k=0;h.ud=e;for(h.$c=f.length;e<g;)h.data[e++]=f[k++];b++}}}0>b?-2!=b&&this.controller.Na("Unable to restore disk '"+this.ga+": "+c):jp(this);return b};
l.toJSON=function(){var a;a=0;for(var b;b=bp(this,a++);)up(b);a=JSON.stringify(this.A,function(a,b){if("file"!=a)return b});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,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")};
function up(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}function vp(a){db.call(this,"FDC",a,vp,524288);this.dmaRead=this.el;this.dmaWrite=this.fl;this.dmaFormat=this.xl;this.U=a.autoMount||null;this.fa=a.sortBy||"name";"none"==this.fa&&(this.fa=null);this.B=[];this.ia=!La("Mobi")&&window&&"FileReader"in window}gb(vp);aa={};
var wp={3:{Ud:3,ge:0,name:aa.gp},4:{Ud:2,ge:1,name:aa.ep},5:{Ud:9,ge:7,name:aa.kp},6:{Ud:9,ge:7,name:aa.$o},7:{Ud:2,ge:0,name:aa.bp},8:{Ud:1,ge:2,name:aa.fp},10:{Ud:2,ge:7,name:aa.ap},13:{Ud:6,ge:7,name:aa.Xo},15:{Ud:3,ge:0,name:aa.cp}};l=vp.prototype;
l.Pb=function(a,b,c){var d=this;switch(b){case "listDisks":this.qa[b]=c;if(this.fa){b=[];for(a=0;a<c.options.length;a++)b.push(c.options[a]);b.sort(function(a,b){return"path"!=d.fa?a.text.localeCompare(b.text):a.value.localeCompare(b.value)});for(a=0;a<b.length;a++)try{c.options[a]=b[a]}catch(e){break}}c.onchange=function(){var a=d.qa.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){w("FDC option error: "+h.message)}b=g.desc;
void 0===b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.qa[b]=c,c.onchange=function(){var a=ea(c.value,10);null!=a&&xp(d,a)},!0;case "loadDisk":return this.qa[b]=c,c.onclick=function(){var a=d.qa.listDisks;a&&yp(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDisk":if(!this.ia){c.parentNode.removeChild(c);break}this.qa[b]=c;c.onclick=function(){var a=d.qa.listDrives;a&&a.options&&d.A&&((a=
d.A[ea(a.value,10)||0])?(a=a.za)?(a=Qa(tp(a),"octet-stream",!0,a.Ug.replace(".json",".img")),w(a)):d.Na("No diskette loaded in drive."):d.Na("No diskette drive selected."))};return!0;case "mountDisk":if(this.ia)return this.qa[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;yp(d,ja(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1};
l.Jc=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.X=a;this.N=Gb(a,"ChipSet");if((this.U=Vc(this.X,"autoMount")||this.U)&&"string"==typeof this.U)try{this.U=eval("("+this.U+")")}catch(e){w("FDC auto-mount error: "+e.message+" ("+this.U+")"),this.U=null}zp(this);nc(b,this,Ap);rc(b,this,Bp);Cp(this,"None","",!0);this.ia&&Cp(this,"Local Disk","?");Cp(this,"Remote Disk","??");Dp(this)||ub(this)};
l.hc=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.X.lh){this.B=[];for(a=0;a<this.A.length;a++)Ep(this,a,!0);Dp(this,!0)}}else if(!this.restore(a))return!1;if(a=this.qa.listDrives){for(;a.firstChild;)a.removeChild(a.firstChild);a.value="";for(b=0;b<this.ka;b++){var c=document.createElement("option");c.value=b;c.text=String.fromCharCode(65+b)+":";a.appendChild(c)}0<this.ka&&(a.value="0",xp(this,0))}}return!0};l.gc=function(a){return a?this.save():!0};l.reset=function(){zp(this)};
l.save=function(){var a=new nf(this);a.set(0,Fp(this));return a.data()};l.restore=function(a){return zp(this,a[0])};
function zp(a,b){var c=0,d,e=!0;b||(b=[0,0,128,Array(9),0,0,0,[]]);a.hb=b[c++];c++;a.ma=b[c++];a.V=b[c++];a.L=b[c++];a.C=b[c++];a.aa=b[c++];var f=b[c++];d=b[c++];null!=d&&(a.B=d);void 0===a.A&&(a.ka=4,a.N&&(a.ka=+Vk(a.N,wk,void 0)),a.A=Array(4));for(d=0;d<a.A.length;d++){var g=a.A[d];if(void 0===g){var g=a.A[d]={},h;if(a.N)a:{h=a.N;if(d<+Vk(h,wk,void 0)){if(!h.ia){h=360;break a}if(d<h.ia.length){h=h.ia[d];break a}}h=0}else h=0;switch(h){case 160:case 180:g.ub=1;default:g.Bb=40;g.lb=9;break;case 720:g.Bb=
80;g.lb=9;break;case 1200:g.Bb=80;g.lb=15;break;case 1440:g.Bb=80,g.lb=18}}var k=a,m=d,n=f[d],t=0;h=!0;g.hb=m;g.$e=g.bf=!1;n||(n=[192,!0,0,2,0]);"boolean"==typeof n[1]&&(n[1]=["Floppy Drive",g.Bb||40,g.ub||n[3],g.lb||9,g.Va||512,n[1],g.Fg,g.Rf,g.Sf]);g.Cb=n[t++];var q=n[t++];g.name=q[0];g.Bb=q[1];g.ub=q[2];g.lb=q[3];g.Va=q[4];g.cf=q[5];(g.Fg=q[6])?(g.Rf=q[7],g.Sf=q[8]):(g.Fg=g.Bb,g.Rf=g.ub,g.Sf=g.lb);g.kb=n[t++];g.ee=n[t++];g.Qb=n[t++];g.ee=100<=g.ee?g.ee-100:g.ee-g.Qb;g.xb=n[t++];g.fe=n[t++];g.Hb=
n[t++];g.eb=n[t++];g.pb=null;g.za||(g.Oe="");var A=n[t++];102==A&&(A=!1);"boolean"==typeof A?(q=n[t++],n=n[t],A?(t=k.A[m],Ep(k,m,!0,!0),t.bf=!0,m=new Lo(k,t,"preload"),k.pj(t,m,q,n,!0)):Gp(k,m,q,n,!0)?g.za&&n&&Hp(k,q,n,g.za):ub(k,!1)):void 0!==A&&g.za&&0>g.za.restore(A)&&(h=!1);h&&g.za&&void 0!==g.eb&&(g.pb=g.za.seek(g.Qb,g.kb,g.xb));h||(e=!1)}a.W=b[c++]||0;a.jc=b[c]||0;return e}
function Fp(a){var b=0,c=[];c[b++]=a.hb;c[b++]=0;c[b++]=a.ma;c[b++]=a.V;c[b++]=a.L;c[b++]=a.C;c[b++]=a.aa;for(var d=b++,e=0,f=[],g=0;g<a.A.length;g++){var h=e++,k=a.A[g],m=0,n=[];n[m++]=k.Cb;n[m++]=[k.name,k.Bb,k.ub,k.lb,k.Va,k.cf,k.Fg,k.Rf,k.Sf];n[m++]=k.kb;n[m++]=k.ee+100;n[m++]=k.Qb;n[m++]=k.xb;n[m++]=k.fe;n[m++]=k.Hb;n[m++]=k.eb;n[m++]=k.bf;n[m++]=k.Tk;n[m]=k.Oe;f[h]=n}c[d]=f;d=b++;for(e=0;e<a.A.length;e++)f=a.A[e],f.za&&Ip(a,f.Oe,f.za);c[d]=a.B;c[b++]=a.W;c[b]=a.jc;return c}
l.mj=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};l.Uk=function(a,b,c){if(a.za){var d=a.za.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.Qb=Math.floor(b/f),b%=f,a.kb=Math.floor(b/e),a.xb=b%e+1,a.Hb=c*d[3],a.Cb=0,!0}return!1};
function Dp(a,b){b||(a.ea=0);if(a.U)for(var c in a.U){var d=a.U[c],e=d.path||"",f;if(!(f=d.name))a:{if((f=a.qa.listDisks)&&f.options)for(var g=0;g<f.options.length;g++){var h=f.options[g];if(h.value==e){f=h.text;break a}}f=ja(e,!0)}if(e&&f&&(g=c.charCodeAt(0)-65,0<=g&&g<a.A.length)){!Gp(a,g,f,e,!0)&&b&&ub(a,!1);continue}a.Na("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}return!!a.ea}
function yp(a,b,c,d){var e,f=a.qa.listDrives;if(f&&!isNaN(e=ea(f.value,10))&&0<=e&&e<a.A.length)if(c)if("?"==c)a.Na('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=ja(c)}for(;0>Gp(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){var f=a,g=c,h;for(h=0;h<f.B.length;h++)if(f.B[h][1]==g){f.B.splice(h,1);break}Ep(a,e,!1,
!0)}}else Ep(a,e);else a.Na("Unable to load the selected drive")}function Gp(a,b,c,d,e,f){var g=a.A[b];if(d&&(d=d.replace("/disks/pc/","/disks/pcx86/"),g.Oe.toLowerCase()!=d.toLowerCase())){Ep(a,b,e,!0);if(g.$e)return a.Na("Drive "+b+" busy"),0;g.$e=!0;e&&(g.Ce=!0,a.ea++,z(a)&&y(a,"loading diskette '"+c+"'"));g.bf=!!f;return(new Lo(a,g,"preload")).load(c,d,f,a.pj)?1:0}return-1}
l.pj=function(a,b,c,d,e){var f;a.$e=!1;b&&(f=b.info(),b&&f[0]>a.Bb||f[1]>a.ub)&&(this.Na('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.hb)),b=null);b?(a.za=b,a.Tk=c,a.Oe=d,Hp(this,c,d,b),f=b.info(),this.W|=128,this.Na('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.hb),a.Ce||e),a.Fg=f[0],a.Rf=f[1],a.Sf=f[2],this.X&&this.X.wd()):a.bf=!1;a.Ce&&(a.Ce=!1,--this.ea||ub(this));xp(this,a.hb)};
function Cp(a,b,c,d){if((a=a.qa.listDisks)&&a.options){for(var e=0;e<a.options.length;e++)if(a.options[e].value==c)return;e=document.createElement("option");e.text=b;e.value=c;d&&a.childNodes[0]?a.insertBefore(e,a.childNodes[0]):a.appendChild(e)}}
function xp(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.qa.listDisks;a=a.qa.listDrives;if(d&&a&&d.options&&a.options&&(a=ea(a.value,10),c=c.bf?"?":c.Oe,!isNaN(a)&&a==b)){for(b=0;b<d.options.length;b++)if(d.options[b].value==c){d.selectedIndex!=b&&(d.selectedIndex=b);break}b==d.options.length&&(d.selectedIndex=0)}}}function Ep(a,b,c,d){var e=a.A[b];e.za&&(Ip(a,e.Oe,e.za),e.Tk="",e.Oe="",e.za=null,e.bf=!1,a.W|=128,d||a.Na("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||xp(a,b))}
function Hp(a,b,c,d){var e;for(e=0;e<a.B.length;e++)if(a.B[e][1]==c){d.restore(a.B[e][2]);return}a.B[e]=[b,c,[]]}function Ip(a,b,c){var d;for(d=0;d<a.B.length;d++)if(a.B[d][1]==b){a.B[d][2]=c.save();break}}l.Mn=function(a,b,c){x(this,a,b,c,"OUTPUT");b&4?this.aa&4||this.aa&8&&this.N&&jg(this.N,6):zp(this);this.aa=b};l.lm=function(a,b){x(this,a,null,b,"DIAG",80);return 80};l.nm=function(a,b){x(this,a,null,b,"STATUS",this.ma);return this.ma};
l.km=function(a,b){var c=0;this.L<this.C&&(c=this.V[this.L]);this.aa&8&&this.N&&ig(this.N,6);z(this)&&x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.ma&=-81,this.L=this.C=0);return c};
l.Ln=function(a,b,c){z(this)&&x(this,a,b,c,"DATA["+this.C+"]");this.C<this.V.length&&(this.V[this.C++]=b);a=this.V[0]&31;if(void 0!==wp[a]&&this.C>=wp[a].Ud){b=!1;this.L=0;a=Jp(this);var d,e,f,g,h=a&31;switch(h){case 3:Jp(this);Jp(this);Kp(this);break;case 4:c=Jp(this);this.hb=c&3;d=this.A[this.hb];Kp(this);Lp(this,(d.Cb&-16777216)>>>24);break;case 5:case 6:c=Jp(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];d.kb=b;c=d.Qb=Jp(this);e=Jp(this);f=d.xb=Jp(this);g=Jp(this);d.Hb=128<<g;d.fe=Jp(this);Jp(this);
Jp(this);6==h?(h=d,h.Cb=72,h.za&&(h.pb=null,h.Cb=0,this.N&&(zl(this.N,2,this,"dmaRead",h),rl(this.N,2)))):(h=d,h.Cb=72,h.za&&(h.za.ff?h.Cb=576:(h.pb=null,h.Cb=0,this.N&&(zl(this.N,2,this,"dmaWrite",h),rl(this.N,2)))));Mp(this,d,a,b,c,e,f,g);b=!0;break;case 7:c=Jp(this);this.hb=c&3;d=this.A[this.hb];d.Qb=d.ee=0;d.Cb=268435488;Kp(this);b=!0;break;case 8:d=this.A[this.hb];d.kb=0;Kp(this);Lp(this,d.hb|d.kb<<2|d.Cb&255);Lp(this,d.Qb);this.hb=this.hb+1&3;break;case 10:c=Jp(this);b=c>>2&1;this.hb=c&3;d=
this.A[this.hb];c=d.Qb;e=d.kb=b;f=d.xb=1;g=0;d.Cb=0;d.za&&(d.pb=d.za.seek(d.Qb,d.kb,d.xb))?g=d.pb.length>>8:d.Cb=72;Mp(this,d,a,b,c,e,f,g);b=!0;break;case 13:c=Jp(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];c=d.Qb;e=d.kb=b;f=1;g=Jp(this);d.Hb=128<<g;d.fe=Jp(this);Jp(this);d.cj=Jp(this);h=d;h.Cb=72;h.za&&(h.pb=null,h.Cb=0,this.N&&(h.We=0,h.md=Array(4),h.fh=!0,h.tg=0,zl(this.N,2,this,"dmaFormat",h),rl(this.N,2),h.fh=!1));Mp(this,d,a,b,c,e,f,g);b=!0;break;case 15:c=Jp(this),this.hb=c&3,d=this.A[this.hb],
d.kb=c>>2&1,c=Jp(this),d.Qb+=c-d.ee,0>d.Qb&&(d.Qb=0),d.Qb>=d.Bb&&(d.Qb=d.Bb-1),d.ee=c,d.Cb=32,d.Qb||(d.Cb|=268435456),Kp(this),b=!0}0<this.C&&(this.ma|=80);this.aa&8&&(!d||d.Cb&8||!b||this.N&&jg(this.N,6))}};l.mm=function(a,b){var c=this.W;this.W&=-129;x(this,a,null,b,"INPUT",c);return c};l.Kn=function(a,b,c){x(this,a,b,c,"CONTROL");this.jc=b};
function Mp(a,b,c,d,e,f,g,h){Kp(a);Lp(a,b.hb|b.kb<<2|b.Cb&255);Lp(a,(b.Cb&65280)>>>8);Lp(a,(b.Cb&16711680)>>>16);var k=0;if(e!=b.Qb||f!=b.kb)k=g=1;c&128&&(f^=k,d||(k=0));Lp(a,e+k);Lp(a,f);Lp(a,g);Lp(a,h)}function Jp(a){var b=a.V[a.L];a.L++;return b}function Kp(a){a.L=a.C=0}function Lp(a,b){a.V[a.C++]=b}l.el=function(a,b,c){void 0===b||0>b?this.Le(a,c):c(-1,!1)};l.fl=function(a,b){return void 0!==b&&0<=b?Np(a,b):-1};
l.xl=function(a,b){if(void 0!==b&&0<=b)a:if(a.Cb)a=-1;else{a.md[a.We++]=b;if(a.We==a.md.length){a.Qb=a.md[0];a.kb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var c=a.We=0;c<a.Hb;c++)if(0>Np(a,a.cj)){a=-1;break a}a.tg++}a.tg>=a.fe&&(b=-1);a=b}else a=-1;return a};l.Le=function(a,b){var c=-1,d=null,e=0;if(!a.Cb&&a.za){do{if(a.pb&&(e=a.eb,0<=(c=a.za.read(a.pb,a.eb++)))){d=a.pb;break}a.pb=a.za.seek(a.Qb,a.kb,a.xb);if(!a.pb){a.Cb=1088;break}a.eb=0;Op(a)}while(1)}b(c,!1,d,e)};
function Np(a,b){if(a.Cb||!a.za)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.pb=a.za.seek(a.Qb,a.kb,a.xb);if(!a.pb){a.Cb=8256;b=-1;break}a.eb=0;Op(a)}while(1);return b}function Op(a){a.xb++;a.xb>=a.Sf+1&&(a.xb=1,a.kb++,a.kb>=a.Rf&&(a.kb=0,a.Qb++))}var Ap={1009:vp.prototype.lm,1012:vp.prototype.nm,1013:vp.prototype.km,1015:vp.prototype.mm},Bp={1010:vp.prototype.Mn,1013:vp.prototype.Ln,1015:vp.prototype.Kn};
Za(function(){for(var a=qb(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new vp(d);pb(d,c)}});function Pp(a){db.call(this,"HDC",a,Pp,1048576);this.dmaRead=this.gl;this.dmaWrite=this.hl;this.dmaWriteBuffer=this.yl;this.dmaWriteFormat=this.zl;this.ua=[];this.Ea=a.drives;this.ia="at"==a.type}gb(Pp);
var Qp=["XTC","ATC","COMPAQ"],Rp=[{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],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];l=Pp.prototype;
l.Pb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.qa[b]=c,c.onclick=function(a){return function(){var b=d.A&&d.A[a];b&&b.za?(b=b.za,b=Qa(tp(b),"octet-stream",!0,b.Ug.replace(".json",".img")),w(b)):d.Na("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
l.Jc=function(a,b,c,d){this.ga=b;this.F=c;this.ha=d;this.X=a;if(d=Vc(a,"drives"))this.ua=d;else if(this.Ea)try{this.ua=eval("("+this.Ea+")")}catch(e){w("HDC drive configuration error: "+e.message+" ("+this.Ea+")")}this.N=Gb(a,"ChipSet");this.U=0;this.Ga=3;nc(b,this,this.ia?Sp:Tp);rc(b,this,this.ia?Up:Vp);this.ia&&(this.U++,this.N&&5180==this.N.ja&&this.U++,this.Ga=2,b.aa[496]=2,b.ea[496]=2);hf(c,19,this.Pm.bind(this));hf(c,64,this.Qm.bind(this));this.reset();Wp(this)||ub(this)};
l.hc=function(a,b){if(!b)if(!a||!this.restore)Xp(this),this.X.lh&&Wp(this,!0);else if(!this.restore(a))return!1;return!0};l.gc=function(a){return a?this.save():!0};l.gf=function(){return this.X?this.X.gf():""};l.ie=function(){return this.X?this.X.ie():""};l.reset=function(){Xp(this,null,!0)};l.save=function(){var a=new nf(this);a.set(0,Yp(this));return a.data()};l.restore=function(a){return Xp(this,a[0])};
function Xp(a,b,c){var d=0,e=!0;a.hb=-1;if(a.ia){if(b||(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.W=b[d++],a.Pa=b[d++],a.aa=b[d++],a.Ca=b[d++],a.ya=b[d++],a.va=b[d++],a.ra=b[d++],a.ma=b[d++],a.Da=b[d++],a.fa=b[d++],"object"==typeof a.fa){var f=a.fa;a.fa=f[0];a.hb=f[1]}}else b||(b=[0,0,Array(14),0,0]),a.pa=b[d++],a.ma=b[d++],a.V=b[d++],a.L=b[d++],a.C=b[d++],a.Oa=b[d++],a.Ka=b[d++],a.Ja=b[d++],f=b[d++],void 0!==f?a.ka=f:void 0===a.ka&&(a.ka=-1);void 0===a.A&&(a.A=Array(a.ua.length));b=b[d];void 0===b&&(b=[]);
for(d=0;d<a.A.length;d++){void 0===a.A[d]&&(a.A[d]={});var f=a.A[d],g=a,h=d,k=f,m=a.ua[d],n=b[d],t=c,q=0,A=!0;n||(n=[0,0,!1,Array(8)]);k.hb=h;k.errorCode=n[q++];k.Vk=n[q++];k.cf=n[q++];k.Te=n[q++];k.Ue=n[q++];k.kb=n[q++];k.ub=n[q++];k.be=n[q++];k.xb=n[q++];k.fe=n[q++];k.Hb=n[q++];k.sg=g.ia?0:1;k.name=m.name;void 0===k.name&&(k.name="Hard Drive");k.path=m.path;k.mode=m.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||g.ie()||(k.mode="local");k.type=m.type;if(void 0===k.type||
void 0===Rp[g.U][k.type])k.type=g.Ga;m=Rp[g.U][k.type];k.lb=m[2]||17;k.Va=m[3]||512;if(t&&g.N){var m=g.N,F=k.type;if(m.A){var t=null,C=m.A[18];15<F&&(t=F,F=15);h?(C=C&240|F,F=26):(C=C&15|F<<4,F=25);var D=m;D.A&&(D.A[18]=C,Yk(D));null!=t&&m.A&&(m.A[F]=t,Yk(m))}}void 0===k.za&&(k.za=null,g.Na("Type "+k.type+' "'+k.name+'" is fixed disk '+h,!0));Zp(g,k);k.eb=n[q++];k.pb=null;k.za&&(g=n[q],void 0!==g&&0>k.za.restore(g)&&(A=!1),A&&void 0!==k.eb&&(k.pb=k.za.seek(k.be,k.kb,k.xb+k.sg)));A||(e=!1);null!=a.pa&&
1>=d&&(a.pa|=(f.type&3)<<(1-d<<1))}0<=a.hb&&(a.B=a.A[a.hb]);return e}
function Yp(a){var b=0,c=[];a.ia?(c[b++]=a.W,c[b++]=a.Pa,c[b++]=a.aa,c[b++]=a.Ca,c[b++]=a.ya,c[b++]=a.va,c[b++]=a.ra,c[b++]=a.ma,c[b++]=a.Da,c[b++]=[a.fa,a.hb]):(c[b++]=a.pa,c[b++]=a.ma,c[b++]=a.V,c[b++]=a.L,c[b++]=a.C,c[b++]=a.Oa,c[b++]=a.Ka,c[b++]=a.Ja,c[b++]=a.ka);for(var d=0,e=[],f=0;f<a.A.length;f++){var g=d++,h=a.A[f],k=0,m=[];m[k++]=h.errorCode;m[k++]=h.Vk;m[k++]=h.cf;m[k++]=h.Te;m[k++]=h.Ue;m[k++]=h.kb;m[k++]=h.ub;m[k++]=h.be;m[k++]=h.xb;m[k++]=h.fe;m[k++]=h.Hb;m[k++]=h.eb;m[k]=h.za?h.za.save():
null;e[g]=m}c[b]=e;return c}l.mj=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};function Zp(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=Rp[a.U][c][1],e=Rp[a.U][c][0]);d&&((c=Rp[a.U][b.type])&&e!=c[0]&&d!=c[1]&&a.Na("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.Bb=e,b.ub=d,null==b.za&&(b.za=new Lo(a,b,b.mode)))}}
l.Uk=function(a,b,c){if(a.za){var d=a.za.info(),e=d[0];if(e){var f=d[2],g=d[1]*f;if(b+c<=e*g)return a.be=Math.floor(b/g),b%=g,a.kb=Math.floor(b/f),a.xb=b%f,a.Hb=c*d[3],a.errorCode=0,!0}}return!1};
function Wp(a,b){b||(a.ea=0);for(var c=0;c<a.A.length;c++){var d=a.A[c];if(d.name&&d.path){if(!(b&&d.za&&d.za.yg)){var e;e=a;var f=d.name,d=d.path,g=e.A[c];g.$e?(e.Na("Drive "+c+" busy"),e=!0):(g.$e=!0,g.Ce=!0,e.ea++,z(e)&&y(e,"loading "+f),(g.za||new Lo(e,g,g.mode)).load(f,d,null,e.Al),e=!1);!e&&b&&ub(a,!1)}}else b&&void 0!==d.type&&(d.za=null,Zp(a,d,d.type))}return!!a.ea}
l.Al=function(a,b,c){a.$e=!1;if(a.za=b)this.Na('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.hb),a.Ce),b=b.info(),b[0]==a.Bb&&b[1]==a.ub&&b[2]==a.lb&&b[3]==a.Va||this.Na("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Qp[this.U]+" drive type "+a.type+" ("+a.Bb+":"+a.ub+":"+a.lb+")");a.Ce&&(a.Ce=!1,--this.ea||ub(this))};
l.Nm=function(a,b){var c=0;this.L<this.C&&(c=this.V[this.L]);this.N&&ig(this.N,5);this.ma&=-33;x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.L=this.C=0,this.ma&=-15);return c};l.jo=function(a,b,c){x(this,a,b,c,"DATA["+this.C+"]");this.C<this.V.length&&(this.V[this.C++]=b);a=12!=this.V[0]?6:this.V.length;6==this.C&&(this.ma&=-2);this.C>=a&&(this.ma|=2,this.ma&=-2,$p(this))};l.Om=function(a,b){var c=this.ma;x(this,a,null,b,"STATUS",c);this.L<this.C&&(this.ma|=1);return c};
l.mo=function(a,b,c){x(this,a,b,c,"RESET");this.Oa=b;this.N&&ig(this.N,5);Xp(this)};l.Mm=function(a,b){x(this,a,null,b,"CONFIG",this.pa);return this.pa};l.lo=function(a,b,c){x(this,a,b,c,"PULSE");this.Ka=b;this.ma=13};l.ko=function(a,b,c){x(this,a,b,c,"PATTERN");this.Ja=b};l.pi=function(a,b,c){x(this,a,b,c,"NOISE")};
function aq(a,b,c){var d=-1;a.B&&(d=a.Le(a.B,function(){}),1==a.B.eb||a.B.eb==a.B.Va)&&(z(a,1048832)&&x(a,b,null,c,"DATA["+a.B.eb+"]",d),1<a.B.eb&&(a.B.Hb-=a.B.Va,a.aa=a.aa-1&255,a.B.Hb>=a.B.Va?(a.ma=128,a.Le(a.B,function(b){0<=b?(bq(a),a.N&&5180==a.N.ja&&(a.ma=0),a.ma|=88):(a.ma=1,a.W=16)},!1)):a.ma=80));return d}l.il=function(a,b){return aq(this,a,b)|aq(this,a,b)<<8};
function cq(a,b,c,d){if(a.B&&a.B.Hb>=a.B.Va)if(0>dq(a.B,c))a.ma=1,a.W=16;else if(1==a.B.eb||a.B.eb==a.B.Va)z(a,1048832)&&x(a,b,c,d,"DATA["+a.B.eb+"]"),1<a.B.eb&&(a.B.Hb-=a.B.Va,a.aa=a.aa-1&255,bq(a),a.ma=80,a.B.Hb>=a.B.Va&&(a.ma|=8))}l.sn=function(a,b,c){cq(this,a,b&255,c);cq(this,a,b>>8&255,c)};l.Ul=function(a,b){var c=this.W;x(this,a,null,b,"ERROR",c);return c};l.xn=function(a,b,c){x(this,a,b,c,"WPREC");this.Pa=b};l.Wl=function(a,b){var c=this.aa;x(this,a,null,b,"SECCNT",c);return c};
l.vn=function(a,b,c){x(this,a,b,c,"SECCNT");this.aa=b};l.Xl=function(a,b){var c=this.Ca;x(this,a,null,b,"SECNUM",c);return c};l.wn=function(a,b,c){x(this,a,b,c,"SECNUM");this.Ca=b};l.Sl=function(a,b){var c=this.ya;x(this,a,null,b,"CYLLO",c);return c};l.rn=function(a,b,c){x(this,a,b,c,"CYLLO");this.ya=b};l.Rl=function(a,b){var c=this.va;x(this,a,null,b,"CYLHI",c);return c};l.qn=function(a,b,c){x(this,a,b,c,"CYLHI");this.va=b};l.Tl=function(a,b){var c=this.ra;x(this,a,null,b,"DRVHD",c);return c};
l.tn=function(a,b,c){x(this,a,b,c,"DRVHD");this.ra=b;this.ma=this.A[this.ra&16?1:0]?this.ma|80:this.ma&-65};l.Yl=function(a,b){var c=this.ma;x(this,a,null,b,"STATUS",c);this.ma&64&&(this.ma&=-129);return c};l.pn=function(a,b,c){x(this,a,b,c,"COMMAND");this.Da=b;this.N&&ig(this.N,14);eq(this)};l.un=function(a,b,c){x(this,a,b,c,"FDR");this.fa&4&&!(b&4)&&(this.W=1);this.fa=b};
function eq(a){var b=!1,c=a.Da,d=a.ra&16?1:0,e=a.ra&15,f=a.ya|(a.va&3)<<8,g=a.Ca,h=a.aa||256;a.hb=-1;a.B=null;a.W=0;a.ma=80;var k=a.A[d];k?(k.be=f,k.kb=e,k.xb=g,k.Hb=h*k.Va,c=144<=c?c:c&240,k.pb=null,k.eb=0,k.errorCode=0,a.hb=d,a.B=k):c=-1;switch(c&240){case 16:b=!0;break;case 32:a.ma=128;a.Le(k,function(b){0<=b&&a.N?(bq(a),a.ma=88):(a.ma=1,a.W=16)},!1);break;case 48:a.ma=8;break;case 64:b=!0;break;case 112:b=!0;break;case 144:a.W=1;b=!0;break;case 145:k.ub=e+1,k.lb=h,b=!0}b&&bq(a)}
function bq(a){!a.N||a.fa&2||jg(a.N,14,120)}
function $p(a){a.L=0;var b=fq(a),c=fq(a),d=c&32,e=d>>5,f=c&31,g=fq(a),h=fq(a),k=g<<2&768|h,m=g&63,n=fq(a),t=fq(a),q=a.A[e];q&&(q.be=k,q.kb=f,q.xb=m,q.Hb=n*q.Va);switch(b){case 3:gq(a,q?q.errorCode:4);hq(a,c);hq(a,g);hq(a,h);hq(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=fq(a));)q&&c<q.Te.length&&(q.Te[c++]=b);q&&Zp(a,q);b=0;q||a.ka!=e||(a.ka=-1,b=2);gq(a,b|d);b=-1;break;case 224:case 228:gq(a,0|d),b=-1}if(0<=b)switch(void 0===q?b=-1:(q.errorCode=0,q.Vk=0),b){case 0:gq(a,0|d);break;case 1:q.Df=t;gq(a,
0|d);break;case 5:gq(a,0|d);break;case 8:iq(a,q,function(b){gq(a,b|d)});break;case 10:jq(a,q,function(b){gq(a,b|d)});break;case 15:kq(a,q,function(b){gq(a,b|d)});break;default:gq(a,2|d)}}function fq(a){var b=-1;a.L<a.C&&(b=a.V[a.L++]);return b}function gq(a,b){a.L=a.C=0;void 0!==b&&hq(a,b);a.N&&jg(a.N,5);a.ma|=32}function hq(a,b){a.V[a.C++]=b}l.gl=function(a,b,c){void 0===b||0>b?this.Le(a,c):c(-1,!1)};l.hl=function(a,b){return void 0!==b&&0<=b?dq(a,b):-1};
l.yl=function(a,b){void 0!==b&&0<=b?(a.eb<a.Ue.length?a.Ue[a.eb++]=b:(a.errorCode=20,b=-1),a=b):a=-1;return a};l.zl=function(a,b){if(void 0!==b&&0<=b)a:if(a.errorCode)a=-1;else{a.md[a.We++]=b;if(a.We==a.md.length){a.be=a.md[0];a.kb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var c=a.We=0;c<a.Hb;c++)if(0>dq(a,a.cj)){a=-1;break a}a.tg++}a.tg>=a.fe&&(b=-1);a=b}else a=-1;return a};
function iq(a,b,c){b.errorCode=4;if(b.za&&(b.pb=null,a.N)){b.errorCode=0;zl(a.N,3,a,"dmaRead",b);rl(a.N,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function jq(a,b,c){b.errorCode=4;if(b.za&&(b.pb=null,a.N)){b.errorCode=0;zl(a.N,3,a,"dmaWrite",b);rl(a.N,3,function(a){a||(0==b.errorCode&&(b.errorCode=4),20==b.errorCode&&(b.errorCode=0));c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}
function kq(a,b,c){b.errorCode=4;b.Ue&&b.Ue.length==b.Hb||(b.Ue=Array(b.Hb));b.eb=0;a.N?(b.errorCode=0,zl(a.N,3,a,"dmaWriteBuffer",b),rl(a.N,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
l.Le=function(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.pb&&(f=a.eb,d=a.za.read(a.pb,a.eb),a.eb+=g,0<=d))return e=a.pb,b&&b(d,!1,e,f),d;if(b){if(a.za)return a.za.seek(a.be,a.kb,a.xb+a.sg,!1,function(c,k){(a.pb=c)?(e=c,f=a.eb=0,lq(a),d=a.za.read(a.pb,a.eb),a.eb+=g):a.errorCode=20;b(d,k,e,f)}),d;a.errorCode=20;b(d,!1,e,f)}return d};
function dq(a,b){if(a.errorCode)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.za&&a.za.seek(a.be,a.kb,a.xb+a.sg,!0,function(b){a.pb=b});if(!a.pb){a.errorCode=20;b=-1;break}a.eb=0;lq(a)}while(1);return b}function lq(a){a.xb++;var b=1-a.sg;a.xb>=a.lb+b&&(a.xb=b,a.kb++,a.kb>=a.ub&&(a.kb=0,a.be++))}l.Pm=function(){var a=this.F.M&255;!(this.F.G>>8)&&128<a&&(this.ka=a-128);return!0};l.Qm=function(){var a;(a=this.F.G>>8||!this.N)||(a=!(this.N.vc[0].Ad&64));return a?!0:!1};
var Tp={800:Pp.prototype.Nm,801:Pp.prototype.Om,802:Pp.prototype.Mm},Sp={496:Pp.prototype.il,497:Pp.prototype.Ul,498:Pp.prototype.Wl,499:Pp.prototype.Xl,500:Pp.prototype.Sl,501:Pp.prototype.Rl,502:Pp.prototype.Tl,503:Pp.prototype.Yl},Vp={800:Pp.prototype.jo,801:Pp.prototype.mo,802:Pp.prototype.lo,803:Pp.prototype.ko,807:Pp.prototype.pi,811:Pp.prototype.pi,815:Pp.prototype.pi},Up={496:Pp.prototype.sn,497:Pp.prototype.xn,498:Pp.prototype.vn,499:Pp.prototype.wn,500:Pp.prototype.rn,501:Pp.prototype.qn,
502:Pp.prototype.tn,503:Pp.prototype.pn,1014:Pp.prototype.un};Za(function(){for(var a=qb(document,"pcx86","hdc"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new Pp(d);pb(d,c)}});function mq(a){db.call(this,"Debugger",a,mq);this.Ya=a.base||16;this.pa=this.Ca=this.ea=0;this.va=!1;this.A=-1;this.C=[];this.ya={}}gb(mq);var nq={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};mq.prototype.oh=function(){return-1};mq.prototype.ph=function(){};
mq.prototype.Pk=function(a,b){return a.replace("["+b+"]","unimplemented")};mq.prototype.Ng=function(a,b,c){if(b)if(a){0>this.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else this.va?a="end":a=this.C[this.A+1];b=[];if(a){a=a.replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(qa(a.substring(d,f))),d=f+1}}return b};
function oq(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),f=a.pop();switch(d){case "*":d=f*e;break;case "/":if(!e)return!1;d=f/e;break;case "%":if(!e)return!1;d=f%e;break;case "+":d=f+e;break;case "-":d=f-e;break;case "<<":d=f<<e;break;case ">>":d=f>>e;break;case ">>>":d=f>>>e;break;case "<":d=f<e?1:0;break;case "<=":d=f<=e?1:0;break;case ">":d=f>e?1:0;break;case ">=":d=f>=e?1:0;break;case "==":d=f==e?1:0;break;case "!=":d=f!=e?1:0;break;case "&":d=f&e;break;
case "^":d=f^e;break;case "|":d=f|e;break;case "&&":d=f&&e?1:0;break;case "||":d=f||e?1:0;break;default:return!1}a.push(d|0)}return!0}
function pq(a,b,c){var d;if(b){b=qq(a,b);for(var e=0,f=!1,g=b,h=[],k=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e<m.length;){var n=m[e++],t=n.length,n=qa(n);if(!n){f=!0;break}n=rq(a,n,null,!1===c);if(void 0===n){f=!0;c=!1;break}h.push(n);if(e==m.length)break;var n=m[e++],q=n.length;k.length&&nq[n]<nq[k[k.length-1]]&&oq(h,k,1);k.push(n);b=b.substr(t+q)}oq(h,k)&&1==h.length||(f=!0);f?c&&a.O("error parsing '"+g+"' at character "+(g.length-b.length)):(d=h.pop(),c&&sq(a,null,
d))}return d}function qq(a,b){for(var c,d=/\{(.*?)\}/;(c=b.match(d))&&!(0<=c[1].indexOf("{"));){var e=pq(a,c[1]);b=b.replace("{"+c[1]+"}",null!=e?tq(a,e):"undefined")}for(;(c=b.match(/\[(.*?)]/))&&!(0<=c[1].indexOf("["));)b=a.Pk(b,c[1]);for(;c=b.match(/\$([a-z]+)/i);){d=null;switch(c[1].toLowerCase()){case "ops":d=a.pa-a.Ca}if(null==d)break;b=b.replace(c[0],d.toString())}return b}
function rq(a,b,c,d){var e;null!=b?(e=a.oh(b),0<=e?e=a.ph(e):(e=a.ya[b],null==e&&(e=ea(b,a.Ya))),null!=e||d||a.O("invalid "+(c?c:"value")+": "+b)):d||a.O("missing "+(c||"value"));return e}function sq(a,b,c){var d,e=!1;void 0!==c&&(e=!0,d=r(c,0,!0)+" "+c+". "+ia(c,0,!0)+" "+ha(c,4,!0),32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'"));a.O((null!=b?b+": ":"")+d);return e}function uq(a,b){if(b)return sq(a,b,a.ya[b]);var c=0;for(b in a.ya)sq(a,b,a.ya[b]),c++;return 0<c}
function tq(a,b){switch(a.Ya){case 8:a=ia(b,NaN);break;case 10:a=b.toString();break;default:a=r(b,NaN)}return a}function vq(a){mq.call(this,a);this.Ja=4;this.Da=5;this.Ba=1048575;this.aa=wq(this);this.Db=wq(this);this.ua=wq(this);this.N=[];this.B=this.ra=this.fa=[];xq(this);this.Oa=0;yq(this);this.cb={};zq(this,a.messages);this.qb=a.commands;var b=this;window?void 0===window.pcx86&&(window.pcx86=function(a){return Aq(b,a)}):void 0===global.pcx86&&(global.pcx86=function(a){return Aq(b,a)})}gb(vq,mq);
var Bq={16:262144,19:524288,21:32768,22:65536,28:2048,33:134217728,51:16777216},Cq=[26,28,40,42,109],Dq={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory",f:"frequencies","g [#]":"go [to #]",h:"halt","i [#]":"input port #","if":"eval expression",k:"stack trace",l:"load sector(s)",ln:"list nearest symbol(s)",m:"messages",mouse:"mouse action","o [#]":"output port #",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",
"t [#]":"trace","u [#]":"unassemble",x:"execution options",v:"print version","var":"assign variable"},Eq="INVALID 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 FS: GS: HLT IBTS IDIV IMUL IN INC INS INT INT3 INTO IRET JBE JC JCXZ JG JGE JL JLE JMP JA JNC JNO JNP JNS JNZ JO JP JS JZ LAHF LAR LDS LEA LEAVE LES LFS LGDT LGS LIDT LLDT LMSW LOADALL 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 PUSHF PUSHA PUSH RCL RCR REPNZ REPZ RET RETF ROL ROR SAHF SALC 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 XBTS XCHG XLAT XOR".split(" "),
Fq="FLD FST FSTP FXCH FILD FIST FISTP FBLD FBSTP FADD FADDP FIADD FSUB FSUBP FISUB FSUBR FSUBRP FISUBR FMUL FMULP FIMUL FDIV FDIVP FIDIV FDIVR FDIVRP FIDIVR FSQRT FSCALE FPREM FRNDINT FXTRACT FABS FCHS FCOM FCOMP FCOMPP FICOM FICOMP FTST FXAM FPTAN FPATAN F2XM1 FYL2X FYL2XP1 FLDZ FLD1 FLDPI FLDL2T FLDL2E FLDLG2 FLDLN2 FINIT FNINIT FDISI FNDISI FENI FNENI FLDCW FSTCW FNSTCW FSTSW FNSTSW FCLEX FNCLEX FSTENV FNSTENV FLDENV FSAVE FNSAVE FRSTOR FINCSTP FDECSTP FFREE FFREEP FNOP FWAIT FSETPM FSINCOS FSTSWAX".split(" "),
Gq=["VALID","ZERO ","SPEC ","EMPTY"],Hq=[8086,80186,80286,80386],Iq=["AL","CL","DL","BL","AH","CH","DH","BH","AX","CX","DX","BX","SP","BP","SI","DI","ES","CS","SS","DS","FS","GS","IP","PS","EAX","ECX","EDX","EBX","ESP","EBP","ESI","EDI","CR0","CR1","CR2","CR3",null,null,null,null,"DR0","DR1","DR2","DR3",null,null,"DR6","DR7",null,null,null,null,null,null,"TR6","TR7","EIP"],Jq="BX+SI BX+DI BP+SI BP+DI SI DI BP BX EAX ECX EDX EBX ESP EBP ESI EDI".split(" "),Kq=[0,0],Lq=[176,12291],Mq=[[6,12417,4273],
[6,12420,4276],[6,12465,4225],[6,12468,4228],[6,12385,4097],[6,14436,4100],[108,4211],[103,8307],[99,12417,4273],[99,12420,4276],[99,12465,4225],[99,12468,4228],[99,12385,4097],[99,14436,4100],[108,4467],[103,8563],[5,12417,4273],[5,12420,4276],[5,12465,4225],[5,12468,4228],[5,12385,4097],[5,14436,4100],[108,4723],[103,8819],[120,12417,4273],[120,12420,4276],[120,12465,4225],[120,12468,4228],[120,12385,4097],[120,14436,4100],[108,4979],[103,9075],[7,12417,4273],[7,12420,4276],[7,12465,4225],[7,12468,
4228],[7,12385,4097],[7,14436,4100],[35,8],[29],[154,12417,4273],[154,12420,4276],[154,12465,4225],[154,12468,4228],[154,12385,4097],[154,14436,4100],[27,8],[30],[162,12417,4273],[162,12420,4276],[162,12465,4225],[162,12468,4228],[162,12385,4097],[162,14436,4100],[147,8],[1],[24,4225,4273],[24,4228,4276],[24,4273,4225],[24,4276,4228],[24,4193,4097],[24,6244,4100],[33,8],[4],[44,14436],[44,14692],[44,14948],[44,15204],[44,15460],[44,15716],[44,15972],[44,16228],[31,14436],[31,14692],[31,14948],[31,
15204],[31,15460],[31,15716],[31,15972],[31,16228],[108,6244],[108,6500],[108,6756],[108,7012],[108,7268],[108,7524],[108,7780],[108,8036],[103,10340],[103,10596],[103,10852],[103,11108],[103,11364],[103,11620],[103,11876],[103,12132],[107,32768],[104,32768],[10,37044,4228],[8,8323,4275],[37,49160],[38,49160],[100,49160],[9,49160],[108,36868],[42,45235,4228,4100],[108,36866],[42,41139,4228,4097],[45,41041,6756],[45,41044,6756],[102,39524,4161],[102,39524,4164],[64,4145],[60,4145],[51,4145],[59,4145],
[67,4145],[63,4145],[50,4145],[58,4145],[66,4145],[62,4145],[65,4145],[61,4145],[55,4145],[54,4145],[56,4145],[53,4145],[163,12417,4097],[164,12420,4100],[163,12417,4097],[165,12420,4097],[155,4225,4273],[155,4228,4276],[160,12465,12417],[160,12468,12420],[90,8321,4273],[90,8324,4276],[90,8369,4225],[90,8372,4228],[90,8324,4291],[71,8372,148],[90,8387,4228],[103,8324],[97],[160,14436,14692],[160,14436,14948],[160,14436,15204],[160,14436,15460],[160,14436,15716],[160,14436,15972],[160,14436,16228],
[18],[28],[17,4103],[158],[106],[105],[117],[68],[90,8289,4129],[90,10340,4132],[90,8225,4193],[90,8228,6244],[91,8273,4161],[92,8276,4164],[25,4177,4161],[26,4180,4164],[155,4193,4097],[155,6244,4100],[151,8273,4193],[152,8276,6244],[82,8289,4161],[83,10340,4164],[121,4193,4177],[122,6244,4180],[90,8289,4097],[90,8545,4097],[90,8801,4097],[90,9057,4097],[90,9313,4097],[90,9569,4097],[90,9825,4097],[90,10081,4097],[90,10340,4100],[90,10596,4100],[90,10852,4100],[90,11108,4100],[90,11364,4100],[90,
11620,4100],[90,11876,4100],[90,12132,4100],[166,28801,4097],[167,28804,4097],[113,4099],[113],[73,8372,4246],[70,8372,4246],[90,8321,4097],[90,8324,4100],[34,36867,4097],[72,32768],[114,4099],[114],[47],[46,4097],[48],[49],[168,12417,4113],[169,12420,4113],[170,12417,4449],[171,12420,4449],[3,1],[2,1],[118],[161],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[36,4228],[85,4145],[86,4145],[84,4145],[52,4145],[43,8289,4097],[43,10340,4097],[101,4097,4193],[101,4097,6244],[17,
4148],[57,4148],[57,4103],[57,4145],[43,8289,6759],[43,10340,6759],[101,6759,4193],[101,6759,6244],[81,8],[0],[111,8],[112,8],[39],[23],[172,12417],[173,12420],[19],[148],[21],[150],[20],[149],[174,12417],[175,12420]],Nq={0:[177,12419],1:[178,12419],2:[69,41139,4243],3:[87,41139,4243],5:[80,32768],6:[22,32768],7:[80,49152],32:[90,57509,4309],33:[90,57509,4325],34:[90,57557,4261],35:[90,57573,4261],36:[90,57509,4341],38:[90,57589,4261],128:[64,53300],129:[60,53300],130:[51,53300],131:[59,53300],132:[67,
53300],133:[63,53300],134:[50,53300],135:[58,53300],136:[66,53300],137:[62,53300],138:[65,53300],139:[61,53300],140:[55,53300],141:[54,53300],142:[56,53300],143:[53,53300],144:[135,57473],145:[131,57473],146:[124,57473],147:[130,57473],148:[138,57473],149:[134,57473],150:[123,57473],151:[129,57473],152:[137,57473],153:[133,57473],154:[136,57473],155:[132,57473],156:[127,57473],157:[126,57473],158:[128,57473],159:[125,57473],160:[108,54387],161:[103,58483],163:[13,53380,4276],164:[141,57476,4276,4097],
165:[141,57476,4276,4449],166:[159,57524,4228,6244,4449],167:[40,57476,6244,4449,4276],168:[108,54643],169:[103,58739],171:[16,57476,4276],172:[143,57476,4276,4097],173:[143,57476,4276,4449],175:[42,61572,4276],178:[88,8372,4246],179:[15,57476,4276],180:[74,8372,4246],181:[76,8372,4246],182:[94,57524,4225],183:[94,57525,4227],186:[179,61572,4097],187:[14,57476,4276],188:[11,57524,4228],189:[12,57524,4228],190:[93,57524,4225],191:[93,57525,4227]},Oq={216:{0:[9,4235],1:[18,4235],2:[34,4235],3:[35,4235],
4:[12,4235],5:[15,4235],6:[21,4235],7:[24,4235],48:[9,8297,4202],49:[18,8297,4202],50:[34,8297,4202],51:[35,8297,4202],52:[12,8297,4202],53:[15,8297,4202],54:[21,8297,4202],55:[24,8297,4202]},217:{0:[0,4235],2:[1,8331],3:[2,8331],4:[68,4239],5:[59,4227],6:[66,8335],7:[60,8323],48:[0,8298],49:[3,8298],50:[76],51:[2,8298],64:[33],65:[32],68:[39],69:[40],80:[47],81:[49],82:[50],83:[48],84:[51],85:[52],86:[46],96:[43],97:[44],98:[41],99:[42],100:[31],102:[73],103:[72],112:[29],113:[45],114:[27],116:[30],
117:[28]},218:{0:[11,4235],1:[20,4235],2:[37,4235],3:[38,4235],4:[14,4235],5:[17,4235],6:[23,4235],7:[26,4235]},219:{0:[4,4235],2:[5,8331],3:[6,8331],5:[0,4237],7:[2,8333],64:[57],65:[55],66:[64],67:[53],68:[78,32768],115:[79,49152]},220:{0:[9,4236],1:[18,4236],2:[34,4236],3:[35,4236],4:[12,4236],5:[15,4236],6:[21,4236],7:[24,4236],48:[9,8298,4201],49:[18,8298,4201],50:[34,4202],51:[35,4202],52:[15,8298,4201],53:[12,8298,4201],54:[24,8298,4201],55:[21,8298,4201]},221:{0:[0,4236],2:[1,8332],3:[2,8332],
4:[71,4239],6:[69,8335],7:[62,8323],48:[74,4202],49:[3,8298],50:[1,4202],51:[2,4202]},222:{0:[11,4227],1:[20,4227],2:[37,4227],3:[38,4227],4:[14,4227],5:[17,4227],6:[23,4227],7:[26,4227],48:[10,8298,4201],49:[19,8298,4201],50:[35,4202],51:[36,4202],52:[16,8298,4201],53:[13,8298,4201],54:[25,8298,4201],55:[22,8298,4201]},223:{0:[4,4227],2:[5,8323],3:[6,8323],4:[7,4238],5:[4,4236],6:[8,8334],7:[6,8332],48:[75,4202],49:[3,8298],50:[2,4202],51:[2,4202],52:[80,32768]}},Pq=[[[6,12417,4097],[99,12417,4097],
[5,12417,4097],[120,12417,4097],[7,12417,4097],[154,12417,4097],[162,12417,4097],[24,4225,4097]],[[6,12420,4100],[99,12420,4100],[5,12420,4100],[120,12420,4100],[7,12420,4100],[154,12420,4100],[162,12420,4100],[24,4228,4100]],[[6,12420,4098],[99,12420,4098],[5,12420,4098],[120,12420,4098],[7,12420,4098],[154,12420,4098],[162,12420,4098],[24,4228,4098]],[[115,45185,4097],[116,45185,4097],[109,45185,4097],[110,45185,4097],[140,45185,4097],[142,45185,4097],Kq,[119,45185,4097]],[[115,45188,4097],[116,
45188,4097],[109,45188,4097],[110,45188,4097],[140,45188,4097],[142,45188,4097],Kq,[119,45188,4097]],[[115,12417,4113],[116,12417,4113],[109,12417,4113],[110,12417,4113],[140,12417,4113],[142,12417,4113],Kq,[119,12417,4113]],[[115,12420,4113],[116,12420,4113],[109,12420,4113],[110,12420,4113],[140,12420,4113],[142,12420,4113],Kq,[119,12420,4113]],[[115,12417,4449],[116,12417,4449],[109,12417,4449],[110,12417,4449],[140,12417,4449],[142,12417,4449],Kq,[119,12417,4449]],[[115,12420,4449],[116,12420,
4449],[109,12420,4449],[110,12420,4449],[140,12420,4449],[142,12420,4449],Kq,[119,12420,4449]],[[155,4225,4097],Kq,[98,12417],[96,12417],[95,4225],[42,12417],[32,4225],[41,12417]],[[155,4228,4100],Kq,[98,12420],[96,12420],[95,4228],[42,12420],[32,4228],[41,12420]],[[44,12417],[31,12417],Kq,Kq,Kq,Kq,Kq,Kq],[[44,12420],[31,12420],[17,4228],[17,4231],[57,4228],[57,4231],[108,4228],Kq],[],[[145,41091],[153,41091],[78,36995],[89,36995],[156,36995],[157,36995],Kq,Kq],[[139,41091],[144,41091],[75,36995],
[77,36995],[146,41091],Kq,[79,36995],Kq],[Kq,Kq,Kq,Kq,[13,53380,4097],[16,57476,4097],[15,57476,4097],[14,57476,4097]]];l=vq.prototype;
l.Jc=function(a,b,c,d){this.ga=b;this.F=c;this.X=a;this.tc=Gb(a,"FDC");this.Jb=Gb(a,"HDC");this.Tb=Gb(a,"FPU");this.V=Gb(a,"Mouse");(a=Vc(a,"messages"))&&zq(this,a);this.Da=b.N>>2;this.Ba=b.Eg;this.bc=new hd(this.F,7,"DBG");this.Ga=Mq;80186<=this.F.ja&&(this.Ga=Mq.slice(),this.Ga[15]=Kq,80286<=this.F.ja&&(this.Ga[15]=Lq,80386<=this.F.ja&&(this.Ja=8)));Nk(this,64,function(a){Qq(d,d.F.ld,a[0])});Nk(this,4,function(a){if(a=a[0]){var b=rq(d,a);if(void 0===b)d.O("invalid selector: "+a);else if(a=Rq(d,
b,2),d.O("dumpSel("+v(a?a.Z:b)+"): %"+r(a?a.Xb:null,d.Da)),a){var c,b=!1;if(a.type&4096)a.type&2048?(c="code"+(a.type&512?",readable":",execonly"),a.type&1024&&(c+=",conforming")):(c="data"+(a.type&512?",writable":",readonly"),a.type&1024&&(c+=",expdown")),a.type&256&&(c+=",accessed");else{var e=Sq[a.type];e&&(c=e[0],b=e[1])}!c||a.wb&32768||(c+=",not present");d.O((b?"seg="+v(a.Aa&65535)+" off="+v(a.Ta):"base="+r(a.Aa,d.Da)+" limit="+Tq(a.Ta))+" type="+u(a.type>>8)+" ("+c+") ext="+v(a.ext&-65296)+
" dpl="+u(a.Hc))}}else d.O("no selector")});Nk(this,134217728,function(a){var b;(a=a[0])&&(b=rq(d,a));if(void 0===b)d.O("invalid MCB");else for(d.O("dumpMCB("+v(b)+")");b;){a=wq(d,0,b);var c=d.Qa(a,1),e=d.na(a,2),k=d.na(a,5);if(77!=c&&90!=c)break;d.O(Uq(0,b)+": '"+String.fromCharCode(c)+"' PID="+v(e)+" LEN="+v(k)+' "'+Vq(d,a,8)+'"');b+=1+k}});Nk(this,128,function(a){Qq(d,d.F.sa,a[0],d.F.sa!==d.F.ld)});Nk(this,8,function(a){a:{if(a=a[0]){var b=rq(d,a);if(void 0===b){d.O("invalid task selector: "+a);
break a}a=Rq(d,b,2)}else a=d.F.Sa;d.O("dumpTSS("+v(a?a.Z:b)+"): %"+r(a?a.Aa:null,d.Da));if(a){var b="",c=a.type&-513,e=256==c?4:8,k=256==c?Wq:Xq,m,n,t,q;for(q in k)m=k[q],n=a.Aa+m,t=Nf(d.F,n,2),2304==c&&(t|=Nf(d.F,n+2,2)<<16),b&&(b+="\n"),b+=v(m)+" "+pa(q+":",11)+r(t,e);if(2304==c)for(q=0,m=t>>>16;m<a.Zb&&1023>q;)n=a.Aa+m,t=Nf(d.F,n,2),b+="\n"+v(m)+" ports "+v(q)+"-"+v(q+15)+": "+ha(t,2),q+=16,m+=2;d.O(b)}}});this.L=null;this.sb=0;this.fb=!1;hf(this.F,48,this.Sm.bind(this));hf(this.F,65,this.Tm.bind(this));
this.ka=null;hf(this.F,104,this.Um.bind(this));ub(this)};function Yq(a,b,c,d,e,f){b=Vq(a,b);var g=Rq(a,d),g=g?g.Ta+1:0,h=(e?"_CODE":"_DATA")+r(c,2);f&&z(a,128)&&a.message(b+" "+(e?"code":"data")+"("+r(c,4)+")=#"+r(d,4)+" len "+r(g));e=Zq(a,b,c);e[b+h]=0;cm(a,b,c,d,0,null,g,e)}
function $q(a,b,c,d){var e=a.na(b,2),f=a.na(b,2),g=a.oa(b,4),h=a.oa(b,4),k=wq(a,a.oa(b,4),a.na(b,2));b=wq(a,a.oa(b,4),a.na(b,2));b=Vq(a,b).toUpperCase();var k=Vq(a,k).toUpperCase(),m=(c?"_CODE":"_DATA")+r(e,2);d&&z(a,128)&&a.message((b==k?"":b+"!")+k+" "+(c?"code":"data")+"("+r(e,4)+")="+r(f,4)+":"+r(g)+" len "+r(h));c=Zq(a,k,e);c[k+m]=g;cm(a,k,e,f,g,null,h,c)}function ar(a,b,c){c=Vq(a,c).toUpperCase();br(a,c,b)}
l.Sm=function(){var a=this.F;if(null!=this.L&&2752554==a.G){var b=a.M&65535,c=a.K&65535,d=wq(this,J(a)+12,a.ta.Z);switch(this.oa(d)){case 336:$q(this,wq(this,a.H,b),!c,!!this.L)}}return!0};
l.Tm=function(a){var b=this.F,c=b.G&65535,d=b.H&65535,e=b.I&65535,f=b.M&65535,g=b.K&65535,h=b.J&65535,k=b.Xa.Z;if(null==this.L)return 79==c&&jf(b,a,function(a){return function(){62342!=(b.G&65535)?(b.G=b.G&-65536|62342,y(a,"INT 0x41 handling enabled",128),a.L=!0):(y(a,"INT 0x41 monitoring enabled",128),a.L=!1)}}(this)),!0;switch(c){case 79:this.L&&(b.G=b.G&-65536|62342,y(this,"INT 0x41 handling enabled",128));break;case 80:Yq(this,wq(this,h,k),d+1,e,!(g&1),!!this.L);break;case 82:br(this,null,d);
break;case 127:this.L&&(b.G=b.G&-65536|(this.fb?0:1));break;case 131:this.L&&(a=wq(this,b.M,e),this.sb++?(this.O("TRAPFAULT failed"),cr(this,this.B,a,!0,!0),this.sb=0,this.Wb()):(this.O("INT 0x41 TRAPFAULT: fault="+v(d)+" error="+r(b.K,8,!0)+" addr="+dr(a)),this.Rd(this.B,a,!0),yq(this,!0)));break;case 141:this.L&&(b.G=b.G&-65536|1);break;case 336:$q(this,wq(this,b.H,f),!g,!!this.L);break;case 338:ar(this,d,wq(this,b.J,f))}this.fb=!1;return!this.L};
l.Um=function(a){var b=this.F,c=b.G&255,d=b.G>>8&255,e=b.H&65535,f=b.I&65535,g=b.M&65535,h=b.J&65535,k=b.Xa.Z;if(null==this.ka){if(67==d){if(609437257==b.oa((b.wa.Z<<4)+10)||1111835735==b.oa((b.wa.Z<<4)+95))return!0;jf(b,a,function(a){return function(){62342!=(b.G&65535)?(b.G=b.G&-65536|62342,y(a,"INT 0x68 handling enabled",128),a.L=a.ka=!0):(y(a,"INT 0x68 monitoring enabled",128),a.ka=!1)}}(this))}return!0}switch(d){case 67:this.ka&&(b.G=b.G&-65536|62342);break;case 68:this.ka&&(a=jd(b.wa,this.tl.bind(this)))&&
(b.J=a[0],yd(b,a[1]));break;case 72:br(this,null,e);break;case 80:32==c?Yq(this,wq(this,h,k),0,f,!0,!!this.ka):128>c?Yq(this,wq(this,h,k),e+1,c&64?g:f,!(c&1),!!this.ka):$q(this,wq(this,h,k),!(c&1),!!this.ka),this.ka&&(b.G=b.G&-256|1)}return!this.ka};l.tl=function(){var a=this.F;5==(a.G&255)&&(a.I=a.K=0,a.G=a.G&-256|1);return!1};
l.Pb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.Ka=this.qa[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",Aq(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.A<d.C.length-1&&(b=d.C[++d.A])):40==a.keyCode&&(0<d.A?b=d.C[--d.A]:(b="",d.A=-1)),null!=b){var e=b.length;c.value=b;c.setSelectionRange(e,e)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.qa[b]=c,Sa(c,function(){if(d.Ka){var a=d.Ka.value;
d.Ka.value="";Aq(d,a,!0);return!0}return!1}),!0;case "step":return this.qa[b]=c,Sa(c,function(a){var b=!1;tb(d,!0)||(sb(d,!0),b=d.wf(a?1:0),sb(d,!1));return b}),!0}return!1};l.wd=function(){this.Ka&&this.Ka.focus()};function er(a){return a.F&&!!(a.F.$a&1)&&!(a.F.ca&131072)}
function Rq(a,b,c){var d=er(a)?2:1;c||(c=d);if(c==d){if(b===a.F.wa.Z)return a.F.wa;if(b===a.F.vb.Z)return a.F.vb;if(b===a.F.Xa.Z)return a.F.Xa;if(b===a.F.ta.Z)return a.F.ta;if(80386<=a.F.ja){if(b===a.F.Nb.Z)return a.F.Nb;if(b===a.F.Ob.Z)return a.F.Ob}if(a.gb&&2==c||!a.bc)return null}a=a.bc;if(2!=c)a.uh(b),a.Ta=65535,a.Zb=65536;else{var e;c=a.F;b&=65535;b&4?(d=c.Bc.Aa,e=d+c.Bc.Ta|0):(d=c.Fc,e=c.zd);d=d+(b&65528)|0;if(e-d|0){e=Nf(c,d+0,2);var f=Nf(c,d+4,2),g=f&7936,h=Nf(c,d+2,2)|(f&255)<<16,k=Nf(c,
d+6,2);80386<=c.ja&&(h|=(k&65280)<<16,e|=(k&15)<<16,k&128&&(e=e<<12|4095));a.Z=b;a.Aa=h;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=f;a.type=g;a.ext=k;a.Xb=d;id(a,!0,!0,!1)}}return a}l.cc=function(a,b,c){var d=a&&a.Fa;if(null==d&&(d=-1,a)){var e=Rq(this,a.Z,a.type);e&&(b=a.Ra||0,c=c||1,d=e=-1===e.Xb||e.cd&&(b>>>0)+c>e.Zb||!e.cd&&(b>>>0)+c<=e.Zb?e.Aa+b|0:-1,a.Fa=d)}return d};l.Qa=function(a,b){var c=255,d=this.cc(a,!1,1);-1!==d&&(c=Nf(this.F,d,1,5==a.type)|0,b&&fr(this,a,b));return c};
l.tb=function(a,b){return a.Rb?this.oa(a,b?4:0):this.na(a,b?2:0)};l.na=function(a,b){var c=65535,d=this.cc(a,!1,2);-1!==d&&(c=Nf(this.F,d,2,5==a.type),b&&fr(this,a,b));return c};l.oa=function(a,b){var c=-1,d=this.cc(a,!1,4);-1!==d&&(c=Nf(this.F,d,4,5==a.type),b&&fr(this,a,b));return c};l.qc=function(a,b,c,d){var e=this.cc(a,!0,1);if(-1!==e){if(5!=a.type)this.F.qc(e,b);else{var f=this.ga;f.sa[(e&f.Gb)>>>f.La].xf(e&f.A,b&255,e)}c&&fr(this,a,c);d||Yc(this.F,!0)}};
l.jb=function(a,b,c){var d=this.cc(a,!0,2);-1!==d&&(5!=a.type?this.F.jb(d,b):kc(this.ga,d,b),c&&fr(this,a,c),Yc(this.F,!0))};function wq(a,b,c,d,e,f,g){return gr(a,{},b,c,d,e,f,g)}function gr(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Fa=e;b.type=f||(er(a)?2:1);b.Rb=null!=g?g:a.F&&4==a.F.wa.ba;b.oc=null!=h?h:a.F&&4==a.F.wa.Uc;b.Vd=!1;return b}function hr(a){return[a.Ra,a.Z,a.Fa,a.Vd,a.Rb,a.oc,a.Ve,a.jh]}function ir(a){return{Ra:a[0],Z:a[1],Fa:a[2],Vd:a[3],Rb:a[4],oc:a[5],Ve:a[6],jh:a[7]}}
function jr(a,b,c){if(null!=b.Z&&(a=Rq(a,b.Z,b.type))){var d=b.Ra&a.Ba;if(!a.cd){if(d>>>0>=a.Zb)return!1}else if(d>>>0<a.Zb)return!1;c&&(b.Ra=d,b.Rb=4==a.ba,b.oc=4==a.Uc)}return!0}
function kr(a,b,c,d){var e,f=c?a.aa:a.Db;c=d?0:f.type;var g=f.Ra,h=f.Z,f=f.Fa;if(void 0!==b){b=qq(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=1;break;case "#":c=2;break;case "%":c=4;e=b.charAt(1);"%"==e&&(c=5,e+=e);g=0;h=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var m=e.toUpperCase(),n=0;n<a.N.length;n++){e=a.N[n];var t=e.Qd[m];if(void 0!==t){m=t.o;void 0!==m&&(k=t.s,void 0===k&&(k=e.Z),k=wq(a,m,k,t.p));break}}if(e=
k)return e;0>f?null!=h?(g=pq(a,b,void 0),f=null):(f=pq(a,b,void 0),null==f&&(g=null)):(h=pq(a,b.substring(0,f),void 0),g=pq(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=wq(a,g,h,f,c),d||jr(a,e,!0)||(a.O("invalid offset: "+dr(e)),e=null));return e}function lr(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.nl=a.Ng(b.Sk=c[2]))}l.Pk=function(a,b){var c=kr(this,b);return a.replace("["+b+"]",c?r(this.tb(c),c.Rb?8:4):"undefined")};
function fr(a,b,c){c=c||1;null!=b.Fa&&(b.Fa+=c);null!=b.Z&&(b.Ra+=c,jr(a,b)||(b.Ra=0,b.Fa=null))}function Uq(a,b,c){return null!=b?r(b,4)+":"+r(a,a&-65536||c?8:4):r(a)}function dr(a){var b;switch(a.type){case 1:case 3:b="&";break;case 2:b="#";break;case 4:b="%";break;case 5:b="%%";break;default:b=a.Z?"":"%"}return 4<=a.type||null==a.Z?b+r(a.Fa):b+Uq(a.Ra,a.Z,a.oc)}
function Vq(a,b,c){var d="";for(c=c||256;d.length<c;){var e=a.Qa(b,1);if(!e||36==e||127<=e)break;d+=32<=e?String.fromCharCode(e):"."}return d}
function Qq(a,b,c,d){var e=0,f=0,g=b.length;if(c){e=a.cc(kr(a,c));if(-1===e){a.O("invalid address: "+c);return}f=e>>>a.F.La;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&5==d.type&&(d=Kc(a.F,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=Ub[c],6==c&&(d=d.Bd,h+=" -> "+Ub[d.type]),d&&a.O(r(d.id,8)+" %"+r(f<<a.F.La,8)+" %%"+r(d.Fa,8)+" "+v(d.Qe)+" "+v(d.size)+" "+
h),c!=Bc&&5!=c&&(c=-1),h=0),e+=a.F.Sb,f++}function mr(a,b,c){a=r(a)+" "+r(b)+" ";a=a+(c&&b&64?"D":"-")+(b&32?"A":"-")+(b&4?"U":"S");a+=b&2?"W":"R";return a+=b&1?"P":"N"}
var Sq={256:["tss286",!1],512:["ldt",!1],768:["busy tss286",!1],1024:["call gate",!0],1280:["task gate",!0],1536:["int gate286",!0],1792:["trap gate286",!0],2304:["tss386",!1],2816:["busy tss386",!1],3072:["call gate386",!0],3584:["int gate386",!0],3840:["trap gate386",!0]},Wq={PREV_TSS:0,CPL0_SP:2,CPL0_SS:4,CPL1_SP:6,CPL1_SS:8,CPL2_SP:10,CPL2_SS:12,TASK_IP:14,TASK_PS:16,TASK_AX:18,TASK_CX:20,TASK_DX:22,TASK_BX:24,TASK_SP:26,TASK_BP:28,TASK_SI:30,TASK_DI:32,TASK_ES:34,TASK_CS:36,TASK_SS:38,TASK_DS:40,
TASK_LDT:42},Xq={PREV_TSS:0,CPL0_ESP:4,CPL0_SS:8,CPL1_ESP:12,CPL1_SS:16,CPL2_ESP:20,CPL2_SS:24,TASK_CR3:28,TASK_EIP:32,TASK_PS:36,TASK_EAX:40,TASK_ECX:44,TASK_EDX:48,TASK_EBX:52,TASK_ESP:56,TASK_EBP:60,TASK_ESI:64,TASK_EDI:68,TASK_ES:72,TASK_CS:76,TASK_SS:80,TASK_DS:84,TASK_FS:88,TASK_GS:92,TASK_LDT:96,TASK_IOPM:100};
function Zq(a,b,c){var d=[],e;for(e=null;e=Gb(a.X,"Disk",e);){var f=e,g=b,h=c,d={};if(f.C)for(var k=0;k<f.C.length;k++){var m=f.C[k];if(m.kg==g&&(m=m.yd[h])){for(var n in m.we)f=m.we[n],d[f[1]]=f[0];break}}if(d.length)break}return d}function zq(a,b){a.ha=a;a.wc=a.rl=1073741824;a.Pa=null;b=a.Ng(b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(b.length)for(var c in Bb)0<=ya(b,c)&&(a.wc|=Bb[c],a.O(c+" messages enabled"));yq(a)}
function Nk(a,b,c){for(var d in Bb)if(b==Bb[d]){a.cb[d]=c;break}}l=vq.prototype;l.oh=function(a,b){var c;a=a.toUpperCase();null==b?c=ya(Iq,a):(c=ya(Iq,a.substr(b,3)),0>c&&(c=ya(Iq,a.substr(b,2))));return c};
function nr(a,b){var c=0,d=a.ph(b);if(null!=d)switch(b){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:c=2;break;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 22:case 16:case 17:case 18:case 19:case 20:case 21:c=4;break;case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 56:c=8;break;case 23:c=a.Ja}return c?r(d,c):"??"}
l.ph=function(a){var b;if(0<=a){var c=this.F;switch(a){case 0:b=c.G&255;break;case 1:b=c.I&255;break;case 2:b=c.M&255;break;case 3:b=c.H&255;break;case 4:b=c.G>>8&255;break;case 5:b=c.I>>8&255;break;case 6:b=c.M>>8&255;break;case 7:b=c.H>>8&255;break;case 8:b=c.G&65535;break;case 9:b=c.I&65535;break;case 10:b=c.M&65535;break;case 11:b=c.H&65535;break;case 12:b=J(c)&65535;break;case 13:b=c.P&65535;break;case 14:b=c.K&65535;break;case 15:b=c.J&65535;break;case 22:b=M(c)&65535;break;case 23:b=zd(c);
break;case 16:b=c.Xa.Z;break;case 17:b=c.wa.Z;break;case 18:b=c.ta.Z;break;case 19:b=c.vb.Z;break;default:if(80286==this.F.ja)32==a&&(b=c.$a);else if(80386<=this.F.ja)switch(a){case 24:b=c.G;break;case 25:b=c.I;break;case 26:b=c.M;break;case 27:b=c.H;break;case 28:b=J(c);break;case 29:b=c.P;break;case 30:b=c.K;break;case 31:b=c.J;break;case 32:b=c.$a;break;case 33:b=c.ti;break;case 34:b=c.se;break;case 35:b=c.Od;break;case 20:b=c.Nb.Z;break;case 21:b=c.Ob.Z;break;case 56:b=M(c)}}}return b};
function or(a,b){b=qq(a,b);for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=a.oh(b,c+1),0<=e&&(b=b.substr(0,c)+nr(a,e)+b.substr(c+1+Iq[e].length)),c++;for(c=0;0<=(c=b.indexOf("#",c));)e=b.substr(c+1,2),d=ea(e,16),null!=d&&32<=d&&128>d?(d=e+" '"+String.fromCharCode(d)+"'",b=b.replace("#"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("$",c));)e=b.substr(c+1,9),(d=kr(a,e))?(d=e+' "'+Vq(a,d)+'"',b=b.replace("$"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("^",c));)e=b.substr(c+1,9),(d=kr(a,e))?(fr(a,d),d=
e+' "'+Vq(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}l.message=function(a,b){b&&(a+=" at "+dr(wq(this,M(this.F),this.F.wa.Z))+" (%"+r(this.F.Ha)+")");this.Pa&&a==this.Pa||(this.Pa=a,this.wc&-2147483648&&(this.Wb(),a+=" (cpu halted)"),this.O(a),this.F&&(a=this.F,a.fb-=a.A,a.A=0,a.Y.mf=0,Yc(a)))};
function mk(a,b,c,d){var e,f;if(!d&&(d=z(a,1)&&0>Cq.indexOf(b),!d)){var g=Bq[b];g&&(d=z(a,g)?!0:524288==g&&z(a,g=1048576))}d&&(e=a.F.G>>8&255,f=a.F.M&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=Ab[b])&&g[e]||"")&&(g=" "+or(a,g)),a.message("INT "+u(b)+": AH="+u(e)+" at "+Uq(c-2-a.F.wa.Aa,a.F.wa.Z)+g));return d}
function rb(a,b,c,d,e,f,g,h){h|=256;if(null==e||(a.wc&h)==h)h=null,null!=e&&(h=a.F.wa.Z,e-=a.F.wa.Aa),a.message(b.xd+"."+(null!=d?"outPort":"inPort")+"("+v(c)+","+(f?f:"unknown")+(null!=d?","+u(d):"")+")"+(null!=g?": "+u(g):"")+(null!=e?" at "+Uq(e,h):""))}l.qh=function(){this.O("Type ? for help with PCx86 Debugger commands");this.Cc();if(this.qb){var a=this.qb;this.qb=null;Aq(this,a)}};
function yq(a,b){var c;if(Yf(a)){if(!a.ia||!a.ia.length){a.ia=Array(1E3);for(c=0;c<a.ia.length;c++)a.ia[c]=wq(a);a.Ea=0;b||a.O("instruction history buffer allocated")}if(!a.W||!a.W.length)for(a.W=Array(256),c=0;c<a.W.length;c++)a.W[c]=[c,0]}else a.ia&&a.ia.length&&!b&&a.O("instruction history buffer freed"),a.Ea=0,a.ia=[],a.W=[]}l.Ne=function(a){if(!pr(this))return!1;this.F.Ne(a);return!0};
l.wf=function(a,b,c){if(!pr(this))return!1;this.ea=0;do{a||Yf(this)&&ag(this,this.F.Ha,0);try{var d=this.F.wf(a);0<d&&(this.ea+=d,cd(this.F,d,!0),Zc(this.F,d),this.pa++)}catch(f){if("number"!=typeof f){var e=f;this.ea=0;wb(this.F,e.stack||e.message)}}}while(this.F.S&3312);!1!==c&&Yc(this.F);this.Cc(b||!1);return 0<this.ea};l.Wb=function(a){this.F&&this.F.Wb(a)};l.Cc=function(a){void 0===a&&(a=!0);this.aa=wq(this,M(this.F),this.F.wa.Z);a&&1!=this.U?qr(this):rr(this)};
function pr(a){var b;if(b=a.F&&vb(a.F))b=a.F,b.la.ic?b=!0:(b.O(b.toString()+" not powered"),b=!1);b&&!tb(a.F)?(a=a.F,a.la.error?(a.O(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}l.hc=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};l.gc=function(a,b){b&&this.O(a?"suspending":"shutting down");return a?this.save():!0};l.reset=function(a){yq(this);this.pa=this.Ca=0;this.Pa=null;this.ea=0;this.aa=wq(this,M(this.F),this.F.wa.Z);this.la.Ib=!1;sr(this);a||this.Cc()};
l.save=function(){var a=new nf(this);a.set(0,hr(this.aa));a.set(1,hr(this.ua));a.set(2,[this.C,this.va,this.wc]);a.set(3,this.N);return a.data()};l.restore=function(a){var b=0;void 0!==a[2]&&(this.aa=ir(a[b++]),this.ua=ir(a[b++]),this.C=a[b][0],"string"==typeof this.C&&(this.C=[this.C]),this.va=a[b][1],this.wc|=a[b][2]);a[3]&&(this.N=a[3]);return!0};l.start=function(a,b){this.U||this.O("running");this.la.Ib=!0;this.uc=a;this.vd=b};
l.stop=function(a,b){if(this.la.Ib){this.la.Ib=!1;this.ea=b-this.vd;if(!this.U){b="stopped";if(this.ea){a-=this.uc;var c=0<a?Math.round(1E3*this.ea/a):0;b+=" (";Yf(this)&&(b+=this.pa+" opcodes, ",this.Ca-=this.pa,this.pa=0);b+=this.ea+" cycles, "+a+" ms, "+c+" hz)"}else z(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.O(b)}this.Cc(!0);this.wd();sr(this,this.F.Ha)}};function Yf(a){return 1<a.B.length||!!a.Oa||z(a,16)}
function ag(a,b,c){var d=a.F;if(0<c&&(a.Oa&&!--a.Oa||tr(a,b,1,a.B)))return!0;0<=c&&a.W.length&&(a.pa++,b=Nf(d,b),null!=b&&(a.W[b][1]++,gr(a,a.ia[a.Ea],M(d),d.wa.Z),++a.Ea==a.ia.length&&(a.Ea=0)));return!1}function Hc(a,b,c){return tr(a,b,c||1,a.ra)?(a.Wb(!0),!0):!1}function Jc(a,b,c){return tr(a,b,c||1,a.fa)?(a.Wb(!0),!0):!1}function pc(a,b,c){a.O("break on input from port "+v(b)+": "+r(c));a.Wb(!0)}function xc(a,b,c){a.O("break on output to port "+v(b)+": "+r(c));a.Wb(!0)}
function xq(a){var b,c;a.B=["bp"];if(a.ra)for(b=1;b<a.ra.length;b++)c=a.ra[b],te(a.F,a.cc(c),!1,5==c.type);a.ra=["br"];if(a.fa)for(b=1;b<a.fa.length;b++)c=a.fa[b],te(a.F,a.cc(c),!0,5==c.type);a.fa=["bw"];a.gb=0}
l.Rd=function(a,b,c){var d=!0;c||cr(this,a,b,!1,!0);if(a!=this.B){var e=this.cc(b);if(-1===e)this.O("invalid address: "+dr(b)),d=!1;else{var f=this.F,g=5==b.type;(g?f.ld:f.sa)[e>>>f.La].Rd(e&f.Ea,a==this.fa);g&&Tb(f)}}d&&(a.push(b),c?(null!=b.Fa&&(b.Z=null),b.Vd=!0):(ur(this,a,a.length-1,"set"),yq(this)));return d};
function cr(a,b,c,d,e){for(var f=!1,g=vr(a,a.cc(c)),h=1;h<b.length;h++){var k=b[h];if(-1!==g&&g==vr(a,a.cc(k))||-1===g&&c.Z==k.Z&&c.Ra==k.Ra)if(!d||k.Vd){f=!0;k.Vd||e||ur(a,b,h,"cleared");b.splice(h,1);b!=a.B&&te(a.F,g,b==a.fa,5==k.type);k.Vd||yq(a);break}}return f}function wr(a,b){for(var c=1;c<b.length;c++)ur(a,b,c);return b.length-1}function ur(a,b,c,d){c=b[c];a.O(b[0]+" "+dr(c)+(d?" "+d:c.Sk?' "'+c.Sk+'"':""))}
function sr(a,b){if(void 0!==b)tr(a,b,1,a.B,!0),a.U=0;else for(b=1;b<a.B.length;b++){var c=a.B[b];if(c.Vd){if(!cr(a,a.B,c,!0))break;b=0}}}function vr(a,b){-1!==b&&(a=a.Ba&-65536,(b&a)==a&&(b&=1048575));return b}
function tr(a,b,c,d,e){var f=!1;if(!a.gb++){b=vr(a,b);z(a,-2147483632)&&204==Nf(a.F,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Vd){null!=h.Z&&(h.Fa=null);for(var k=vr(a,a.cc(h)),m=0;m<c;m++)if(b+m==k){var n,f=!0;h.Vd&&(cr(a,d,h,!0),e=!0);if(n=h.nl){for(var f=!1,t=0;t<n.length;t++)if(!xr(a,n[t],!0)){if(n[t].indexOf("if")){f=!0;break}for(var q=t+1;q<n.length&&n[q].indexOf("else");q++)t++;if(q==n.length){f=!0;break}}a.F.la.Ib||(f=!0)}if(f){e||ur(a,d,g,"hit");break}}}}}a.gb--;return f}
function yr(a,b,c,d){for(var e=wq(a,b.Ra,b.Z,b.Fa,b.type),f=a.Qa(b,1),g=4,h=0,k=!1,m=!1;(102==f||103==f)&&g--;)102==f?k||(b.Rb=!b.Rb,k=!0):m||(b.oc=!b.oc,m=!0),h++,f=a.Qa(b,1);var g=-1,n=Eq,k=a.Ga[f],m=k[0];176==m&&(m=a.Qa(b,1),k=Nq[m]||Kq,f|=m<<8,m=k[0]);if(36==m){var g=a.Qa(b,1),t;t=null;var q=g>>3&7,A=(3>(g>>6&3)?0:48)+q;(217==f||219==f)&&52<=A&&(A=q<<4|g&7);(q=Oq[f])&&(t=q[A]);t&&(n=Fq,k=t,m=k[0])}m>=n.length&&(g=a.Qa(b,1),k=Pq[m-n.length][g>>3&7],m=k[0]);n=n[m];q=k.length-1;t="";b.Rb&&(18==m?
n="CWDE":28==m?n="CDQ":104<=m&&107>=m&&(n+="D"));if(164<=f&&167>=f||170<=f&&175>=f)q=0,b.Rb&&"W"==n.slice(-1)&&(n=n.slice(0,-1)+"D");for(var f=-1,A=!0,F=1;F<=q;F++){var C,D;C="";D=k[F];if(void 0!==D){0>f&&(f=D>>14);80==m&&(2==f?t="[%800]":3==f&&(t="ES:["+(b.oc?"E":"")+"DI]"));var L=D&15;if(L)if(8==L)A=!1;else{var G=D&240;if(128<=G)if(0>g&&(g=a.Qa(b,1)),160>G){G=a;C=D;var ga=q;D=b;var S="",ab=g>>6,la=g&7;if(3>ab){L=!n.indexOf("FI");if(!ab&&(!D.oc&&6==la||D.oc&&5==la))ab=2;else{if(D.oc)if(4!=la)la+=
8;else{var S=G,Ja=ab,Da=D,Wa=S.Qa(Da,1),Ka=Wa>>6,Vb=Wa>>3&7,Wa=Wa&7,Pa="";if(Ja||5!=Wa)Pa=Jq[Wa+8];4!=Vb&&(Pa&&(Pa+="+"),Pa+=Jq[Vb+8],Ka&&(Pa+="*"+(1<<Ka)));Ja||5!=Wa||(Pa&&(Pa+="+"),Pa+=r(S.oa(Da,4)));S=Pa}S||(S=Jq[la])}1==ab?(G=G.Qa(D,1),S=G&128?S+("-"+r(-(G<<24>>24),2)):S+("+"+r(G,2))):2==ab&&(S&&(S+="+"),D.oc?(G=G.oa(D,4),S+=r(G)):(G=G.na(D,2),S+=r(G,4)));S="["+S+"]";if(1==ga){G="";C&=15;4==C&&(C=D.Rb?5:3);switch(C){case 7:G="FAR";break;case 1:G="BYTE";break;case 3:if(L){G="INT16";break}G="WORD";
break;case 5:G="DWORD";break;case 11:if(L){G="INT32";break}case 11:G="REAL32";break;case 12:if(L){G="INT64";break}case 12:G="REAL64";break;case 13:G="REAL80";break;case 14:G="BCD80"}G&&(S=G+" "+S)}}else S=zr(G,la,C,D);C=S}else C=160==G?zr(a,g&7,D,b):zr(a,g>>3&7,D,b);else if(16==G)C="1";else if(G)32==G?(b.oc?(C=8,D=a.oa(b,4)):(C=4,D=a.na(b,2)),C="["+r(D,C)+"]"):48==G?(C=1==L?a.Qa(b,1)<<24>>24:a.tb(b,!0),D=b.Ra+C&(b.Rb?-1:65535),C=r(D,b.Rb?8:4),D=Ar(a,wq(a,D,b.Z)),D[0]&&(C+=" ("+D[0]+")")):96==G?C=
9==L?"ST":10==L?"ST("+(g&7)+")":zr(a,(D&3840)>>8,D,b):112==G?C=zr(a,(D&3840)>>8,192,b):64==G?C="DS:[SI]":80==G&&(C="ES:[DI]");else{C=a;L=D;G=b;D=" ";switch(L&15){case 1:L&12288&&(D=r(C.Qa(G,1),2));break;case 2:D=r(C.Qa(G,1)<<24>>24,G.Rb?8:4);break;case 4:if(G.Rb){D=r(C.oa(G,4));break}case 3:D=r(C.na(G,2),4);break;case 7:G=wq(C,C.tb(G,!0),C.na(G,2),null,G.type,G.Rb,G.oc);D=dr(G);C=Ar(C,G);C[0]&&(D+=" ("+C[0]+")");break;default:D="imm("+v(L)+")"}C=D}if(!C||!C.length){t="INVALID";break}0<t.length&&(t+=
",");t+=C||"???"}}}g="";k=dr(e)+" ";if(-1!==e.Fa&&-1!==b.Fa){do if(g+=r(a.Qa(e,1),2),null==e.Fa)break;while(e.Fa!=b.Fa)}k+=pa(g,e.oc?24:16);k+=pa(n,8);t&&(k+=" "+t);a.F.ja<Hq[f]&&(c=Hq[f]+" CPU only");c&&A&&(k=pa(k,e.oc?74:56)+";"+c,k=a.F.la.Xe?k+("cycles="+$c(a.F).toString()+" cs="+r(a.F.Y.Lf)):k+(null!=d?"="+d.toString():""));Br(b,A,h);return k}
function zr(a,b,c,d){var e=c&240;if(192==e){if(5<b||4<=b&&80386>a.F.ja)return"??";b+=16}else if(208==e)b+=32;else if(224==e)b+=40;else if(240==e)b+=48;else if(a=c&15,3<=a&&(8>b&&(b+=8),5==a||4==a&&d.Rb))b+=16;return Iq[b]}
function Cr(a,b){switch(b){case "V":a=zf(a.F);break;case "D":a=a.F.ca&1024;break;case "I":a=a.F.ca&512;break;case "T":a=a.F.ca&256;break;case "S":a=yf(a.F);break;case "Z":a=xf(a.F);break;case "A":a=wf(a.F);break;case "P":a=vf(a.F);break;case "C":a=uf(a.F);break;default:a=0}return b+(a?"1":"0")+" "}function Tq(a){return r(a,a&-65536?8:4)}function Dr(a,b){8<=b&&15>=b&&4<a.Ja&&(b+=16);var c=Iq[b];32==b&&80286==a.F.ja&&(c="MS");return c+"="+nr(a,b)+" "}
function Er(a,b,c){return b.kc+"="+r(b.Z,4)+(c?"["+r(b.Aa,a.Da)+","+Tq(b.Ta)+"]":"")}function Fr(a,b,c,d,e){return b+"="+(null!=c?r(c,4):"")+"["+r(d,a.Da)+","+r(e-d,4)+"]"}
function Gr(a,b){var c;void 0===b&&(b=er(a));c=Dr(a,8)+Dr(a,11)+Dr(a,9)+Dr(a,10)+(4<a.Ja?"\n":"")+Dr(a,12)+Dr(a,13)+Dr(a,14)+Dr(a,15)+"\n"+Er(a,a.F.ta,b)+" "+Er(a,a.F.vb,b)+" "+Er(a,a.F.Xa,b)+" ";if(b){var d="TR="+r(a.F.Sa.Z,4),e=a.ga,e="A20="+(e.X||e.Eg!=e.Gb?"OFF ":"ON ");80386>a.F.ja&&(d="\n"+d,c+=e,e="");c+="\n"+Er(a,a.F.wa,b)+" ";80386<=a.F.ja&&(e+="\n",c+=Er(a,a.F.Nb,b)+" "+Er(a,a.F.Ob,b)+"\n");c+=Fr(a,"LD",a.F.Bc.Z,a.F.Bc.Aa,a.F.Bc.Aa+a.F.Bc.Ta)+" "+Fr(a,"GD",null,a.F.Fc,a.F.zd)+" "+Fr(a,"ID",
null,a.F.Nc,a.F.Sd)+" ";c=c+(d+" "+e)+Dr(a,32);80386<=a.F.ja&&(c+=Dr(a,34)+Dr(a,35))}else 80386<=a.F.ja&&(c+=Er(a,a.F.Nb,b)+" "+Er(a,a.F.Ob,b)+" ");return c+=Dr(a,23)+Cr(a,"V")+Cr(a,"D")+Cr(a,"I")+Cr(a,"T")+Cr(a,"S")+Cr(a,"Z")+Cr(a,"A")+Cr(a,"P")+Cr(a,"C")}l.lj=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
function cm(a,b,c,d,e,f,g,h){var k={},m=[],n;for(n in h){var t=h[n];"number"==typeof t&&(h[n]=t={o:t});var q=t.o,A=t.s,F=t.a;if(void 0!==q){void 0!==A&&(k.Ra=q,k.Z=A,k.Fa=null,a.cc(k),(k.Fa&-65536)==(a.ga.Eg&-65536)&&(k.Fa&=1048575),t.p=k.Fa);var A=m,q=[q>>>0,n],C=sa(A,q,a.lj);0>C&&A.splice(-(C+1),0,q)}F&&(t.a=F.replace(/''/g,'"'))}a.N.push({kg:b,fn:c,Z:d,Ra:e,Fa:f,Xm:g,Qd:h,Xi:m})}
function br(a,b,c){for(var d=0;d<a.N.length;d++){var e=a.N[d];if(!b||e.kg==b)if(b&&c==e.fn||!b&&c==e.Z){a.N.splice(d,1);break}}}function Ar(a,b,c){for(var d=[],e=b.Ra>>>0,f=a.cc(b)>>>0,g=0;g<a.N.length;g++){var h=a.N[g],k=h.Z,m=h.Ra>>>0,n=h.Fa;null!=n&&(n>>>=0);var t=h.Xm;48==k&&(k=40);if(k==b.Z&&e>=m&&e<m+t||null!=n&&f>=n&&f<n+t){b=sa(h.Xi,[e],a.lj);0<=b?Hr(a,g,b,d):c&&(b=~b,Hr(a,g,b-1,d),Hr(a,g,b,d));break}}!d.length&&(a=a.ga.xj(f,!0))&&(d.push(a),d.push(f));return d}
function Hr(a,b,c,d){var e={},f=a.N[b].Xi,g=0,h=null;0<=c&&c<f.length&&(g=f[c][0],h=f[c][1]);h&&(e=a.N[b].Qd[h],h="."==h.charAt(0)?null:e.l||h);d.push(h);d.push(g);d.push(e.a);d.push(e.c)}function Ir(a){a.Gf&&(a.Gf.value="")}
function Jr(a,b){if("?"==b)a.O("frequency commands:"),a.O("\tclear\tclear all frequency counts");else{var c=0;if(a.W)if("clear"==b){for(b=0;b<a.W.length;b++)a.W[b]=[b,0];a.O("frequency data cleared");c++}else if(void 0!==b)a.O("unknown frequency command: "+b),c++;else{var d=a.W.slice();d.sort(function(a,b){return b[1]-a[1]});for(b=0;b<d.length;b++){var e=d[b][0],f=d[b][1];f&&(a.O((Eq[a.Ga[e][0]]+" ").substr(0,5)+" ("+u(e)+"): "+f+" times"),c++)}}c||a.O("no frequency data available")}}
function Kr(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return uq(a)||a.O("no variables"),!0;if(!c[2])return uq(a,c[1]);if(!c[3])return delete a.ya[c[1]],!0;b=pq(a,c[3]);return void 0!==b?(a.ya[c[1]]=b,!0):!1}a.O("invalid assignment:"+b);return!1}
function Lr(a,b,c){var d=null;if(b=kr(a,b,!0)){a.cc(b);var e=Ar(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.Ra-e[1])&&(g=" + "+v(f)),f=e[0]+" ("+Uq(e[1],b.Z)+")"+g,c&&a.O(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.Ra)&&(g=" - "+v(f)),f=e[4]+" ("+Uq(e[5],b.Z)+")"+g,c&&a.O(f),d||(d=f))}else c&&a.O("no symbols")}return d}
function Mr(a,b){if(b[1]&&"?"!=b[1]){var c="json"==b[1],d,e=0,f=0,g=c?{}:kr(a,b[1]);if(g&&(d=rq(a,b[2],"drive #"),void 0!==d)){if(!c){e=rq(a,b[3],"sector #");if(void 0===e)return;f=rq(a,b[4],"# of sectors");void 0===f&&(f=1)}var h=a.tc;2<=d&&a.Jb&&(d-=2,h=a.Jb);if(h){var k=h.mj(d);if(k)if(k.za)if(c)Ir(a),a.O(k.za.toJSON());else if(h.Uk(k,e,f)){var m=0,n=!1;for(b=dr(g);!n&&0<k.Hb--;)(function(a,b){h.Le(k,function(c){0>c?(a.O("out of data at address "+dr(b)),n=!0):(a.qc(b,c,1,!0),m++)})})(a,g);Yc(a.F,
!0);a.O(m+" bytes read at "+b)}else a.O("sector "+e+" request out of range");else a.O("drive "+d+" not loaded");else a.O("invalid drive: "+d)}else a.O("disk controller not present")}}else a.O("load commands:"),a.O("\tl [address] [drive #] [sector #] [# sectors]")}
function qr(a,b){var c;if(b&&"?"==b[1])a.O("register commands:"),a.O("\tr\tdump registers"),a.Tb&&a.O("\trfp\tdump floating-point registers"),a.O("\trp\tdump all registers"),a.O("\trx [#]\tset flag or register x to [#]");else{var d;null==c&&(c=!0);if(b&&1<b.length){var e=b[1];if(a.Tb&&"fp"==e){c=a.Tb;d=dg(c);b=c.jc;for(var f=0;8>f;f++){var g=c,e=null;if(f<g.X.length){var e=[],h=g.B+f&7;e[0]=h;e[1]=Cg(g,h);e[2]=g.X[h];h<<=1;e[3]=g.aa[h];e[4]=g.aa[h+1];g=Gg(g,e[3],e[4]);e[5]=g[0];e[6]=g[1];e[7]=g[2]}if(!e)break;
a.O("ST"+f+": "+pa(e[2].toFixed(15),24,!0)+" "+r(e[4])+","+r(e[3])+" ["+e[0]+":"+Gq[e[1]]+"]")}a.O(" B3SSS210ESPUOZDI xxxIRRPPIxPUOZDI");a.O("SW: "+fa(d,16)+" ("+v(d)+") CW: "+fa(b,16)+" ("+v(b)+")");return}if("p"==e)d=80286<=a.F.ja;else{f=e.indexOf("=");if(0<f)b=e.substr(f+1),e=e.substr(0,f);else if(2<b.length)b=b[2];else{a.O("missing value for "+b[1]);return}g=pq(a,b);if(void 0===g)return;f=!0;h=e.toUpperCase();"E"==h.charAt(0)&&4>=a.Ja&&(h=null);switch(h){case "AL":a.F.G=a.F.G&
-256|g&255;break;case "AH":a.F.G=a.F.G&-65281|g<<8&255;break;case "AX":a.F.G=a.F.G&-65536|g&65535;break;case "BL":a.F.H=a.F.H&-256|g&255;break;case "BH":a.F.H=a.F.H&-65281|g<<8&255;break;case "BX":a.F.H=a.F.H&-65536|g&65535;break;case "CL":a.F.I=a.F.I&-256|g&255;break;case "CH":a.F.I=a.F.I&-65281|g<<8&255;break;case "CX":a.F.I=a.F.I&-65536|g&65535;break;case "DL":a.F.M=a.F.M&-256|g&255;break;case "DH":a.F.M=a.F.M&-65281|g<<8&255;break;case "DX":a.F.M=a.F.M&-65536|g&65535;break;case "SP":I(a.F,J(a.F)&
-65536|g&65535);break;case "BP":a.F.P=a.F.P&-65536|g&65535;break;case "SI":a.F.K=a.F.K&-65536|g&65535;break;case "DI":a.F.J=a.F.J&-65536|g&65535;break;case "DS":xd(a.F,g);break;case "ES":yd(a.F,g);break;case "SS":nd(a.F,g);break;case "CS":pf(a.F,g);a.aa=wq(a,M(a.F),a.F.wa.Z);break;case "IP":case "EIP":O(a.F,g);a.aa=wq(a,M(a.F),a.F.wa.Z);break;case "PC":case "PS":Ad(a.F,g);break;case "C":g?Bf(a.F):Cf(a.F);break;case "P":g?(e=a.F,e.resultType&=-3,e.ca|=4):(e=a.F,e.resultType&=-3,e.ca&=-5);break;case "A":g?
Jf(a.F):Hf(a.F);break;case "Z":g?Kf(a.F):If(a.F);break;case "S":g?(e=a.F,e.resultType&=-17,e.ca|=128):(e=a.F,e.resultType&=-17,e.ca&=-129);break;case "I":g?(e=a.F,e.ca|=512):(e=a.F,e.ca&=-513);break;case "D":g?(e=a.F,e.ca|=1024):(e=a.F,e.ca&=-1025);break;case "V":g?Df(a.F):Ef(a.F);break;default:var k=!0;if(80286<=a.F.ja)switch(k=!1,h){case "MS":Lf(a.F,g);break;case "TR":-1===a.F.Sa.load(g)&&(f=!1);break;default:if(k=!0,80386<=a.F.ja)switch(k=!1,h){case "EAX":a.F.G=g;break;case "EBX":a.F.H=g;break;
case "ECX":a.F.I=g;break;case "EDX":a.F.M=g;break;case "ESP":I(a.F,g);break;case "EBP":a.F.P=g;break;case "ESI":a.F.K=g;break;case "EDI":a.F.J=g;break;case "FS":a.F.Nb.load(g);break;case "GS":a.F.Ob.load(g);break;case "CR0":a.F.$a=g;rj.call(a.F,g);break;case "CR2":a.F.se=g;break;case "CR3":a.F.Od=g;Cd.call(a.F,g);break;default:k=!0}}if(k){a.O("unknown register: "+e);return}}if(!f){a.O("invalid value: "+b);return}Yc(a.F);a.O("updated registers:")}}a.O(Gr(a,d));c&&(a.aa=wq(a,M(a.F),a.F.wa.Z),rr(a,dr(a.aa)))}}
function Nr(a,b){b=qa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(or(a,c[2])):pq(a,b,!0)}function Or(a,b,c){for(var d=null,e=b.Ra,f=e,g=1;6>=g&&e;g++){if(2<g){b.Ra=e;b.Fa=null;var h=yr(a,b);if(0<=h.indexOf("CALL")||c&&0<=h.indexOf("INT")){var k=h.indexOf(" ");if(e+(h.indexOf(" ",k+1)-k-1)/2==f){d=h;break}}}e--}b.Ra=f;return d}function Pr(a,b,c){var d="t"!=b;c=rq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Ra(c,function(){return sb(a,!0)&&a.wf(e,d,!1)},function(){Yc(a.F);sb(a,!1)})}
function Br(a,b,c){if(a.jh=b)null!=a.sj&&(a.Rb=a.sj),null!=a.rj&&(a.oc=a.rj),a.sj=a.Rb,a.rj=a.oc;a.Ve=c||0}
function rr(a,b,c,d){if(b=kr(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=kr(a,c,!0);if(!d||d.Ra<b.Ra)return;e=d.Ra-b.Ra;if(256<e){a.O("range too large");return}d=-1}c=0;var f;for(Br(b,!0);0<e&&d--;){f=tb(a,!1)||a.U?a.ea:null;var g=null!=f?"cycles":null,h=Ar(a,b),k=b.Fa;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.O(m)}h[3]&&(g=h[3],f=null);f=yr(a,b,g,f);b.jh||d||d++;a.O(f);a.aa=b;e-=b.Fa-k;c++}}}
l.Ng=function(a,b,c){if(b)if(a){0>this.A&&this.C.length&&(this.A=0);if(0>this.A||a!=this.C[this.A])this.C.splice(0,0,a),this.A=0;this.A--}else a=this.C[this.A+1];b=[];if(a){a=a.toLowerCase().replace(/""/g,"'");var d=0,e=null;c=c||";";for(var f=0;f<=a.length;f++){var g=a.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==c&&!e||!g)b.push(qa(a.substring(d,f))),d=f+1}}return b};
function xr(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.va&&(a.O("ended assemble at "+dr(a.ua)),a.aa=a.ua,a.va=!1),b="";else if(!c){var e=">> ";a.F.$a&1&&(e=a.F.ca&131072?"-- ":"## ");a.O(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.Pa=null;if(vb(a)&&0<b.length){a.va&&(b="a "+dr(a.ua)+" "+b);var g=b.replace(/ +/g," ").split(" ");if(g&&g.length)for(var h=g[0],k=h.charAt(0),m=1;m<h.length;m++){var n=h.charAt(m);if("?"==k||"r"==k||"a">n||"z"<n){g[0]=h.substr(m);g.unshift(h.substr(0,m));break}}switch(g[0].charAt(0)){case "a":var t=
kr(a,g[1],!0);if(t)if(a.ua=t,void 0===g[2])a.O("begin assemble at "+dr(t)),a.va=!0,Yc(a.F);else{var q;a.O("not supported yet");q=[];if(q.length){for(var A=0;A<q.length;A++)a.qc(t,q[A],1);a.O(yr(a,a.ua))}}break;case "b":a:{var F=g[0],C=g[1],D=b;if("?"==C)a.O("breakpoint commands:"),a.O("\tbi [p]\ttoggle break on input port [p]"),a.O("\tbo [p]\ttoggle break on output port [p]"),a.O("\tbp [a]\tset exec breakpoint at addr [a]"),a.O("\tbr [a]\tset read breakpoint at addr [a]"),a.O("\tbw [a]\tset write breakpoint at addr [a]"),
a.O("\tbc [a]\tclear breakpoint at addr [a]"),a.O("\tbl\tlist all breakpoints"),a.O("\tbn [n]\tbreak after [n] instruction(s)");else{var L=F.charAt(1);if("l"==L){var G;G=0+wr(a,a.B);G+=wr(a,a.ra);(G+=wr(a,a.fa))||a.O("no breakpoints")}else if("n"==L)a.Oa=rq(a,C),a.O("break after "+a.Oa+" instruction(s)");else if(void 0===C)a.O("missing breakpoint address");else{var ga={};if("*"!=C&&(ga=kr(a,C,!0,!0),!ga))break a;C=null==ga.Ra?C:v(ga.Ra);"c"==L?null==ga.Ra?(xq(a),a.O("all breakpoints cleared")):cr(a,
a.B,ga)||cr(a,a.ra,ga)||cr(a,a.fa,ga)||a.O("breakpoint missing: "+dr(ga)):"i"==L?a.O("breakpoint "+(mc(a.ga,ga.Ra)?"enabled":"cleared")+": port "+C+" (input)"):"o"==L?a.O("breakpoint "+(qc(a.ga,ga.Ra)?"enabled":"cleared")+": port "+C+" (output)"):null!=ga.Ra&&(lr(a,ga,D),"p"==L?a.Rd(a.B,ga):"r"==L?a.Rd(a.ra,ga):"w"==L?a.Rd(a.fa,ga):a.O("unknown breakpoint command: "+L))}}}break;case "c":Ir(a);break;case "d":a:{var S=g,ab,la=S[0],Ja=S[1],Da=S[2],Wa=S[3];if("?"==Ja){var Ka="";for(ab in Bb)a.cb[ab]&&
(Ka&&(Ka+=","),Ka+=ab);Ka+=",state,symbols";a.O("dump memory commands:");a.O("\tdb [a] [#] dump # bytes at address a");a.O("\tdw [a] [#] dump # words at address a");a.O("\tdd [a] [#] dump # dwords at address a");a.O("\tdh [#] [#] dump # instructions from history");a.O("\tdi [#] dump descriptor info for IDT #");a.O("\tds [#] dump descriptor info for selector #");Ka.length&&a.O("dump extension commands:\n\t"+Ka)}else if("state"==Ja){var Vb=Qr(a.X,!0);"console"==Da?console.log(Vb):
(Ir(a),a.O(Vb))}else if("symbols"==Ja)for(var Pa=0;Pa<a.N.length;Pa++){var Ud=a.N[Pa],Rc;for(Rc in Ud.Qd)if("."!=Rc.charAt(0)){var Vd=Ud.Qd[Rc],Fe=Vd.o;if(void 0!==Fe){var Wd=Vd.s;void 0===Wd&&(Wd=Ud.Z);var Ge=Ud.Qd[Rc].l;Ge&&(Rc=Ge);a.O(Uq(Fe,Wd)+" "+Rc)}}}else{if("ds"==la||"dg"==la||"dl"==la)la="d",S=[la,"desc",Ja];"d"==la&&"page"==Ja&&(la="dp",S.shift());if("dp"==la){S.shift();var ii=S[0];if(ii){var Qe=a.cc(kr(a,ii));if(-1===Qe)a.O("invalid address: "+ii);else{var $d,za=null;if(80386<=a.F.ja){var ae=
a.ga,za={};za.Jk=(Qe&-4194304)>>>20;za.$i=a.F.Od+za.Jk;za.yb=ae.sa[(za.$i&ae.Gb)>>>ae.La];za.Aj=za.yb.Md(za.Jk);za.Kk=(Qe&4190208)>>>10;za.aj=(za.Aj&-4096)+za.Kk;za.zb=ae.sa[(za.aj&ae.Gb)>>>ae.La];za.Bj=za.zb.Md(za.Kk);za.pl=(za.Bj&-4096)+(Qe&4095)}if($d=za){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var od="%"+r(Qe),od=od+(" %%"+mr($d.$i,$d.Aj)),od=od+(" %%"+mr($d.aj,$d.Bj,!0)),
od=od+(" %%"+r($d.pl));a.O(od)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==la){if("disk"==Ja){S[0]="l";S[1]="json";Mr(a,S);break a}for(ab in Bb)if(S[1]==ab){var zn=a.cb[ab];zn?(S.shift(),S.shift(),zn(S)):a.O("no dump registered for "+Ja);break a}Ja||(la=a.Dc||"db")}else a.Dc=la;if("dh"==la){var An=Ja,Bn=Da,Cn="",Dn=0,Zb=a.Ea,sc=a.ia;if(sc.length){var Lb=+An||a.Ub,Re=+Bn||10;isNaN(Lb)?Lb=Re:Cn="more ";Lb>sc.length&&(a.O("note: only "+sc.length+" available"),Lb=sc.length);
Zb-=Lb;0>Zb&&(null==sc[sc.length-1].Z?(Lb=Zb+Lb,Zb=0):Zb+=sc.length);var ji=[];"call"==Bn&&(Re=1E5,ji=["CALL"]);for(void 0!==An&&a.O(Lb+" instructions earlier:");0<Re&&Zb!=a.Ea;){var pd=sc[Zb++];if(null==pd.Z)break;var Se=wq(a,pd.Ra,pd.Z,pd.Fa,pd.type,pd.Rb,pd.oc),is=Lb--,En=yr(a,Se,"history",is);(!ji.length||0<=En.indexOf(ji[0]))&&a.O(En);Se.Ve&&(Zb+=Se.Ve,Re-=Se.Ve,Lb-=Se.Ve);Zb>=sc.length&&(Zb=0);a.Ub=Lb;Dn++;Re--}}Dn||(a.O("no "+Cn+"history available"),a.Ub=void 0)}else if("di"==la){S.shift();
var ki=S[0];if(ki){var Te=rq(a,ki);if(void 0===Te||0>Te||255<Te)a.O("invalid vector: "+ki);else{var Fn="&",Gn=!!(a.F.$a&1),Hn=!1,ng=a.F.Nc+(Te<<(Gn?3:2)),In=a.F.na(ng+0),js=a.F.na(ng+2);Gn&&(Fn="#",a.F.na(ng+4)&2048&&(Hn=!0,In|=a.F.na(ng+6)<<16));a.O("dumpIDT("+v(Te)+"): "+Fn+r(js,4)+":"+r(In,Hn?8:4))}}else a.O("no IDT vector")}else if("dt"==la)S.shift(),a.O("no information");else{var be=kr(a,Ja);if(be&&(null!=be.Z||null!=be.Fa)){var og=0;Da&&("l"==Da.charAt(0)&&(Da=Da.substr(1)||Wa),og=rq(a,Da)>>>
0,65536<og&&(og=65536));for(var Ue="",ce="dd"==la?4:"dw"==la?2:1,pg=ce*og||128,ks=pg+15>>4||1;ks--&&0<pg;){var Ve=0,li=0,We,mi="",Jn="",Ja=dr(be);for(We=4==ce?16:a.Ya;0<We&&0<pg;We--){var qg=a.Qa(be,1),Ve=Ve|qg<<(li++<<3);li==ce&&(mi+=8==a.Ya?ia(Ve,3*ce):r(Ve,2*ce),mi+=1==ce?9==We?"-":" ":" ",Ve=li=0);Jn+=32<=qg&&128>qg?String.fromCharCode(qg):".";pg--}Ue&&(Ue+="\n");Ue+=Ja+" "+mi+(0==We?" "+Jn:"")}Ue&&a.O(Ue);a.Db=be}}}}}break;case "e":if("else"==g[0])break;var rg=1,Kn=255,Ln=a.Qa,Mn=a.qc;"ew"==
g[0]&&(rg=2,Kn=65535,Ln=a.na,Mn=a.jb);var Nn=rg<<1,On=g[1];if(null==On)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var sg=kr(a,On);if(sg)for(var tg=2;tg<g.length;tg++){var Xe=pq(a,g[tg]);if(void 0===Xe){a.O("unrecognized value: "+g[tg]);break}Xe&~Kn&&a.O("warning: "+r(Xe)+" exceeds "+rg+"-byte value");var ls=Ln.call(a,sg);a.O("changing "+dr(sg)+" from "+r(ls,Nn,!0)+" to "+r(Xe,Nn,!0));Mn.call(a,sg,Xe,rg)}}break;case "f":Jr(a,
g[1]);break;case "g":a:{var Pn=g[1],ms=b;"gt"==g[0]&&(a.fb=!0);if(void 0!==Pn){var ni=kr(a,Pn,!0);if(!ni)break a;lr(a,ni,ms);a.Rd(a.B,ni,!0)}a.Ne(!0)||c||a.O("cpu busy or unavailable, run command ignored")}break;case "h":a:{var oi;if(a.la.Ib)oi="halting",a.Wb();else{if(tb(a,!0))break a;oi="already halted"}c||a.O(oi)}break;case "i":if("if"==g[0]){var pi;var Ye=b.substr(2),Ye=qa(Ye);pq(a,Ye)?(c||a.O("true: "+Ye),pi=!0):(c||a.O("false: "+Ye),pi=!1);pi||(d=!1);break}if("int"==g[0]){var ug;a:switch(rq(a,
g[1])){case 19:mk(a,19,a.F.Ha,!0);a.Ca=a.pa;ug=!0;break a;case 33:mk(a,33,a.F.Ha,!0);a.Ca=a.pa;ug=!0;break a;default:ug=!1}ug||(d=!1);break}var qi=g[1];if(qi&&"?"!=qi){var ri=rq(a,qi);if(void 0!==ri){var ns=oc(a.ga,ri,1);a.O(v(ri)+": "+u(ns))}}else a.O("input commands:"),a.O("\ti [p]\tread port [p]"),a.O("warning: port accesses can affect hardware state");break;case "k":var os=g[0];if("?"==g[1])a.O("stack trace commands:"),a.O("\tk\tshow frame addresses"),a.O("\tks\tshow symbol information");else{var si=
0,Qn=a.F.wa.Z,Ze=wq(a),Uc=wq(a,J(a.F),a.F.ta.Z);for(a.O("stack trace for "+dr(Uc));10>si;){for(var tc=null,ps=256;Uc.Ra>>>0<a.F.Sg>>>0;){Ze.Ra=a.tb(Uc,!0);if(null==Uc.Fa||!ps--)break;Ze.Z=Qn;if(tc=Or(a,Ze))break;Ze.Z=a.tb(Uc);if(tc=Or(a,Ze,!0)){Qn=a.tb(Uc,!0);0<tc.indexOf("INT")&&a.tb(Uc,!0);break}}if(!tc||null==tc)break;var Rn=null;if("ks"==os){var Sn=tc.match(/[0-9A-F]+$/);Sn&&(Rn=Lr(a,Sn[0]))}tc=pa(tc,50)+" ;"+(Rn||"stack="+dr(Uc));a.O(tc);si++}si||a.O("no return addresses found")}break;case "l":if("ln"==
g[0]){Lr(a,g[1],!0);break}Mr(a,g);break;case "m":if("mouse"==g[0]){var ti=g[1],vg=g[2];if(a.V){var Tn=1;"-"==vg.charAt(0)&&(Tn=-1,vg=vg.substr(1));var qd=rq(a,vg,ti);if(void 0!==qd)switch(qd=qd*Tn|0,ti){case "x":a.V.Kf(qd,0);break;case "y":a.V.Kf(0,qd);break;case "click":a.V.he(qd,!0);a.V.he(qd,!1);break;default:a.O("unknown action: "+ti)}}else a.O("no mouse");break}a:{var uc,vc=null,Ma=g[1];"?"==Ma&&(Ma=void 0);if(void 0!==Ma){var rd=0;if("all"==Ma)rd=1610481663,Ma=null;else if("on"==Ma)vc=!0,Ma=
null;else if("off"==Ma)vc=!1,Ma=null;else{"keys"==Ma&&(Ma="key");"kbd"==Ma&&(Ma="keyboard");for(uc in Bb)if(Ma==uc){rd=Bb[uc];vc=!!(a.wc&rd);break}if(!rd){a.O("unknown message category: "+Ma);break a}}rd&&("on"==g[2]?(a.wc|=rd,vc=!0):"off"==g[2]&&(a.wc&=~rd,vc=!1))}var qs=0,$e="";for(uc in Bb)if(!Ma||Ma==uc){var rs=!!(a.wc&Bb[uc]);if(null===vc||vc==rs)$e&&($e+=","),++qs%10||($e+="\n\t"),"key"==uc&&(uc="keys"),$e+=uc}void 0===Ma&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");
a.O((null!==vc?vc?"messages on: ":"messages off: ":"message categories:\n\t")+($e||"none"));yq(a)}break;case "o":var ui=g[1],ss=g[2];if(ui&&"?"!=ui){var vi=rq(a,ui,"port #"),wi=rq(a,ss);void 0!==vi&&void 0!==wi&&(wc(a.ga,vi,1,wi),a.O(v(vi)+": "+u(wi)))}else a.O("output commands:"),a.O("\to [p] [b]\twrite byte [b] to port [p]"),a.O("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Nr(a,b.substr(5));break}var Un="pr"==g[0]?1:0,de=1+Un;if(a.U)a.O("step in progress");
else{var wg,Vn=!1,kb=wq(a,M(a.F),a.F.wa.Z);do switch(wg=!1,a.Qa(kb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:fr(a,kb,1);wg=!0;break;case 204:case 206:a.U=de;fr(a,kb,1);break;case 205:case 224:case 225:case 226:a.U=de;fr(a,kb,kb.Rb?4:2);break;case 232:a.U=de;fr(a,kb,kb.Rb?5:3);break;case 154:a.U=de;fr(a,kb,kb.Rb?7:5);break;case 255:var Wn=a.tb(kb)&14591;if(4351==Wn||6399==Wn)a.U=de,yr(a,kb);break;case 243:case 242:fr(a,kb,1);Vn=wg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Vn&&
(a.U=de,fr(a,kb,1))}while(wg);a.U?(a.Rd(a.B,kb,!0),a.Ne()||(a.X&&a.X.wd(),a.U=0)):Pr(a,Un?"tr":"t")}break;case "r":if("reset"==b){a.X&&a.X.reset();break}qr(a,g);break;case "t":Pr(a,g[0],g[1]);break;case "u":rr(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Kr(a,b.substr(3))||(d=!1);break}a.O("PCx86 version 1.32.0 ("+a.F.ja+",RELEASE,NOPREFETCH"+(xb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.O(Ca());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var af;void 0!==g[3]&&(af=+g[3]);switch(g[2]){case "int":a.F.Y.jf=
af;break;case "start":a.F.Y.Nf=af;break;case "stop":a.F.Y.lf=af;break;default:a.O("unknown cs option");break a}void 0!==af&&Xc(a.F);a.O("checksums "+(a.F.la.Xe?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(ad(a.F,+g[2])||a.O("warning: using 1x multiplier, previous target not reached"));a.O("target speed: "+(a.F.Y.He.toFixed(2)+"Mhz")+" ("+a.F.Y.Wd+"x)");break;default:a.O("unknown option: "+g[1])}else a.O("execution options:"),a.O("\tcs int #\tset checksum cycle interval to #"),a.O("\tcs start #\tset checksum cycle start count to #"),
a.O("\tcs stop #\tset checksum cycle stop count to #"),a.O("\tsp #\t\tset speed multiplier to #");break;case "?":if(g[1]){Nr(a,b.substr(1));break}var xi="commands:",yi;for(yi in Dq)xi+="\n"+pa(yi,7)+Dq[yi];Yf(a)||(xi+="\nnote: frequency/history disabled if no exec breakpoints");a.O(xi);break;default:a.O("unknown command: "+b),d=!1}}}catch(Xn){a.O("debugger error: "+(Xn.stack||Xn.message)),d=!1}return d}function Aq(a,b,c){b=a.Ng(b,c);for(var d in b)if(!xr(a,b[+d]))return!1;return!0}
Za(function(){for(var a=qb(document,"pcx86","debugger"),b=0;b<a.length;b++){var c=a[b],d=nb(c),d=new vq(d);pb(d,c)}});
function Rr(a,b,c){db.call(this,"Computer",a,Rr,67108864);this.la.ic=!1;Sr(this,b);this.fa=Vc(this,"autoPower",a);this.N=0;this.ra=a.busWidth||a.buswidth;this.A=Tr;this.aa=null;this.V=this.pa=!1;this.ua=Vc(this,"url")||"";this.ya=(Math.random()+.1).toString(36).substr(2,12);this.B=Ur(this);if(this.F=mb("CPU",this.id)){this.ha=mb("Debugger",this.id);this.L=[];for(b=null;b=Gb(this,"Video",b);)this.L.push(b);this.ga=new Ob({id:this.ce+".bus",busWidth:this.ra},this.F,this.ha);var d,e=jb(this.id);if((this.C=
mb("Panel",this.id))&&this.C.Gf)for(b=0;b<e.length;b++)d=e[b],d.Na=this.C.Na,d.O=this.C.O,d.Gf=this.C.Gf;this.O("PCx86 v1.32.0\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.Jc&&d.Jc(this,this.ga,this.F,this.ha);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.W=d:this.A=parseInt(d,10));var f;if(a=Vc(this,"state")||(f=!0,a.state))b=this.ia=a,f||(this.V=!0,this.A=Tr),this.A&&(this.ea=new nf(this,
"1.32.0"),this.ea.load()?b=null:delete this.ea);!b&&this.A&&(b=Vr(this))&&(this.V=!0);if(b){var g=this;Aa(b,null,!0,function(a,b,c){c?(g.W=null,g.V=!1,g.Na("Unable to load machine state from server (error "+c+(b?": "+qa(b):"")+")")):(g.aa=b,g.pa=!0);ub(g)})}else ub(this);this.qa.power||(this.fa=!0);!c&&this.fa&&Wr(this,this.dg)}else w("Unable to find CPU component")}gb(Rr);var Tr=0;l=Rr.prototype;l.gf=function(){return this.ya};
function Sr(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){w(d.message+" ("+c+")")}}a.U=b}function Vc(a,b,c){var d=b.toLowerCase(),d=Na(b)||Na(d);void 0===d&&a.U&&(d=a.U[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}l.ie=function(){return this.B||""};function Wr(a,b,c){for(var d=jb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!vb(f)){vb(f,function(){Wr(a,b,c)});return}}b.call(a,c)}
function Xr(a,b){var c=new nf(a,"1.32.0","validate");if(c.load()&&Yr(c)){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Na("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
l.dg=function(a){void 0===a&&(a=this.A||(this.aa?1:Tr));if(!this.N){this.N++;var b=!1,c=!1;this.ka=!1;var d=this.ea||new nf(this,"1.32.0");if(-1==a)b=!0;else if(a>Tr){if(d.load(this.aa)){this.X=new nf(this,"1.32.0","failsafe");this.X.load()&&(Zr(this,d),a=2,$r(this.X));this.X.set("timestamp",ua());as(this.X);var e=this.A&&!this.V;if(1==a||Ea("Click OK to restore the previous PCx86 machine state, or CANCEL to reset the machine.")){if(c=Yr(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):
("error"==f&&"no machine state"!=g?(this.Na("Error: "+g),"unable to verify user"==g&&(Ia("user",""),this.B=null)):this.O(f+": "+g),$r(d),d.load()?(c=Yr(d),e=!0):c=!1))}e&&Xr(this,c?d:null)}else 2==a&&d.clear()}else Xr(this);delete this.aa;delete this.ea}e=jb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.F&&(c=bs(this,g,d,b,c));b=[d,a,c];-1!=a?Wr(this,this.qj,b):this.qj(b)}};
function bs(a,b,c,d,e){if(!b.la.ic){b.la.ic=!0;if(b.hc){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.hc(f,d)&&f&&(w("Unable to restore state for "+b.type),a.ia&&!a.pa?(c.clear(),a.A=Tr,window&&window.location.reload()):a.ka=!0,b.hc(null),e=!1)}if(!d&&b.al)for(a=b.al.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
l.qj=function(a){var b=a[0],c=0>a[1];a=a[2];this.va=!0;this.la.ic=!0;var d=this.qa.power;d&&(d.textContent="Shutdown");this.F&&(bs(this,this.F,b,c,a),this.F.Cf());this.ka&&(Zr(this,b),b.clear());!c&&this.X&&(this.X.clear(),delete this.X);this.N=0};
function Zr(a,b){if(Ea("There may be a problem with your PCx86 machine.\n\nTo help us diagnose it, click OK to send this PCx86 machine state to http://www.pcjs.org.")){var c=a.ie();b=b.toString();var d={app:"PCx86",ver:"1.32.0"};d.url=a.ua;d.user=c;d.type="bug";d.data=b;Aa("http://www.pcjs.org/api/v1/report",d,!0)}}
function Qr(a,b,c){var d,e="none";if(a.N)return null;a.N--;var f=new nf(a,"1.32.0"),g=new nf(a,"1.32.0","validate"),h=ua();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.32.0");f.set("url",window?window.location.href:null);f.set("browser",Ca());a.F&&a.F.gc&&(c&&a.F.Wb(),d=a.F.gc(b,c),"object"===typeof d&&f.set(a.F.id,d),c&&(a.F.la.ic=!1,!1===d&&(e=null)));for(var h=jb(a.id),k=0;k<h.length;k++){var m=h[k];m.la.ic&&(m.gc&&(d=m.gc(b,c),"object"===typeof d&&f.set(m.id,d)),c&&(m.la.ic=!1,
!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.B&&cs(a,a.B,f.toString()),as(g)&&as(f)||(e=null,d=h=!0)):a.A&&(d=!0,h=3==a.A),d&&f.clear(h)):e=f.toString());c&&(a.la.ic=!1,b=a.qa.power)&&(b.textContent="Power");a.N=0;return e}l.reset=function(){this.ga&&this.ga.reset&&(y(this,"Resetting "+this.ga.type),this.ga.reset());for(var a=jb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ga&&c.reset&&(y(this,"Resetting "+c.type),c.reset())}};
l.start=function(a,b){for(var c=jb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};l.stop=function(a,b){for(var c=jb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
l.Pb=function(a,b,c){var d=this;switch(b){case "power":return this.qa[b]=c,c.onclick=function(){d.N||(d.la.ic?Qr(d,!1,!0):Wr(d,d.dg))},!0;case "reset":return this.qa[b]=c,c.onclick=function(){if(d.la.ic&&!d.N)if(d.A&&!d.W){var a=Ea("Click OK to save changes to this PCx86 machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Qr(d,a,!0);!a&&d.ia?window&&window.location.reload():(a||(d.lh=!0),d.dg(Tr),d.lh=!1)}else d.reset(),d.F&&d.F.Cf()},!0;case "save":if(ma(Ba(),"pcjs.org"))c.parentNode.removeChild(c);
else return this.qa[b]=c,c.onclick=function(){var a=Ur(d,!0);if(a){var b=!!(d.A&&!d.W||d.ia),c=Qr(d,b);b?cs(d,a,c):d.Na("Resume disabled, machine state not saved")}},!0}return!1};
function Ur(a,b){var c=a.B;c||((c=Ha("user"),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=ds(a,c))||a.Na("The user ID is invalid.")):b&&a.Na("Browser local storage is not available"));return c}
function ds(a,b){a.B=null;b=Aa(Ba()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(Ia("user",b.data),a.B=b.data)}catch(d){w(d.message+" ("+c+")")}return a.B}function Vr(a){var b=null;a.B&&(b=Ba()+"/api/v1/user?req=load&user="+a.B+"&state="+es(a,"1.32.0"));return b}
function cs(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=es(a,"1.32.0");d.data=c;b=Aa(Ba()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Na("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.Na(c),Ia("user",""),a.B=null)}}
function Gb(a,b,c){a=jb(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}l.wd=function(a){if(this.L.length){var b=0,c=0;!a&&window&&(b=window.scrollX,c=window.scrollY);var d=this.L[0];d.X&&d.X.focus();!a&&window&&window.scrollTo(b,c)}};l.Cc=function(a){this.F&&this.F.Cc(a);this.C&&this.C.Cc(a)};
function gd(a,b){for(var c=0;c<a.L.length;c++)rn(a.L[c],b);if(a.C&&(a=a.C,a.Ja)){Kb(a,18,a.aa,a.Ga);if(a.gb){b=a.ga;var c=a.A,d,e;null==d&&(d=0);null==e&&(e=b.W-d|0);c||(c={ih:0,Td:0,Yg:[]});var f=d>>>b.La;d=d+e-1>>>b.La;c.ih=0;for(c.Td=0;f<=d;)e=b.sa[f],c.ih+=e.size,e.size&&(c.Yg.push(wa(Jb,f,0,0,e.type)),c.Td++),f++;a.A=c;a.ya=a.A.Td*a.ga.Sb/691200;d=0;a.A.fj=0;a.A.Bf||(a.A.Bf=[]);e=-1;b=0;for(var g=-1,c=0;c<a.A.Td;c++){var h=a.A.Yg[c],f=xa(Jb.type,h),h=xa(Jb.Hk,h);if(f!=e||h!=g+1)(g=c-b)&&(d+=
Nb(a,b,g,e)),e=f,b=c;g=h}d+=Nb(a,b,c-b,e);e=a.A.wl!=d;a.A.wl=d;if(e){e=new Eb(0,0,a.aa.width,a.aa.height);a.A.Se=[];b=a.A.Td;for(d=0;d<a.A.fj;d++)c=a.A.Bf[d].Td,a.A.Se.push(Fb(e,c,b,!d)),b-=c;for(d=0;d<a.A.Se.length;d++)e=a.A.Bf[d],b=c=a.A.Se[d],f=a.Ga,(g=Cc[e.type])||(g=new Db),f.strokeStyle="black",f.strokeRect(b.x,b.y,b.bd,b.A),f.fillStyle="string"==typeof g?g:g.toString(),f.fillRect(b.x,b.y,b.bd,b.A),b=a,f=c,b.fa=b.ua,b.W=b.va,c=f.x+(f.bd>>1),g=f.y+(f.A>>1),h=f.A,f.bd<f.A&&(h=f.bd,b.ra=!0,b.N.save(),
b.N.translate(c,g),b.N.rotate(-Math.PI/2),c=g=0),h<b.W&&(b.W=h,b.fa=b.W+"px Monaco, Lucida Console, Courier New"),f=g,b.C=c,b.U=f,b=a,e=Ub[e.type]+" ("+(e.Td*a.ga.Sb/1024|0)+"Kb)",b.N.font=b.fa,b.C-=b.N.measureText(e).width>>1,b.U+=(b.W>>1)-2,Mb(b,e),b.ra&&(b.N.restore(),b.ra=!1)}}else Mb(a,"This space intentionally left blank");a.context.drawImage(a.aa,0,0,a.aa.width,a.aa.height,a.sb,a.Jb,a.Ya,a.fb);a.Ja=!1}}
Za(function(){for(var a=qb(document,"pcx86-machine"),b=0;b<a.length;b++)for(var c=a[b],d=nb(c),c=qb(c,"pcx86","computer"),e=0;e<c.length;e++){var f=c[e],g=nb(f),g=new Rr(g,d,!0);pb(g,f);g.fa&&Wr(g,g.dg)}});Ta.show.push(function(){for(var a=qb(document,"pcx86","computer"),b=0;b<a.length;b++){var c=nb(a[b]);(c=mb("Computer",c.id))&&c.va&&!c.la.ic&&c.dg(-1)}});
Ta.exit.push(function(){for(var a=qb(document,"pcx86","computer"),b=0;b<a.length;b++){var c=nb(a[b]);(c=mb("Computer",c.id))&&c.la.ic&&Qr(c,!(!c.A||c.W),!0)}});function nf(a,b,c){this.id=a.id;this.key=es(a,b,c);this.ha=a.ha;$r(this,a.Ok)}function es(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}
nf.prototype={constructor:nf,set:function(a,b){try{this[this.id][a]=b}catch(c){}},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.A=!0):this.A?!0:Ga()&&(a=Ha(this.key))?(this[this.id]=a,this.A=!0):!1},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){$r(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=
0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,1);c=0}}};function $r(a,b){a[a.id]={};b&&a.set("parms",b);a.A=!1}function as(a){var b=!0;if(Ga()){var c=JSON.stringify(a[a.id]);Ia(a.key,c)||(w("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function Yr(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){w(c.message||c),b=!1}return b}var fs=0;
function gs(a,b,c,d,e,f){e("Loading "+a+"...");Aa(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),f(h,null)):hs(h,a,b,c,d,e,f)})}
function hs(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{c&&(ib(c,b,a),(f=b)&&0>f.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{",d+='url:"'+f+'"}',"object"==typeof resources&&(f=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PCx86$2"),
a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pcx86$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(n){f=null,a=n.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,f)}}a?e?ts(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
function ts(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");Aa(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(f);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);ts(a,b,c)}})}else c(a,null)}
function us(a,b,c,d){function e(a){if(void 0===h){var b=g&&qb(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=oa(a))}function f(a){e("Error: "+a);k&&(--fs||bb(!0));k=!1}var g,h,k=!0;fs++;hb[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var n=document.head||document.getElementsByTagName("head")[0],t=document.createElement("style");t.type="text/css";t.styleSheet?t.styleSheet.cssText=m:t.appendChild(document.createTextNode(m));n.appendChild(t)}c||
(c="/versions/pcx86/1.32.0/components.xsl");m=function(d,h){h?gs(c,null,null,!1,e,function(d,k){k?(ib(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--fs||bb(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--fs||bb(!0)):f("invalid machine element: "+
a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?gs(b,a,d,!0,e,m):hs(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(q){f(q.message)}return k}function vs(a,b,c,d){bb(!1);return us(a,b,c,d)}window.embedPC=vs;window.embedPCx86=vs;window.enableEvents=bb;window.sendEvent=cb;
function ws(a,b,c,d){if(!c&&b){d.push(b);a=hb[d[0]];b=null;for(var e in a)if(ma(e,"components.xsl")){b=e.replace(".xsl",".css");break}b?Aa(b,null,!0,function(a,b){xs(b,d)}):xs(null,d)}else w("Error ("+c+") requesting "+a)}
function xs(a,b){var c,d,e,f=b[0],g=b[1];c=b[4];c=c.match(/^(\s*\(function\(\)\{)([\s\S]*)(}\)\(\);\s*)$/);var h=hb[f],k={},m;for(m in h){var n=h[m],t=ka(m);if("xml"==t){for(t=/[ \t]*<disk [^>]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;d=t.exec(h[m]);){var q=d[2];q&&(h[q]||(n=n.replace(d[0],"")))}d=m=ja(m)}else"xsl"==t&&(e=m=ja(m));k[m]=n}a&&(k[m="css"]=a);b[2]&&(k[m="parms"]=b[2]);b[3]&&(k[m="state"]=b[3]);d&&e?(a=JSON.stringify(k),g+=".js",c=c[1]+"var resources="+a+";"+c[2]+c[3],c=c.replace(/\u00A9/g,
"&#xA9;"),a=Qa(c,"javascript",!1,g),a=a+(', copy it to your web server as "'+g+'", and then add the following to your web page:\n\n')+('<div id="'+f+'"></div>\n')+"...\n",a=a+('<script type="text/javascript" src="'+g+'">\x3c/script>\n')+('<script type="text/javascript">embedPC("'+f+'","'+d+'","'+e+'");\x3c/script>\n\n')+"The machine should appear where the <div> is located.",w(a)):w("Missing XML/XSL resources")}
window.savePC=function(a,b,c){var d=mb("Computer",a),e=mb("Debugger",a);if(d){var f=Qr(d,!0),g=d.U?JSON.stringify(d.U):null;b||(b="/versions/pcx86/1.32.0/pcx86"+(e?"-dbg":"")+".js");if(c&&c({state:f,Ok:g}))return!0;Aa(b,null,!0,function(c,d,e){ws(c,d,e,[a,ja(b,!0),g,f])});return!0}w("Unable to identify machine '"+a+"'");return!1};})();

View file

@ -0,0 +1,691 @@
(function(){/*
http://pcjs.org/modules/shared/lib/diskapi.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/dumpapi.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/reportapi.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/userapi.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/keys.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/strlib.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/usrlib.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/weblib.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/interrupts.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/messages.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/debugger.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/debugger.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/embed.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/defines.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/component.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/defines.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/panel.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/bus.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/memory.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/cpu.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86seg.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86cpu.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86fpu.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86func.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86help.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86mods.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86ops.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/x86op0f.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/chipset.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/rom.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/ram.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/keyboard.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/video.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/parallel.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/serial.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/mouse.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/disk.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/fdc.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/hdc.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/pcx86/lib/computer.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/state.js (C) Jeff Parsons 2012-2017
http://pcjs.org/modules/shared/lib/save.js (C) Jeff Parsons 2012-2017
*/
var l,ba,ca={163840:[40,1,8,,254],184320:[40,1,9,,252],327680:[40,2,8,,255],368640:[40,2,9,,253],737280:[80,2,9,,249],1228800:[80,2,15,,249],1474560:[80,2,18,,240],2949120:[80,2,36,,240],21368320:[615,4,17],2494464:[203,2,12,512],5242880:[256,2,40,256],10485760:[512,2,40,256]},n={Um:0,Wm:1,Xm:2,Sj:3,Ym:4,Zm:5,$m:6,an:7,bn:8,cn:9,dn:10,en:11,fn:12,gn:13,hn:14,jn:15,kn:16,ln:17,mn:18,nn:19,on:20,pn:21,qn:22,rn:23,sn:24,tn:25,un:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,
"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Kd:65,wh:66,xh:67,yh:68,E:69,zh:70,Ah:71,Bh:72,Ch:73,Dh:74,Eh:75,Fh:76,Gh:77,Ih:78,Kh:79,Mh:80,Q:81,Ph:82,Rh:83,Th:84,Vh:85,Xh:86,Zh:87,ai:88,ci:89,vf:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Md:97,dk:98,ek:99,d:100,e:101,pk:102,qk:103,rk:104,sk:105,Dl:106,k:107,El:108,Hl:109,n:110,Ml:111,p:112,q:113,r:114,Om:115,t:116,Rm:117,Sm:118,Tm:119,x:120,y:121,z:122,
"{":123,"|":124,"}":125,"~":126,vn:127},da={};da[186]=n[";"];da[187]=n["="];da[188]=n[","];da[189]=n["-"];da[190]=n["."];da[191]=n["/"];da[192]=n["`"];da[219]=n["["];da[220]=n["\\"];da[221]=n["]"];da[222]=n["'"];da[173]=n["-"];var p={};p[n["1"]]=n["!"];p[n["2"]]=n["@"];p[n["3"]]=n["#"];p[n["4"]]=n.$;p[n["5"]]=n["%"];p[n["6"]]=n["^"];p[n["7"]]=n["&"];p[n["8"]]=n["*"];p[n["9"]]=n["("];p[n["0"]]=n[")"];p[186]=n[":"];p[187]=n["+"];p[188]=n["<"];p[189]=n._;p[190]=n[">"];p[191]=n["?"];p[192]=n["~"];
p[219]=n["{"];p[220]=n["|"];p[221]=n["}"];p[222]=n['"'];p[173]=n._;p[61]=n["+"];p[59]=n[":"];
function ea(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0<a.indexOf(",");e&&(a=a.replace(/,/g,""));"#"==d?(b=8,d=null):"$"==d&&(b=16,d=null);null==d?a=a.substr(1):("0"==d&&(d=a.charAt(1),"b"==d&&e&&(b=2,d=null),"o"==d?(b=8,d=null):"x"==d&&(b=16,d=null)),null==d?a=a.substr(2):(d=a.charAt(a.length-1).toLowerCase(),"y"==d?(b=2,d=null):"."==d?(b=10,d=null):"h"==d&&(b=16,d=null),null==d&&(a=a.substr(0,a.length-1))));var f,d=a;((e=b)&&10!=e?16==e?d.match(/^[0-9a-f]+$/i):8==e?d.match(/^[0-7]+$/):2==e&&
d.match(/^[01]+$/):d.match(/^[0-9]+$/))&&!isNaN(f=parseInt(a,b))&&(c=f|0)}return c}function fa(a,b,c){var d="";b?8<b&&(b=8):b=a&-65536?8:4;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;){var e=a&15,e=e+(0<=e&&9>=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d}function ga(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));d=c.indexOf("&");0<d&&(c=c.substr(0,d));b&&(d=c.lastIndexOf("."),0<d&&(c=c.substring(0,d)));return c}
function ha(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function ia(a,b){return-1!==a.indexOf(b,a.length-b.length)}var ja={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function ka(a){return a.replace(/[&<>"']/g,function(a){return ja[a]})}function la(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}
var ma={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",10:"LF",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"},na=Date.now||function(){return+new Date};
function oa(){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 pa=[31,28,31,30,31,30,31,31,30,31,30,31];function qa(a,b){var c=0,d=1,e;for(e in a){if(d>=arguments.length)break;var f=a[e],g=arguments[d++],c=c&~f.sg|g<<f.shift&f.sg}return c}function ra(a,b){return(b&a.sg)>>a.shift}
function sa(a,b,c,d){var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a,f,e))});if(b&&"object"==
typeof b){var k="",m;for(m in b)b.hasOwnProperty(m)&&(k&&(k+="&"),k+=m+"="+encodeURIComponent(b[m]));k=k.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(f=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,f,e),g=[f,e]);return g}function ta(){return"http://"+(window?window.location.host:"www.pcjs.org")}
function r(a){window&&window.alert(a)}function ua(a){var b=!1;window&&(b=window.confirm(a));return b}var va=null;function wa(){if(null==va){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}va=a}return va}function xa(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}
function ya(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function za(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 Aa(a){if(!Ba){var b,c={};if(window){b||(b=window.location.search.substr(1));for(var d,e=/\+/g,f=/([^&=]+)=?([^&]*)/g;d=f.exec(b);)c[decodeURIComponent(d[1].replace(e," "))]=decodeURIComponent(d[2].replace(e," "))}Ba=c}return Ba[a]}
function Ca(a,b,c,d){var e=null;b="data:application/"+b+(c?";base64":"")+",";b=za("Firefox")?b+(c?a:encodeURIComponent(a)):b+(c?a:encodeURI(a));d&&(e=document.createElement("a"),"string"!=typeof e.download&&(e=null));e?(e.href=b,e.download=d,document.body.appendChild(e),e.click(),document.body.removeChild(e),a="Check your Downloads folder for "+d+"."):(window.open(b),a="Check your browser for a new window/tab containing the requested data"+(d?" ("+d+")":"")+".");return a}
var Ba=null,Da={init:[],show:[],exit:[]},Ea=!1,Fa=!1,Ga=!0;function Ha(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ia(a){Da.init.push(a)}function Ja(a){if(Ga)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){r(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function Ka(a){!Ga&&a?(Ga=!0,Ea&&La("init"),Fa&&La("show")):Ga=a}function La(a){Da[a]&&Ja(Da[a])}
Ha("onload",function(){Ea=!0;Ja(Da.init)});Ha("onpageshow",function(){Fa=!0;Ja(Da.show)});Ha(za("Opera")||za("iOS")?"onunload":"onbeforeunload",function(){Ja(Da.exit)});
function Ma(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Yh=b.comment;this.Gj=b;b=this.id.indexOf(".");0>b?this.Td=this.id:(this.Fe=this.id.substr(0,b),this.Td=this.id.substr(b+1));this[a]=c;this.ea={ready:!1,zf:!1,lg:!1,Vb:!1,error:!1};this.Hf=null;this.ea.error=!1;this.la={};this.Ia=null;Na.push(this)}
function Oa(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 Pa(a,b){b||(b=Ma);a.prototype=Oa(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var Qa=window.PCjs.Machines||(window.PCjs.Machines={}),Na=window.PCjs.Components||(window.PCjs.Components=[])}else Qa={},Na=[];
function Ra(a,b,c){Qa[a]&&b&&(Qa[a][b]=c)}function Ta(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Na.length;b++){var d=Na[b];a&&d.id.indexOf(a)||c.push(d)}return c}function Ua(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Na.length;c++)if(Na[c].id===a)return Na[c]}return null}
function Va(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<Na.length;d++)if(c)c==Na[d]&&(c=null);else if(!(a!=Na[d].type||b&&Na[d].id.indexOf(b)))return Na[d]}return null}function Wa(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){r(c.message+" ("+a+")")}return b}function Xa(a,b,c){var d;b&&(void 0===d&&(d="Panel"),(d=Va(d,a.id))&&(b=d.la[b])&&a.zb(null,c,b))}
function Ya(a,b){b=Za(b.parentNode,"pcx86-control");for(var c=0;c<b.length;c++)for(var d=b[c].childNodes,e=0;e<d.length;e++){var f=d[e];if(1===f.nodeType){var g=f.getAttribute("class");if(g)for(var h=g.split(" "),k=0;k<h.length;k++)switch(g=h[k],g){case "pcx86-binding":(g=Wa(f))&&g.binding&&a.zb(g.type,g.binding,f,g.value),k=h.length}}}}
function Za(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}
Ma.prototype={constructor:Ma,parent:null,toString:function(){return this.name?this.name:this.id||this.type},zb:function(a,b,c){switch(b){case "clear":return this.la[b]||(this.la[b]=c,c.onclick=function(a){return function(){a.la.print&&(a.la.print.value="")}}(this)),!0;case "print":return this.la[b]||(this.ng=this.la[b]=c,c.value="",this.rc=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}}(c),
this.Ba=function(a){this.rc(a,this.Td)}),!0;default:return!1}},log:function(){},rc:function(){},status:function(a){this.rc(this.Td+": "+a)},Ba:function(a,b,c){c=c||this.type;b||r((c?c+": ":"")+a)},Ub:function(){return this.ea.Vb=!0},Tb:function(a,b){b&&(this.ea.Vb=!1);return!0}};function $a(a,b){if(a.ea.lg)return a.ea.zf=!1,a.ea.lg=!1;if(a.ea.error)return a.rc(a.toString()+" error"),!1;a.ea.zf=b;return a.ea.zf}function t(a,b){a.ea.error||(a.ea.ready=!1!==b,a.ea.ready&&(b=a.Hf,a.Hf=null,b&&b()))}
function ab(a,b){b&&(a.ea.ready?b():a.Hf=b);return a.ea.ready}function bb(a,b){a.ea.error=!0;a.Ba(b)}Array.prototype.indexOf||(Array.prototype.indexOf=function(a,b){b=b||0;for(var c=this.length;b<c;b++)if(this[b]===a)return b;return-1});Array.isArray||(Array.isArray=function(a){return"[object Array]"===Object.prototype.toString.call(a)});
Function.prototype.bind||(Function.prototype.bind=function(a){function b(){return e.apply(this instanceof c&&a?this:a,d.concat(Array.prototype.slice.call(arguments)))}function c(){}if("function"!=typeof this)throw new TypeError("Function.prototype.bind: non-callable object");var d=Array.prototype.slice.call(arguments,1),e=this;c.prototype=this.prototype;b.prototype=new c;return b});
var cb="undefined"!==typeof ArrayBuffer,db={Rf:4,kc:5,$c:6,Ic:7,Jc:8,Sa:9,Kb:11,Lb:12,Vd:4,Ci:60,Di:83,dc:3,yb:9,qc:16,Qf:1,Hi:19,Ji:28,Li:16,Ki:21,Ii:37,Fi:2,Gg:9,Gi:5,Ei:33,Ig:10,Hg:8,$e:3,Ze:15,Zi:51,$i:1,aj:2,bj:4,Yi:32,Jg:15,dj:15,Ma:16,Na:4,fj:11,ej:18,cj:24,Mb:4,gj:2,xe:16,hj:17,Og:18,ij:19,Ng:5,Pg:6,nj:2,mj:8,kj:9,lj:10,jj:10,Qg:10,Rg:10,Ni:80,Pi:144,Mi:86,Oi:154,Ri:101,Ti:165,Qi:107,Si:171,pj:70,rj:113,oj:76,qj:124,Vi:80,Xi:128,Ui:86,Wi:134,bf:3,af:16,Wg:10,Vg:8,sj:51,ec:8,tj:17,uj:36,Ac:11,
vj:16,Wd:10,Pc:2,Dg:18,Eg:7,Fg:15,Kg:12,Lg:7,Mg:11,Sg:18,Tg:7,Ug:15,Xg:15,Yg:7,Zg:13,dh:11,eh:7,fh:8,wj:8,zj:12,xj:18,yj:17,Aj:15,ah:8,$g:20,bh:2,ih:3,cf:9,hh:5,gh:11,kh:4,jh:17,Bj:11},eb={Rf:0,kc:0,$c:0,Ic:0,Jc:0,Sa:0,Kb:1,Lb:1,Vd:3,Ci:14,Di:16,dc:2,yb:7,qc:7,Qf:0,Hi:7,Ji:13,Li:7,Ki:11,Ii:16,Fi:3,Gg:6,Gi:2,Ei:13,Ig:5,Hg:5,$e:2,Ze:7,Zi:23,$i:0,aj:1,bj:3,Yi:17,Jg:7,dj:11,Ma:7,Na:3,fj:7,ej:11,cj:15,Mb:2,gj:3,xe:7,hj:8,Og:8,ij:8,Ng:4,Pg:4,nj:2,mj:3,kj:5,lj:2,jj:3,Qg:5,Rg:3,Ni:14,Pi:22,Mi:17,Oi:25,Ri:17,
Ti:25,Qi:20,Si:28,pj:13,rj:21,oj:16,qj:24,Vi:13,Xi:21,Ui:16,Wi:24,bf:2,af:7,Wg:5,Vg:5,sj:19,ec:5,tj:5,uj:17,Ac:3,vj:5,Wd:3,Pc:0,Dg:8,Eg:5,Fg:9,Kg:5,Lg:5,Mg:4,Sg:5,Tg:5,Ug:4,Xg:7,Yg:5,Zg:8,dh:3,eh:4,fh:3,wj:11,zj:11,xj:15,yj:15,Aj:7,ah:5,$g:8,bh:0,ih:2,cf:6,hh:3,gh:6,kh:3,jh:5,Bj:5};function fb(a){Ma.call(this,"Panel",a,fb);this.H=this.I=this.R=-1}Pa(fb);
function gb(a,b,c,d){this.A=[a,b,c,d];this.B=null;void 0===a&&(this.A[0]=256*Math.random()|0,this.A[1]=256*Math.random()|0,this.A[2]=256*Math.random()|0,this.A[3]=255,this.B=null)}gb.prototype.toString=function(){this.B||(this.B="#"+fa(this.A[0],2)+fa(this.A[1],2)+fa(this.A[2],2));return this.B};function hb(a,b,c,d){this.x=a;this.y=b;this.Fc=c;this.A=d}hb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.Fc&&b>=this.y&&b<this.y+this.A};
function ib(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new hb(a.x,a.y,a.Fc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new hb(a.x,a.y,a.Fc*b/c|0,a.A),a.x+=b.Fc,a.Fc-=b.Fc);return b}l=fb.prototype;l.zb=function(a,b,c,d){return this.ba&&this.ba.zb(a,b,c,d)||this.A&&this.A.zb(a,b,c,d)||this.C&&this.C.zb(a,b,c,d)?!0:this.parent.zb.call(this,a,b,c,d)};l.pc=function(a,b,c,d){this.ba=a;this.ia=b;this.A=c;this.Ia=d;this.C=jb(a,"Keyboard")};l.Ub=function(a,b){b||kb();return!0};l.Tb=function(){return!0};
l.le=function(a,b){a.button||(this.R=b?0:-1,lb(this,a,b))};l.tg=function(a){lb(this,a)};
function lb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.R||(a.R=Math.abs(a.H-d)>Math.abs(a.I-b)?1:2),1==a.R?b=a.I:2==a.R&&(d=a.H));a.H=d;a.I=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.B&&a.B.ee)for(f=0;f<a.B.ee.length;f++)if(e=a.B.ee[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.B.Ke[f],g=ra(mb.Cj,a.B.fg[d.tk]),f=g*a.ia.xb,d=(g+d.gd)*a.ia.xb-1;0<b&&(f+=e.Fc*(b-1)*a.ma);f+=c*a.ma;f|=0;f>d&&
(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.oa)){b=c;if(a.context&&a.W&&a.Y){e=a.W.width;a.Y.fillStyle="black";a.Y.fillRect(0,360,e,360);ob(a,378,a.W,a.Y);a.Z=a.pa.width/24|0;if(null==b)pb(a,"Mouse over memory to dump");else for(pb(a,fa(b,8,!0),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var h;h=a.ia;var k=b++;h=h.R[(k&h.Fa)>>>h.da].Fd(k&h.B,k);pb(a,fa(h,2),null,1);d+=32<=h&&128>h?String.fromCharCode(h):"."}pb(a,d,null,0,1)}a.context.drawImage(a.W,0,360,e,360,a.La,a.Ta,a.za,a.Ea)}a.oa=c}}}
l.Rc=function(){};function qb(a,b,c,d){a.B.Ke[a.B.ii++]={tk:b,gd:c,type:d};return qa(mb,b,c,0,d)}function ob(a,b,c,d){var e,f=null.style.color,g=a.xa=10;a.D=g;a.K=b;a.L=a.ka=18;e||(e=a.ga||a.ka+"px Monaco, Lucida Console, Courier New");a.P=a.ga=e;c&&(a.pa=c);d&&(a.G=d,a.qa=f||"white")}
function pb(a,b,c,d,e){a.G.font=a.P;a.G.fillStyle=a.qa;a.G.fillText(b,a.D,a.K);a.D+=a.Z;null!=c&&(16!=a.Ja?b=c.toString():(b=8>a.va?"0x":"",b+=fa(c,a.va)),a.G.fillText(b,a.D,a.K),a.D+=a.Z);d&&(a.D+=a.Z*d);e&&(a.D=a.xa,a.K+=(a.L+2)*(e||1))}function kb(){for(var a=!1,b=Za(document,"pcx86","panel"),c=0;c<b.length;c++){var d=b[c],e=Wa(d),f=Ua(e.id);f||(a=!0,f=new fb(e));Ya(f,d);a&&t(f)}}Ia(kb);
function rb(a,b,c){Ma.call(this,"Bus",a,rb);this.A=b;this.Ia=c;this.D=a.busWidth||20;this.L=Math.pow(2,this.D);this.ba=this.Fa=this.L-1|0;this.da=32==this.D||20>=this.D?12:24>=this.D?14:15;this.xb=1<<this.da;this.ia=this.xb>>2;this.B=this.xb-1;this.H=this.L/this.xb|0;this.C=this.H-1;this.I=[];this.K=[];this.S=[];this.P=[];a=new u;sb(a,this.Ia);this.R=Array(this.H);for(b=0;b<this.H;b++)this.R[b]=a;a=this.A;b=this.R;c=this.da;a.vc=a.R=b;a.da=c;a.xb=1<<a.da;a.pb=a.xb-1;a.pf=b.length;a.$d=a.pf-1;a=this.A;
a.Fa=a.oc=this.Fa;t(this)}Pa(rb);rb.prototype.reset=function(){tb(this,!0)};rb.prototype.Ub=function(a,b){b||this.reset();return!0};
function ub(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.da;0<g&&h<a.R.length;){var k=a.R[h],m=h*a.xb,q=a.xb-(f-m);q>g&&(q=g);if(k&&k.size){if(k.type==d&&k.controller==e){if(f+g<=k.he)return k.Ge+=k.he-f,k.he=f,!0;if(f>=k.he+k.Ge){q=k.size-(f-m);q>g&&(q=g);k.Ge=f-k.he+q;f=m+a.xb;g-=q;h++;continue}}return vb(a,1,f,g)}f=new u(f,q,a.xb,d,e);sb(f,a.Ia,k);a.R[h++]=f;f=m+a.xb;g-=q}return 0>=g?(e=a.A,e.Pa&-2147483648&&wb(e),a.A.ea.Nb||a.status(Math.floor(c/1024)+"Kb "+xb[d]+" at "+fa(b)),!0):vb(a,2,b,c)}
var mb,zb={Cj:20,count:8,Kn:1,type:3},Ab=0,Bb;for(Bb in zb){var Cb=zb[Bb];zb[Bb]={sg:(1<<Cb)-1<<Ab,shift:Ab};Ab+=Cb}mb=zb;function tb(a,b){32==a.D?b?a.G&&(Db(a,1048576,1048576,a.G),a.G=null):a.G||(a.G=Eb(a,1048576,1048576),Db(a,1048576,1048576,Eb(a,0,1048576))):20<a.D&&(b=a.Fa&-1048577|(b?1048576:0),b!=a.Fa&&(a.Fa=b,a.A&&(a=a.A,a.Fa=a.oc=b)))}l=rb.prototype;
l.$f=function(a,b,c,d){if(!(a&this.B||!b||b&this.B)){for(var e=a>>>this.da;0<b;){var f=this.R[e];if(!f.controller)return vb(this,3,a,b,d);Fb(f,c,!0);b-=this.xb;e++}return!0}return vb(this,4,a,b)};function Gb(a,b,c){if(!(b&a.B||!c||c&a.B)){for(var d=b>>>a.da;0<c;){var e=a.R[d];b=new u(b);sb(b,a.Ia,e);a.R[d++]=b;b=d*a.xb;c-=a.xb}a=a.A;a.Pa&-2147483648&&wb(a);return!0}return vb(a,5,b,c)}function Eb(a,b,c){var d=[];for(b>>>=a.da;0<c&&b<a.R.length;)d.push(a.R[b++]),c-=a.xb;return d}
function Db(a,b,c,d,e){for(var f=0,g=b>>>a.da;0<c&&g<a.R.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new u(b),m=k,q=e,y=a.Ia;m.id=h.id|1;m.Ge=h.Ge;m.size=h.size;q&&(m.type=q,m.I=q==Hb);cb?(m.R=h.R,m.S=h.S,m.Ka=h.Ka,m.ud=h.ud,m.V=h.V,Fb(m,Ib?Jb:Kb)):(m.V=h.V,Fb(m,Lb));sb(m,y,h);h=k}a.R[g++]=h;c-=a.xb}}l.Jb=function(a){return this.R[(a&this.Fa)>>>this.da].Wb(a&this.B,a)};
l.ha=function(a){var b=a&this.B,c=(a&this.Fa)>>>this.da;return b!=this.B?this.R[c].Ae(b,a):this.R[c++].Wb(b,a)|this.R[c&this.C].Wb(0,a+1)<<8};function Mb(a,b){var c=b&a.B,d=(b&a.Fa)>>>a.da;return c!=a.B?a.R[d].hf(c,b):a.R[d++].Fd(c,b)|a.R[d&a.C].Fd(0,b+1)<<8}l.fa=function(a){var b=a&this.B,c=(a&this.Fa)>>>this.da;if(b<this.B-2)return this.R[c].Gd(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;)d|=this.R[c].Wb(b++,a++)<<f,--g||(c=c+1&this.C,b=0),f+=8;return d};
l.Mc=function(a,b){this.R[(a&this.Fa)>>>this.da].Yb(a&this.B,b&255,a)};l.bb=function(a,b){var c=a&this.B,d=(a&this.Fa)>>>this.da;c!=this.B?this.R[d].Ie(c,b&65535,a):(this.R[d++].Yb(c,b&255,a),this.R[d&this.C].Yb(0,b>>8&255,a+1))};function Nb(a,b,c){var d=b&a.B,e=(b&a.Fa)>>>a.da;d!=a.B?a.R[e].vh(d,c&65535,b):(a.R[e++].nf(d,c&255,b),a.R[e&a.C].nf(0,c>>8&255,b+1))}
l.Va=function(a,b){var c=a&this.B,d=(a&this.Fa)>>>this.da;if(c<this.B-2)this.R[d].He(c,b);else for(var e=4,f=4-(c&3);e--;)this.R[d].Yb(c++,b&255,a++),--f||(d=d+1&this.C,c=0),b>>>=8};
function Ob(a,b){var c=0,d=[],e=!a.G&&a.ba==a.Fa;e||tb(a,!0);for(var f=0;f<a.H;f++){var g=a.R[f];if(b&&g.type!=Hb||g.Ha||g.ri){d[c++]=f;var h=c++;if(g=g.save()){for(var k=0,m=0,q=[];k<g.length;){for(var y=g[k],w=k+1;w<g.length&&g[w]===y;)w++;q[m++]=w-k;q[m++]=y;k=w}q.length<g.length&&(g=q)}d[h]=g}}e||tb(a,!1);d[c]=e;return d}
function Pb(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(h)for(var k=+e+d;k<=g;k++)void 0!==f.I[k]?r("Input port "+fa(k,4,!0)+" already registered"):f.I[k]=[h,!1]}}function Qb(a,b,c,d){for(var e=0,f=0;0<c;){var g=a.I[b],h=a.S[b]||1,k=1==h?255:2==h?65535:-1,m=k;void 0!==g&&g[0]&&(m=g[0](b,d),void 0===m?m=k:m&=k);e|=m<<f;f+=h<<3;b+=h;c-=h}return e}
function Rb(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,h=c[e].bind(b);if(h)for(var k=+e+d;k<=g;k++)void 0!==f.K[k]?r("Output port "+fa(k,4,!0)+" already registered"):f.K[k]=[h,!1]}}function Sb(a,b,c,d,e){for(var f=0;0<c;){var g=a.K[b],h=a.P[b]||1,k=1==h?255:2==h?65535:-1,k=(d>>>=f)&k;if(void 0!==g&&g[0])g[0](b,k,e);f+=h<<3;b+=h;c-=h}}function vb(a,b,c,d,e){b="Memory block error ("+b+": "+fa(c)+","+fa(d)+")";e?a.Ia?a.Ia.message(b):a.log(b):r(b);return!1}var Tb;
if(cb){var Ub=new ArrayBuffer(2);(new DataView(Ub)).setUint16(0,256,!0);Tb=256===(new Uint16Array(Ub))[0]}else Tb=!1;var Ib=Tb;
function u(a,b,c,d,e,f){this.id=Vb+=2;this.V=null;this.H=0;this.he=a;this.Ge=b;this.size=c||0;this.type=d||Wb;this.I=d==Hb;this.controller=null;this.A=f;sb(this);this.Ha=this.ri=!1;if(c)if(e)this.controller=e,a=e.ui(a),this.V=a[0],this.H=a[1],Fb(this,e.rg());else if(cb)this.R=new ArrayBuffer(c),this.S=new DataView(this.R,0,c),this.Ka=new Uint8Array(this.R,0,c),this.ud=new Uint16Array(this.R,0,c>>1),this.V=new Int32Array(this.R,0,c>>2),Fb(this,Ib?Jb:Kb);else{this.V=Array(c>>2);for(e=0;e<this.V.length;e++)this.V[e]=
0;Fb(this,Lb)}else Fb(this)}var Wb=0,Hb=2,Xb=["black","blue","green","cyan"],xb="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),Vb=0;function Yb(a){cb&&!Ib&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a}
u.prototype={constructor:u,parent:null,Al:function(a){this.he=a},save:function(){var a,b;if(this.controller)a=null;else if(cb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.S.getInt32(b<<2,!0);else a=this.V;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(cb)for(b=0;b<a.length;b++)this.S.setInt32(b<<2,a[b],!0);else this.V=a;return this.Ha=!0}return!1},da:function(){return 255},ia:function(){},ga:function(a,b){return this.Wb(a++,b++)|this.Wb(a,
b)<<8},Y:function(a,b){return this.Wb(a++,b++)|this.Wb(a++,b++)<<8|this.Wb(a++,b++)<<16|this.Wb(a,b)<<24},ba:function(a,b,c){this.Yb(a++,b&255,c++);this.Yb(a,b>>8,c)},la:function(a,b,c){this.Yb(a++,b&255,c++);this.Yb(a++,b>>8&255,c++);this.Yb(a++,b>>16&255,c++);this.Yb(a,b>>>24,c)},va:function(a){return this.V[a>>2]>>>((a&3)<<3)&255},fb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.V[b]>>a;return 24>a?c&65535:c&255|(this.V[b+1]&255)<<8},Ga:function(a){var b=a>>2;a=(a&3)<<3;var c=this.V[b];a&&(c=c>>>
a|this.V[b+1]<<32-a);return c},Bb:function(a,b){var c=a>>2;a=(a&3)<<3;this.V[c]=this.V[c]&~(255<<a)|b<<a;this.Ha=!0},xc:function(a,b){var c=a>>2;a=(a&3)<<3;24>a?this.V[c]=this.V[c]&~(65535<<a)|b<<a:(this.V[c]=this.V[c]&16777215|b<<24,c++,this.V[c]=this.V[c]&-256|b>>8);this.Ha=!0},fc:function(a,b){var c=a>>2;if(a=(a&3)<<3){var d=-1<<a;this.V[c]=this.V[c]&~d|b<<a;c++;this.V[c]=this.V[c]&d|b>>>32-a}else this.V[c]=b;this.Ha=!0},sa:function(a,b){this.A&&$b(this.A,b,1,!1);return this.Fd(a,b)},Xa:function(a,
b){this.A&&$b(this.A,b,2,!1);return this.hf(a,b)},Fa:function(a,b){this.A&&$b(this.A,b,4,!1);return this.oh(a,b)},Ab:function(a,b,c){this.A&&$b(this.A,c,1,!0);this.I||this.nf(a,b,c)},wc:function(a,b,c){this.A&&$b(this.A,c,2,!0);this.I||this.vh(a,b,c)},Zb:function(a,b,c){this.A&&$b(this.A,c,4,!0);this.I||this.oa(a,b,c)},za:function(a,b){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.K;return this.L.Wb(a,b)},qb:function(a,b){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.K;return this.L.Ae(a,b)},
La:function(a,b){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.K;return this.L.Gd(a,b)},Gb:function(a,b,c){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.P;this.L.Yb(a,b,c)},zc:function(a,b,c){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.P;this.L.Ie(a,b,c)},mc:function(a,b,c){this.B.V[this.D]|=this.K;this.C.V[this.G]|=this.P;this.L.He(a,b,c)},Da:function(a,b){return ac(this.A,b,!1).Wb(a,b)},rb:function(a,b){return ac(this.A,b,!1).Ae(a,b)},Oa:function(a,b){return ac(this.A,b,!1).Gd(a,b)},Hb:function(a,
b,c){ac(this.A,c,!0).Yb(a,b,c)},Gc:function(a,b,c){ac(this.A,c,!0).Ie(a,b,c)},oc:function(a,b,c){ac(this.A,c,!0).He(a,b,c)},ra:function(a){return this.Ka[a]},W:function(a){return this.Ka[a]},xa:function(a){this.B.V[this.D]|=32;this.C.V[this.G]|=32;this.Wb=this.W;return this.Ka[a]},Ta:function(a){return this.S.getUint16(a,!0)},ka:function(a){return a&1?this.Ka[a]|this.Ka[a+1]<<8:this.ud[a>>1]},pb:function(a){this.B.V[this.D]|=32;this.C.V[this.G]|=32;this.Ae=this.ka;return a&1?this.Ka[a]|this.Ka[a+
1]<<8:this.ud[a>>1]},Ea:function(a){return this.S.getInt32(a,!0)},Z:function(a){return a&3?this.Ka[a]|this.Ka[a+1]<<8|this.Ka[a+2]<<16|this.Ka[a+3]<<24:this.V[a>>2]},Ja:function(a){this.B.V[this.D]|=32;this.C.V[this.G]|=32;this.Gd=this.Z;return a&3?this.Ka[a]|this.Ka[a+1]<<8|this.Ka[a+2]<<16|this.Ka[a+3]<<24:this.V[a>>2]},ub:function(a,b){this.Ka[a]=b;this.Ha=!0},ma:function(a,b){this.Ka[a]=b;this.Ha=!0},Cb:function(a,b){this.Ka[a]=b;this.B.V[this.D]|=32;this.C.V[this.G]|=96;this.Yb=this.ma;this.L.Ha=
!0},vc:function(a,b){this.S.setUint16(a,b,!0);this.Ha=!0},qa:function(a,b){a&1?(this.Ka[a]=b,this.Ka[a+1]=b>>8):this.ud[a>>1]=b;this.Ha=!0},yc:function(a,b){a&1?(this.Ka[a]=b,this.Ka[a+1]=b>>8):this.ud[a>>1]=b;this.B.V[this.D]|=32;this.C.V[this.G]|=96;this.Ie=this.qa;this.L.Ha=!0},Ob:function(a,b){this.S.setInt32(a,b,!0);this.Ha=!0},pa:function(a,b){a&3?(this.Ka[a]=b,this.Ka[a+1]=b>>8,this.Ka[a+2]=b>>16,this.Ka[a+3]=b>>24):this.V[a>>2]=b;this.Ha=!0},ic:function(a,b){a&3?(this.Ka[a]=b,this.Ka[a+1]=
b>>8,this.Ka[a+2]=b>>16,this.Ka[a+3]=b>>24):this.V[a>>2]=b;this.B.V[this.D]|=32;this.C.V[this.G]|=96;this.He=this.pa;this.L.Ha=!0}};function sb(a,b,c){a.Ia=b;a.ie=a.je=0;c&&(c.A&&(a.A=c.A),(a.ie=c.ie)&&bc(a,cc,!1),(a.je=c.je)&&dc(a,cc,!1))}function dc(a,b,c){c&&a.je||(a.Yb=!a.I&&b[1]||a.ia,a.Ie=!a.I&&b[3]||a.ba,a.He=!a.I&&b[5]||a.la);if(c||void 0===c)a.nf=b[1]||a.ia,a.vh=b[3]||a.ba,a.oa=b[5]||a.la}
function bc(a,b,c){c&&a.ie||(a.Wb=b[0]||a.da,a.Ae=b[2]||a.ga,a.Gd=b[4]||a.Y);if(c||void 0===c)a.Fd=b[0]||a.da,a.hf=b[2]||a.ga,a.oh=b[4]||a.Y}function Fb(a,b,c){b||(b=5==a.type?ec:6==a.type?fc:gc);bc(a,b,c);dc(a,b,c)}
var gc=[],Lb=[u.prototype.va,u.prototype.Bb,u.prototype.fb,u.prototype.xc,u.prototype.Ga,u.prototype.fc],cc=[u.prototype.sa,u.prototype.Ab,u.prototype.Xa,u.prototype.wc,u.prototype.Fa,u.prototype.Zb],fc=[u.prototype.za,u.prototype.Gb,u.prototype.qb,u.prototype.zc,u.prototype.La,u.prototype.mc],ec=[u.prototype.Da,u.prototype.Hb,u.prototype.rb,u.prototype.Gc,u.prototype.Oa,u.prototype.oc];
if(cb)var Kb=[u.prototype.ra,u.prototype.ub,u.prototype.Ta,u.prototype.vc,u.prototype.Ea,u.prototype.Ob],Jb=[u.prototype.W,u.prototype.ma,u.prototype.ka,u.prototype.qa,u.prototype.Z,u.prototype.pa],hc=[u.prototype.xa,u.prototype.Cb,u.prototype.pb,u.prototype.yc,u.prototype.Ja,u.prototype.ic];
function ic(a,b){Ma.call(this,"CPU",a,ic);b=a.cycles||b;var c=a.multiplier||1;this.T={};this.T.Zc=b;this.T.Cd=c;this.T.Jf=Math.round(this.T.Zc/1E4)/100;this.T.ve=this.T.Jf*this.T.Cd;this.ea.Nb=!1;this.ea.Oj=!1;this.ea.Le=a.autoStart;this.ea.ni=!1;this.ea.Df=!1;this.T.Lf=this.T.we=0;this.T.Mf=a.csStart;this.T.Qe=a.csInterval;this.T.Re=a.csStop;this.bk=this.sh.bind(this);t(this)}Pa(ic);var jc=["power","reset"];l=ic.prototype;
l.pc=function(a,b,c,d){this.ba=a;this.ia=b;this.Ia=d;for(b=0;b<jc.length;b++)(c=this.la[jc[b]])&&this.ba.zb(null,jc[b],c);this.pd=jb(a,"FPU");this.S=jb(a,"ChipSet");a=kc(a,"autoStart");null!=a&&(this.ea.Le="true"==a?!0:"false"==a?!1:!!a);t(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};l.Ub=function(a,b){if(!b){if(a&&this.restore){lc(this);if(!this.restore(a))return!1;mc(this)}else this.reset();this.rc("No debugger detected")}nc(this);return!0};
l.Tb=function(a){return a?this.save():!0};l.Le=function(){return this.ea.Le||void 0===this.la.run?(this.sh(),!0):!1};l.ti=function(){return 0};function mc(a){void 0===a.T.Mf&&(a.T.Mf=0);void 0===a.T.Qe&&(a.T.Qe=-1);void 0===a.T.Re&&(a.T.Re=-1);a.ea.Df=0<=a.T.Mf&&0<a.T.Qe;a.ea.Df&&(a.T.Lf=0,a.T.we=a.T.Mf-a.bd)}
l.zb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.la[b]=c;a=!0;break;case "run":this.la[b]=c;c.onclick=function(){var a;if(a=d.ba)if(a=d.ba,a.ea.Vb)a=!0;else{var b=null,c,h=Ta(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.ea.ready);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.ea.Vb);c++);c==h.length&&(b=a);r("The "+b.type+" component ("+b.id+") is not "+(b.ea.ready?"powered yet":"ready yet"+(b.Hf?" (waiting for notification)":""))+".");a=!1}a&&(d.ea.Nb?oc(d,!0):
d.sh(!0))};a=!0;break;case "speed":this.la[b]=c;a=!0;break;case "setSpeed":this.la[b]=c,c.onclick=function(){pc(d,d.T.Cd<<1,!0)},c.textContent=this.T.ve.toFixed(2)+"Mhz",a=!0}return a};function qc(a,b){a.ea.Nb&&(b=a.A-b,a.A-=b,a.mc-=b)}function rc(a,b,c){a.bd+=b;c&&(a.mc=a.A=0)}
function sc(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.T.Cd&&a.T.Ad&&(d=a.T.Ad/a.T.Jf);a.T.zi=Math.round(1E3/30);a.T.Kl=Math.floor(a.T.Zc/c*d);a.T.zg=Math.floor(a.T.Zc/30*d);a.T.Bi=Math.floor(a.T.Zc/60*d);a.T.Ai=Math.floor(a.T.Zc/2*d);b||(a.T.Ue=a.T.zg,a.T.Te=a.T.Bi,a.T.Se=a.T.Ai);a.T.Ag=0}function tc(a,b){var c=a.bd+a.zc+a.mc-a.A;b&&1<a.T.Cd&&a.T.Ad>a.T.Jf&&(c=Math.round(c/a.T.Cd));return c}function lc(a){a.T.Ad=0;a.bd=a.zc=a.mc=a.A=0;mc(a);pc(a,1)}
function pc(a,b,c){if(void 0!==b){.8>a.T.Ad/a.T.ve&&(b=1);a.T.Cd=b;b=a.T.Jf*a.T.Cd;if(a.T.ve!=b){a.T.ve=b;b=a.T.ve.toFixed(2)+"Mhz";var d=a.la.setSpeed;d&&(d.textContent=b);a.rc("target speed: "+b)}c&&a.ba&&uc(a.ba)}rc(a,a.zc);a.zc=0;a.T.Bd=na();a.T.Ud=0;sc(a)}
l.sh=function(a){if($a(this,!0)){if(!this.ea.Nb){pc(this);this.ba&&this.ba.start(this.T.Bd,tc(this));this.ea.Nb=!0;this.ea.Oj=!0;this.S&&this.S.start();var b=this.la.run;b&&(b.textContent="Halt");this.ba&&(this.ba.Rc(!0),a&&uc(this.ba,!0))}this.T.Ag>=this.T.Zc&&sc(this,!0);this.T.Ve=0;this.T.Kf=na();this.T.Ud&&(a=this.T.Kf-this.T.Ud,a>this.T.zi&&(this.T.Bd+=a,this.T.Bd>this.T.Kf&&(this.T.Bd=this.T.Kf)));try{do{var c=this.ea.Df?1:this.T.Kl;if(this.S){vc(this.S);var d=this.S;a=c;var e=d.K[0];if(e.Qd){var f=
(tc(d.A,d.Z)-e.kd)/d.Ga|0,g=wc(d,0)-f;6==e.mode&&(g-=f);var h=g*d.Ga|0;6==e.mode&&(h>>=1);a>h&&(a=h)}var c=a,k=this.S;a=c;if(k.B&&k.B[11]&64){var m=k.ga-tc(k.A,k.Z);0<m&&a>m&&(a=m)}c=a}try{this.Pj(c)}catch(y){if("number"!=typeof y)throw y;}var q=this.mc-this.A;this.zc+=q;this.T.Ve+=q;rc(this,0,!0);a=q;this.ea.Df&&(b=!1,this.T.Lf=this.T.Lf+this.ti()|0,this.T.we-=a,0>=this.T.we&&(this.T.we+=this.T.Qe,b=!0),0<=this.T.Re&&this.T.Re<=tc(this)&&(this.T.Qe=this.T.Re=-1,mc(this),oc(this),b=!0),b&&this.rc(tc(this)+
" cycles: checksum="+fa(this.T.Lf)));this.T.Te-=q;0>=this.T.Te&&(this.T.Te+=this.T.Bi,this.ba&&xc(this.ba));this.T.Se-=q;0>=this.T.Se&&(this.T.Se+=this.T.Ai,this.ba&&this.ba.Rc());this.T.Ue-=q;if(0>=this.T.Ue){this.T.Ue+=this.T.zg;break}}while(this.ea.Nb)}catch(y){oc(this);nc(this);this.ba&&this.ba.stop(na(),tc(this));$a(this,!1);bb(this,y.stack||y.message);return}c=setTimeout;d=this.bk;this.T.Ud=na();e=this.T.zi;this.T.Ve&&(e=Math.round(e*this.T.Ve/this.T.zg));e-=this.T.Ud-this.T.Kf;if(f=this.T.Ud-
this.T.Bd)this.T.Ad=Math.round(this.zc/(10*f))/100,864E5<=f&&(this.bd=0,this.S&&vc(this.S,!0),pc(this));if(0>e||this.T.Ad<this.T.ve)-1E3>e&&(this.T.Bd-=e),e=0;this.T.Ag+=this.T.Ve;this.T.Ud+=e;c(d,e)}else nc(this),this.ba&&this.ba.stop(na(),tc(this))};l.Pj=function(){return 0};function oc(a,b){a.ea.zf&&(a.ea.lg=!0);a.mc-=a.A;a.A=0;rc(a,a.zc);a.zc=0;if(a.ea.Nb){a.ea.Nb=!1;a.S&&a.S.stop();var c=a.la.run;c&&(c.textContent="Run")}a.ea.complete=b}
function nc(a){a.ba&&(xc(a.ba,void 0),a.ba.Rc(void 0))}function yc(a,b,c,d){this.A=a;this.Ia=a.Ia;this.id=b;this.Zf=c||"";this.ja=0;this.Za=65535;this.C=this.Za+1;this.sb=this.nc=this.ext=this.lb=this.type=this.ya=0;this.hc=-1;this.U=this.Qc=2;this.N=this.ta=65535;this.L=this.yi;this.I=this.ki;this.K=this.mi;this.B={ja:-1,ya:0,Za:0,lb:0,type:0,ext:0,hc:-1};1==this.id&&(this.ff=0,this.D=null,this.re=!1,this.H=Array(32),this.G=[]);zc(this,!0,d)}l=yc.prototype;
l.yi=function(a){this.ja=a&65535;return this.ya=this.ja<<4};l.If=function(a,b){var c,d,e=this.A;a&=65535;a&4?(c=e.Zb.ya,d=c+e.Zb.Za|0):(c=e.ub,d=e.wc);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,Ac(this,c,a,b);6>this.id&&v.call(e,b&&3==this.id?10:13,a&65532)}return-1};l.Gl=function(a){var b=this.A;a=b.Ab+(a<<2);var c=b.ha(a);b.X&=-769;return this.load(b.ha(a+2))+c|0};
l.Fl=function(a){var b=this.A;a<<=3;var c=b.Ab+a|0;if(7<=(b.xc-c|0))return this.D=!0,a=Ac(this,c,a),-1!==a&&(a+=this.ff),a;v.call(b,13,a|2);return-1};l.ki=function(a){return this.ya+a|0};l.mi=function(a){return this.ya+a|0};l.ji=function(a,b){return(a>>>0)+b<=this.C?this.ya+a|0:this.Bf()};l.fk=function(a,b){return(a>>>0)+b>this.C?this.ya+a|0:this.Bf()};l.Bf=function(){v.call(this.A,13,0);return-1};l.li=function(a,b){return(a>>>0)+b<=this.C?this.ya+a|0:this.Cf()};
l.gk=function(a,b){return(a>>>0)+b>this.C?this.ya+a|0:this.Cf()};l.Cf=function(){v.call(this.A,13,0);return-1};function Bc(a,b,c,d,e){a.ja=b;a.ya=d;a.Za=e;a.C=(e>>>0)+1;a.lb=c;a.type=c&7936;a.ext=c>>16&192;a.hc=(b&4?a.A.Zb.ya:a.A.ub)+(b&65528)|0;4>a.id&&zc(a,!0)}function Cc(a,b,c){var d=a.A,e=d.ha(b+2),f=d.ha(b)|(e&255)<<16,d=d.ha(b+4);a.ja=c;a.ya=f;a.Za=d;a.C=(d>>>0)+1;a.lb=e;a.type=e&7936;a.ext=0;a.hc=b;4>a.id&&zc(a,!0)}
function Ac(a,b,c,d){var e=a.A;if(!d&&c===a.B.ja)return a.ja=c,a.ya=a.B.ya,a.Za=a.B.Za,a.C=(a.B.Za>>>0)+1,a.lb=a.B.lb,a.type=a.B.type,a.ext=a.B.ext,a.hc=a.B.hc,a.B.ja=-1,zc(a,!0,!0,!1),a.ya;a.B.ja=-1;var f=e.ha(b+0),g=e.ha(b+4),h=g&7936,k=e.ha(b+2)|(g&255)<<16,m=e.ha(b+6),q=c&65528;if(80386<=e.ca){var y=f,k=k|(m&65280)<<16,f=f|(m&15)<<16;m&128&&(f=f<<12|4095)}switch(a.id){case 1:var w=a.D;a.re=!1;if(w&&1==c&&a.G.length){var z=a.G[a.ff-1];if(z&&!z())return-1}var B=c&3,Q=(g&24576)>>13,z=-1,V,aa;q||
b>=e.ub&&b<e.wc&&(h=0);if(6144<=h)null!=d?z=0:!1!==w?(h&1024?Q<=a.sb&&(z=0):B<=a.sb&&Q==a.sb&&(z=0),z||(c=c&-4|a.sb&3)):B>=a.sb&&(B>a.sb&&(z=x(e),Dc(e,x(e),!0),A(e,z),a.re=!0),z=0);else{if(256==h||2304==h)return Ec(a,c,w)?a.ya:-1;if(1024==h)z=2,aa=0,B<a.sb&&(B=a.sb);else if(3072==h)z=4,aa=0,B<a.sb&&(B=a.sb);else if(1536==h)z=2,aa=148224;else if(3584==h)z=4,aa=148224;else if(1792==h)z=2,aa=147712;else if(3840==h)z=4,aa=147712;else if(1280==h)return Ec(a,k&65535,w)?a.ya:-1}0<z&&!(g&32768)&&(z=0);if(0<
z&&(q=a.sb,V=b==e.Ab+c,B<=Q&&(!V||0<=e.fc||q<=Q))){b=k&65535;h&2048&&(f=y|m<<16);m=h=0;d=b&3;if(d<q){if(-1===a.If(b,!0))return-1;m=e.ga.ya;e.ga.type&2048?(c=(d<<3)+4,k=4):(c=(d<<2)+2,k=2);h=e.ha(m+c+k);if(!h)return v.call(e,10,h),-1;if(-1===e.P.If(h,!0))return-1;m=2==k?e.ha(m+c):e.fa(m+c)}c=e.X;e.X&=~aa;c&131072&&Fc(e,!0,!1);if(-1===a.If(b,!1))return-1;Gc(e,z);a.ff=f;if(d<q){if(!0!==w)return-1;z=C(e);f=0;for(g&=31;g--;)a.H[f++]=Hc(e,e.P,z),z+=2;w=e.P.ja;g=C(e);Dc(e,h,!0);A(e,m);c&131072&&(Gc(e,4),
Ic(e,e.Xa.ja,4,2),e.Xa.load(0),Ic(e,e.Ta.ja,4,2),e.Ta.load(0),Ic(e,e.xa.ja,4,2),Jc(e,0),Ic(e,e.pa.ja,4,2),Kc(e,0));Ic(e,w,e.U,2);for(D(e,g);f;)D(e,a.H[--f]);a.re=!0}return a.ya}if(z)return v.call(e,13,c&65532|(V?2:0)),-1;if(!(g&32768))return v.call(e,11,c&65532|(V?2:0)),-1;break;case 2:if(q){if(4096>h||2048==(h&2560))return v.call(e,13,c&65532),-1;if(!(g&32768))return v.call(e,11,c&65532),-1}break;case 3:if(!q||4096>h||512!=(h&2560))return v.call(e,13,c&65532),-1;if(!(g&32768))return v.call(e,12,
c&65532),-1;break;case 4:w=h&-513;if(!q||256!=w&&2304!=w)return v.call(e,13,c&65532),-1;2304==w&&(a.ei=k+e.ha(k+102)|0,a.ck=k+a.Za|0);break;case 6:if(!(h&4096)&&768<h&&2304!=h&&2816!=h)return-1}d?(a.B.ja=c,a.B.ya=k,a.B.Za=f,a.B.lb=g,a.B.type=h,a.B.ext=m,a.B.hc=b):(a.ja=c,a.ya=k,a.Za=f,a.C=(f>>>0)+1,a.lb=g,a.type=h,a.ext=m,a.hc=b,zc(a,!0,!0,!1));return k}
function Ec(a,b,c){var d=a.A,e=a.sb,f=d.ga.ja,g=d.ga.ya;if(!c){if(!(d.ga.type&512))return v.call(d,13,b&65532),!1;d.bb(d.ga.hc+4,d.ga.lb&=-513)}if(-1===d.ga.load(b))return!1;var h=d.ga.ya;if(!1!==c){if(d.ga.type&512)return v.call(d,13,b&65532),!1;d.bb(d.ga.hc+4,d.ga.lb|=512)}d.ga.type=d.ga.type&-513|d.ga.lb&512;256==d.ga.type||768==d.ga.type?(d.bb(g+14,E(d)),d.bb(g+16,Lc(d)),d.bb(g+18,d.J),d.bb(g+20,d.G),d.bb(g+22,d.M),d.bb(g+24,d.D),d.bb(g+26,C(d)),d.bb(g+28,d.K),d.bb(g+30,d.I),d.bb(g+32,d.H),d.bb(g+
34,d.pa.ja),d.bb(g+36,d.Ca.ja),d.bb(g+38,d.P.ja),d.bb(g+40,d.xa.ja),d.Zb.load(d.ha(h+42)),Mc(d,d.ha(h+16)|(c?16384:0)),d.J=d.ha(h+18),d.G=d.ha(h+20),d.M=d.ha(h+22),d.D=d.ha(h+24),d.K=d.ha(h+28),d.I=d.ha(h+30),d.H=d.ha(h+32),d.pa.load(d.ha(h+34)),d.xa.load(d.ha(h+40)),Nc(d,d.ha(h+14),d.ha(h+36)),b=38,g=26,a.sb<e&&(g=(a.sb<<2)+2,b=g+2),Dc(d,d.ha(h+b),!0),A(d,d.ha(h+g))):(d.Va(g+28,d.cd),d.Va(g+32,E(d)),d.Va(g+36,Lc(d)),d.Va(g+40,d.J),d.Va(g+44,d.G),d.Va(g+48,d.M),d.Va(g+52,d.D),d.Va(g+56,C(d)),d.Va(g+
60,d.K),d.Va(g+64,d.I),d.Va(g+68,d.H),d.Va(g+72,d.pa.ja),d.Va(g+76,d.Ca.ja),d.Va(g+80,d.P.ja),d.Va(g+84,d.xa.ja),d.Va(g+88,d.Ta.ja),d.Va(g+92,d.Xa.ja),Pc.call(d,d.fa(h+28)),d.Zb.load(d.ha(h+96)),Mc(d,d.fa(h+36)|(c?16384:0)),d.J=d.fa(h+40),d.G=d.fa(h+44),d.M=d.fa(h+48),d.D=d.fa(h+52),d.K=d.fa(h+60),d.I=d.fa(h+64),d.H=d.fa(h+68),d.pa.load(d.ha(h+72)),d.xa.load(d.ha(h+84)),d.Ta.load(d.ha(h+88)),d.Xa.load(d.ha(h+92)),Nc(d,d.fa(h+32),d.ha(h+76)),b=80,g=56,a.sb<e&&(g=(a.sb<<3)+4,b=g+4),Dc(d,d.ha(h+b),!0),
A(d,d.fa(h+g)));c&&d.bb(h+0,f);d.Pa|=8;return!0}l.save=function(){return[this.ja,this.ya,this.Za,this.lb,this.id,this.Zf,this.sb,this.nc,this.hc,this.Qc,this.ta,this.U,this.N,this.type,this.C]};l.restore=function(a){"number"==typeof a?this.load(a):(this.ja=a[0],this.ya=a[1],this.Za=a[2],this.lb=a[3],this.id=a[4],this.Zf=a[5],this.sb=a[6],this.nc=a[7],this.hc=a[8],this.Qc=a[9]||2,this.ta=a[10]||65535,this.U=a[11]||2,this.N=a[12]||65535,this.type=a[13]||this.lb&7936,this.C=a[14]||(this.Za>>>0)+1)};
function zc(a,b,c,d){void 0===c&&(c=!!(a.A.Pa&1));a.yd=!1;if(c)if(a.load=a.If,a.xi=a.Fl,a.Qb=a.ji,a.Rb=a.li,void 0===d&&(d=!!(a.A.X&131072)),d)a.load=a.L,a.Qb=a.I,a.Rb=a.K,a.sb=a.nc=3,a.U=2,a.N=a.ta=65535,a.Za=65535,a.C=a.Za+1,a.Qc=a.U,a.hc=-1,a.re=!1;else{if(!(a.ja&-4))a.Qb=a.Bf,a.Rb=a.Cf;else if(a.type&4096){6144==(a.type&6656)&&(a.Qb=a.Bf);if(a.type&2048||!(a.type&512))a.Rb=a.Cf;1024==(a.type&3072)&&(a.Qb==a.ji&&(a.Qb=a.fk),a.Rb==a.li&&(a.Rb=a.gk),a.yd=!0);b&&6>a.id&&a.ja&-4&&-1!==a.hc&&(c=a.hc+
5,d=a.A.Jb(c),d&1||a.A.Mc(c,d|1))}b&&(a.sb=a.ja&3,a.nc=(a.lb&24576)>>13,80386>a.A.ca||!(a.ext&64)?(a.U=2,a.N=65535):(a.U=4,a.N=-1),a.Qc=a.U,a.ta=a.N)}else a.load=a.yi,a.xi=a.Gl,a.Qb=a.ki,a.Rb=a.mi,a.sb=a.nc=0,a.hc=-1,a.re=!1}
function Qc(a){this.ca=+a.model||8088;var b=a.stepping;this.od=this.ca+(b?ea(b,16):0);switch(this.ca){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}ic.call(this,a,b);this.Jh=61442;this.nd=1792;this.Hh=28672;this.ce=4;this.Da=255;this.B=80286<=this.ca?eb:db;this.ma=Rc;this.Oh=Sc;this.Qh=Tc;this.Sh=Uc;if(80186<=this.ca&&(this.ma=Rc.slice(),this.Oh=Sc.slice(),this.Qh=Tc.slice(),this.Da=31,this.ma[15]=Vc,this.ma[96]=Wc,this.ma[97]=Xc,this.ma[98]=Yc,this.ma[99]=Vc,this.ma[100]=Vc,this.ma[101]=
Vc,this.ma[102]=Vc,this.ma[103]=Vc,this.ma[104]=Zc,this.ma[105]=$c,this.ma[106]=ad,this.ma[107]=bd,this.ma[108]=cd,this.ma[109]=dd,this.ma[110]=ed,this.ma[111]=fd,this.ma[192]=gd,this.ma[193]=hd,this.ma[200]=id,this.ma[201]=jd,this.ma[241]=kd,this.Oh[7]=ld,this.Qh[7]=ld,80286<=this.ca)){this.Jh=2;this.nd|=28672;this.ce=0;this.ma[15]=md;this.Yc=nd.slice();for(a=0;a<this.Yc.length;a++)this.Yc[a]||(this.Yc[a]=od);this.ma[84]=pd;this.ma[99]=qd;if(80386<=this.ca){var c;this.Hh=0;this.nd|=196608;this.ma[100]=
rd;this.ma[101]=sd;this.ma[102]=td;this.ma[103]=ud;for(c in F)this.Yc[+c]=F[+c];80546<=this.od&&80562>=this.od&&(this.Yc[166]=vd,this.Yc[167]=wd)}}this.rf=[];this.Nh=[];this.ag=0;lc(this);this.ea.complete=this.ea.ik=!1;this.Wh=0;this.vc=this.R=[];this.da=this.xb=this.pb=this.pf=this.$d=this.Fa=this.oc=0;xd(this)}Pa(Qc,ic);
function wb(a){var b;if(a.R===a.vc){a.R=Array(a.pf);a.sf=new u(null,0,0,5,null,a);sb(a.sf,a.Ia);for(b=0;b<a.pf;b++)a.R[b]=a.sf;a.ae=new u;a.Lh=Array(512);a.tf=0}else for(var c=0;c<a.qf.length;c++){b=a.qf[c];var d=a.R[b];512>a.tf&&(a.Lh[a.tf++]=d);a.R[b]=a.sf}a.qf=[]}
function ac(a,b,c,d){var e=(b&-4194304)>>>20,f=a.vc[(a.cd+e&a.Fa)>>>a.da],g=f.Gd(e);if(!(g&1))return d||yd.call(a,b,!1,c),a.ae;if(!(g&4)&&3==a.za)return d||yd.call(a,b,!0,c),a.ae;var h=(b&4190208)>>>10,g=a.vc[((g&-4096)+h&a.Fa)>>>a.da],k=g.Gd(h);if(!(k&1))return d||yd.call(a,b,!1,c),a.ae;if(!(k&4)&&3==a.za)return d||yd.call(a,b,!0,c),a.ae;c=a.vc[((k&-4096)+(b&4095)&a.Fa)>>>a.da];if(d)return c;d=b>>>a.da;k=a.R[d];b&=-4096;var m;0<a.tf?(m=a.Lh[--a.tf],m.Al(b)):m=new u(b,0,0,6);b=m;b.L=c;b.B=f;b.D=e>>
2;b.C=g;b.G=h>>2;cb&&Ib&&c.V&&!c.controller&&!c.ie&&!c.je?(b.Ka=c.Ka,b.ud=c.ud,b.V=c.V,Fb(b,hc)):(b.K=c?Yb(32):0,b.P=c?Yb(96):0,Fb(b,fc));sb(b,a.Ia,k);a.R[d]=b;a.qf.push(d);return b}function zd(a){a.R!==a.vc&&(a.R=a.vc,a.sf=null,a.qf=null,a.ae=null)}l=Qc.prototype;l.reset=function(){this.ea.Nb&&oc(this);xd(this);lc(this);this.ea.error=!1};
function Ad(a,b){var c;switch(b){case 0:c=a.J;break;case 1:c=a.G;break;case 2:c=a.M;break;case 3:c=a.D;break;case 4:c=C(a);break;case 5:c=a.K;break;case 6:c=a.I;break;case 7:c=a.H}return c}function Bd(a,b,c){switch(b){case 0:a.J=c;break;case 1:a.G=c;break;case 2:a.M=c;break;case 3:a.D=c;break;case 4:A(a,c);break;case 5:a.K=c;break;case 6:a.I=c;break;case 7:a.H=c}}
function xd(a){a.J=0;a.D=0;a.G=0;a.M=0;a.Ob=0;a.K=0;a.I=0;a.H=0;a.Hb=!1;a.sa=a.Ga=0;a.oa=0;a.Uh=0;a.W=0;a.Pa=65520;a.Ab=0;a.xc=1023;a.X=a.Cb=0;a.sd=a.Ld=a.rd=a.Jd=0;a.fc=-1;a.Gc=a.ic=-1;a.Ed=a.ka=-1;a.Ca=new yc(a,1,"CS");a.xa=new yc(a,2,"DS");a.pa=new yc(a,2,"ES");a.P=new yc(a,3,"SS");A(a,0);Dc(a,0);if(80386<=a.ca){switch(a.od){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.Pa=16;a.bi=0;a.qd=0;a.cd=0;a.qb=[0,0,0,0,null,null,0,
0];a.uf=[null,null,null,null,null,null,0,0];a.Ta=new yc(a,2,"FS");a.Xa=new yc(a,2,"GS");zd(a)}a.dg=new yc(a,0,"NULL");a.va=a.xa;a.rb=a.P;a.L=a.wa=0;a.F=a.C=-1;a.Eb=a.dg;a.Ea=0;if(80286>a.ca)Nc(a,0,65535);else{a.ub=0;a.wc=65535;a.Zb=new yc(a,5,"LDT",!0);a.ga=new yc(a,4,"TSS",!0);a.Oa=new yc(a,6,"VER",!0);Nc(a,65520,61440);var b,c=E(a);b=a.Ca;var d=-65536;80386>b.A.ca&&(d&=16777215);b=b.ya=d;a.Y=b+c|0;a.bg=(b>>>0)+(a.Ca.Za>>>0)+1}Mc(a,0);Fc(a)}
function Cd(a){2==a.Qc?(a.$h=a.ha,a.Bb=Dd,a.Gb=Ed,a.yc=Fd,2==a.U?(a.Z=Gd,a.qa=Hd,a.Ja=Id):(a.Z=Jd,a.qa=Kd,a.Ja=Ld)):(a.$h=a.fa,a.Bb=Md,a.Gb=Nd,a.yc=Od,2==a.U?(a.Z=Pd,a.qa=Qd,a.Ja=Rd):(a.Z=Sd,a.qa=Td,a.Ja=Ud))}function Gc(a,b){a.U!=b&&(a.wa|=1024,a.U=b,a.N=2==b?65535:-1,Vd(a))}function Vd(a){2==a.U?(a.fb=32768,a.Sb=a.ha,a.Xb=a.bb,2==a.Qc?(a.Z=Gd,a.qa=Hd,a.Ja=Id):(a.Z=Pd,a.qa=Qd,a.Ja=Rd)):(a.fb=-2147483648,a.Sb=a.fa,a.Xb=a.Va,2==a.Qc?(a.Z=Jd,a.qa=Kd,a.Ja=Ld):(a.Z=Sd,a.qa=Td,a.Ja=Ud))}
function Wd(a){a.Qc=a.Ca.Qc;a.ta=a.Ca.ta;Cd(a);a.U=a.Ca.U;a.N=a.Ca.N;Vd(a);a.wa&=-3073}l.ti=function(){var a=this.J+this.D+this.G+this.M+C(this)+this.K+this.I+this.H|0;return a=a+E(this)+this.Ca.ja+this.xa.ja+this.P.ja+this.pa.ja+Lc(this)|0};function Xd(a,b,c){void 0===a.rf[b]&&(a.rf[b]=[]);a.rf[b].push(c)}function Yd(a,b){var c=a.Nh[b];null!=c&&(c(--a.ag),delete a.Nh[b])}
function Zd(a,b){for(var c=a.qb[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.qb[e],g=g&~(d>>2&3);if(b){var g=a.R[g>>>a.da],h=a;f?g.je++||(h&&(g.A=h),dc(g,cc,!1)):g.ie++||(h&&(g.A=h),bc(g,cc,!1))}else g=a.R[g>>>a.da],f?--g.je||(f=g,f.Yb=f.I?f.ia:f.nf,f.Ie=f.I?f.ba:f.vh,f.He=f.I?f.la:f.oa):--g.ie||(f=g,f.Wb=f.Fd,f.Ae=f.hf,f.Gd=f.oh)}c>>=2;d>>=4}}
function $b(a,b,c,d){if(!(a.L&8192)&&a.qb[7]&255){c--;var e=a.qb[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.qb[g]&&b<=a.qb[g]+h){a.qb[6]|=1<<g;a.Ea|=2;break}}e>>=2;f>>=4}}}function Fc(a,b,c){void 0===b&&(b=!!(a.Pa&1));void 0===c&&(c=!!(a.X&131072));a.Sh=b&&!c?$d:Uc;zc(a.Ca,!1,b,c);zc(a.xa,!1,b,c);zc(a.P,!1,b,c);zc(a.pa,!1,b,c);80386<=a.ca&&(zc(a.Ta,!1,b,c),zc(a.Xa,!1,b,c));Wd(a)}
l.save=function(){var a=new ae(this);a.set(0,[this.J,this.D,this.G,this.M,C(this),this.K,this.I,this.H]);var b=E(this),c=this.Ca.save(),d=this.xa.save(),e=this.P.save(),f=this.pa.save(),g;null!=this.ub?(g=[this.Pa,this.ub,this.wc,this.Ab,this.xc,this.Zb.save(),this.ga.save(),this.Cb],80386<=this.ca&&(g.push(this.bi),g.push(this.qd),g.push(this.cd),g.push(this.qb),g.push(this.uf))):g=null;b=[b,c,d,e,f,g,Lc(this)];80386<=this.ca&&(b.push(this.Ta.save()),b.push(this.Xa.save()));a.set(1,b);a.set(2,[this.va.Zf,
this.rb.Zf,this.L,this.wa,this.Ea,this.F,this.C]);a.set(3,[0,this.bd,this.T.Cd]);a.set(4,Ob(this.ia,!!(this.Pa&-2147483648)));return a.data()};
l.restore=function(a){var b=a[0];this.J=b[0];this.D=b[1];this.G=b[2];this.M=b[3];var c=b[4];this.K=b[5];this.I=b[6];this.H=b[7];b=a[1];this.Ca.restore(b[1]);this.xa.restore(b[2]);this.P.restore(b[3]);this.pa.restore(b[4]);var d=b[5];d&&d.length&&(this.Pa=d[0],this.ub=d[1],this.wc=d[2],this.Ab=d[3],this.xc=d[4],this.Zb.restore(d[5]),this.ga.restore(d[6]),this.Cb=d[7],80386<=this.ca&&(this.bi=d[8],this.qd=d[9],this.cd=d[10],this.qb=d[11],this.uf=d[12]),Fc(this));Mc(this,b[6]);var d=!1,e;a:{e=this.ia;
var f=a[4],g;for(g=0;g<f.length-1;g+=2){var h=f[g],k=f[g+1];if(k&&k.length<e.ia){for(var m=0,q=Array(e.ia),y=0;y<k.length-1;)for(var w=k[y++],z=k[y++];w--;)q[m++]=z;k=q}m=e.R[h];if(!m||!m.restore(k)){r("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&tb(e,f[g]);e=!0}e&&(Nc(this,b[0],this.Ca.ja),A(this,c),Dc(this,this.P.ja),80386<=this.ca&&(this.Ta.restore(b[7]),this.Xa.restore(b[8])),d=!0);b=a[2];this.va=null!=b[0]&&be(this,b[0])||this.xa;this.rb=null!=b[1]&&be(this,b[1])||this.P;
this.L=b[2];this.wa=b[3];this.Ea=b[4];this.F=b[5];this.C=b[6];b=a[3];this.bd=b[1];pc(this,b[2]);return d};function be(a,b){switch(b){case "CS":return a.Ca;case "DS":return a.xa;case "SS":return a.P;case "ES":return a.pa;case "NULL":return a.dg;default:return[0,b,0,0,""]}}function ce(a,b){null!=Nc(a,E(a),b)&&(a.L|=a.ce)}function Jc(a,b){-1!==a.xa.load(b)&&(a.L|=a.ce)}
function Dc(a,b,c){var d=C(a);-1!==a.P.load(b)&&(A(a,d),a.P.yd?(a.cg=a.P.ya+a.P.ta|0,a.be=a.P.ya+a.P.Za|0):(a.cg=a.P.ya+a.P.Za|0,a.be=a.P.ya),c||(a.L|=4))}function Kc(a,b){-1!==a.pa.load(b)&&(a.L|=a.ce)}function E(a){return a.Y-a.Ca.ya|0}function G(a,b){a.Y=a.Ca.ya+(b&a.N)|0}function de(a,b){a.Y=b;a.bg=(a.Ca.ya>>>0)+(a.Ca.Za>>>0)+1;a.za=a.Ca.sb;Wd(a)}function Nc(a,b,c,d){var e=a.Ca;e.ff=b;e.D=d;b=e.load(c);return-1!==b?(de(a,b+(a.Ca.ff&a.Ca.N)),a.Ca.re):null}
function ee(a,b){b=(a.Y>>>0)+b;b>a.bg&&(8088>=a.ca||a.Ca.Za==a.Ca.ta?b=a.Ca.ya+(b-a.bg&a.N):v.call(a,13,0));return b|0}function fe(a){a.Y=a.Ed}function C(a){return a.Ob&~a.P.ta|a.ra-a.P.ya}function A(a,b){a.Ob=b;a.ra=a.P.ya+(b&a.P.ta)|0}function ge(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&he(a),g&2&&ie(a),g&4&&je(a),g&8&&ke(a),g&16&&le(a),g&32&&me(a))}f?(a.sd=d,a.rd=b):(a.sd=b,a.rd=d);a.Ld=c;a.Jd=d;a.resultType=e}
function H(a,b,c,d,e){a.resultType=c|26;a.Jd=b;d?ne(a):oe(a);e?pe(a):se(a);return b}function te(a,b,c,d){c&d?ne(a):oe(a);(b^c)&d?pe(a):se(a)}function ue(a){return he(a)?1:0}function he(a){a.resultType&1&&(a.X&=-2,(a.sd^(a.sd^a.Ld)&(a.Ld^a.rd))&a.resultType&-2147450752&&(a.X|=1),a.resultType&=-2);return a.X&1}function ie(a){a.resultType&2&&(a.X&=-5,38505>>((a.Jd^a.Jd>>4)&15)&1&&(a.X|=4),a.resultType&=-3);return a.X&4}
function je(a){a.resultType&4&&(a.X&=-17,(a.rd^a.sd^a.Ld)&16&&(a.X|=16),a.resultType&=-5);return a.X&16}function ke(a){a.resultType&8&&(a.X&=-65,a.Jd&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.X|=64),a.resultType&=-9);return a.X&64}function le(a){a.resultType&16&&(a.X&=-129,a.Jd&a.resultType&-2147450752&&(a.X|=128),a.resultType&=-17);return a.X&128}
function me(a){a.resultType&32&&(a.X&=-2049,(a.sd^a.rd)&(a.Ld^a.rd)&a.resultType&-2147450752&&(a.X|=2048),a.resultType&=-33);return a.X&2048}function oe(a){a.resultType&=-2;a.X&=-2}function ve(a){a.resultType&=-5;a.X&=-17}function we(a){a.resultType&=-9;a.X&=-65}function se(a){a.resultType&=-33;a.X&=-2049}function ne(a){a.resultType&=-2;a.X|=1}function xe(a){a.resultType&=-5;a.X|=16}function ye(a){a.resultType&=-9;a.X|=64}function pe(a){a.resultType&=-33;a.X|=2048}
function Lc(a){return a.X&-2262|he(a)|ie(a)|je(a)|ke(a)|le(a)|me(a)}function ze(a,b){b|=a.Pa&1|65520;a.Pa=a.Pa&-65536|b&65535;a.Pa&1&&Fc(a,!0)}function Mc(a,b,c){a.Pa&1||(b&=~a.Hh);void 0===c&&(c=a.za);c?b=b&-12289|a.X&12288:a.Cb=(b&12288)>>12;c>a.Cb&&(b=b&-513|a.X&512);a.resultType=128;a.X=a.X&~(a.nd|2261)|b&(a.nd|2261)|a.Jh;a.X&256&&(a.Ea|=2,a.L|=4)}
function Ae(a,b,c){var d=0;if(a.Pa&1&&(a.za>a.Cb||a.X&131072)&&a.ga.ei)for(var e=a.ga.ei+(b>>>3),d=(1<<c)-1<<(b&7);d&&e<=a.ga.ck&&!(a.Jb(e)&d);)d>>>=8,e++;return d?(v.call(a,13,0),!1):!0}
l.zb=function(a,b,c){switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.la[b]=c;this.Wh++;a=!0;break;default:a=this.parent.zb.call(this,a,b,c)}return a};
function Be(a,b,c,d){var e=(d?a.vc:a.R)[(b&a.oc)>>>a.da];e&&5==e.type&&(e=ac(a,b,!1,!0));if(e){var f=b&a.pb;if(!c||1==c)return e.Fd(f,b);if(2==c)return f<a.pb?e.hf(f,b):e.Fd(f,b)|Be(a,b+1,1,d)<<8;if(4==c)return f<a.pb-2?e.oh(f,b):f==a.pb-1?e.hf(f,b)|Be(a,b+2,2,d)<<16:e.Fd(f,b)|Be(a,b+1,1,d)<<8|Be(a,b+2,1,d)<<16|Be(a,b+3,1,d)<<24}return null}l.Jb=function(a){return this.R[(a&this.oc)>>>this.da].Wb(a&this.pb,a)};
l.ha=function(a){var b=a&this.pb,c=(a&this.oc)>>>this.da;this.A-=this.B.Rf;if(b<this.pb)return this.R[c].Ae(b,a);b=this.R[c].Wb(b,a);this.L&4096||(b|=this.R[c+1&this.$d].Wb(0,a+1)<<8);return b};l.fa=function(a){var b=a&this.pb,c=(a&this.oc)>>>this.da;if(b<this.pb-2)return this.R[c].Gd(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.R[c].Wb(b++,a++)<<f;if(this.L&4096)break;--g||(c=c+1&this.$d,b=0);f+=8}return d};l.Mc=function(a,b){this.R[(a&this.oc)>>>this.da].Yb(a&this.pb,b&255,a)};
l.bb=function(a,b){var c=a&this.pb,d=(a&this.oc)>>>this.da;this.A-=this.B.Rf;c<this.pb?this.R[d].Ie(c,b&65535,a):(this.R[d++].Yb(c,b&255,a),this.L&4096||this.R[d&this.$d].Yb(0,b>>8&255,a+1))};l.Va=function(a,b){var c=a&this.pb,d=(a&this.oc)>>>this.da;this.A-=this.B.Rf;if(c<this.pb-2)this.R[d].He(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.R[d].Yb(c++,b&255,a++);if(this.L&4096)break;--f||(d=d+1&this.$d,c=0);b>>>=8}};function Ce(a,b,c){a.Eb=b;a.La=c&a.ta;a.F=b.Qb(a.La,1);return a.L&1?0:a.Jb(a.F)}
function I(a,b){return Ce(a,a.va,b)}function J(a,b){return Ce(a,a.rb,b)}function De(a,b,c){a.Eb=b;a.La=c&a.ta;a.F=b.Qb(a.La,a.U);return a.L&1?0:a.Sb(a.F)}function K(a,b){a.Eb=a.va;a.La=b&a.ta;a.F=a.Eb.Qb(a.La,2);return a.L&1?0:a.ha(a.F)}function L(a,b){a.Eb=a.rb;a.La=b&a.ta;a.F=a.Eb.Qb(a.La,2);return a.L&1?0:a.ha(a.F)}function M(a,b){a.Eb=a.va;a.La=b&a.ta;a.F=a.Eb.Qb(a.La,4);return a.L&1?0:a.fa(a.F)}function N(a,b){a.Eb=a.rb;a.La=b&a.ta;a.F=a.Eb.Qb(a.La,4);return a.L&1?0:a.fa(a.F)}
function Ee(a,b){a.L&2||a.Mc(a.Eb.Rb(a.La,1),b)}function Fe(a,b){a.L&2||a.bb(a.Eb.Rb(a.La,2),b)}function Ge(a,b){a.L&2||a.Va(a.Eb.Rb(a.La,4),b)}function Hc(a,b,c){return a.Sb(b.Qb(c,a.U))}l.na=function(){var a=ee(this,1),b=this.Jb(this.Y);this.Y=a;return b};function He(a){var b=ee(a,2),c=a.ha(a.Y);a.Y=b;return c}function O(a){var b=ee(a,a.Qc),c=a.$h(a.Y);a.Y=b;return c}l.Aa=function(){var a=ee(this,this.U),b=this.Sb(this.Y);this.Y=a;return b};
l.O=function(){var a=ee(this,1),b=this.Jb(this.Y)<<24>>24;this.Y=a;return b};function x(a){var b=a.Sb(a.ra);a.ra=a.ra+a.U|0;var c=a.cg-a.ra|0;0>c&&0<=(a.cg^a.ra)&&(8088>=a.ca||!a.P.yd&&a.P.Za==a.P.ta||a.P.yd&&!a.P.Za?A(a,a.ra-a.P.ya&a.P.ta):-1>c&&v.call(a,12,0));return b}
function Ic(a,b,c,d){c=a.ra-c|0;0>(c-a.be|0)&&0<=(a.be^c)&&(8088>=a.ca||!a.P.yd&&a.P.Za==a.P.ta||a.P.yd&&!a.P.Za?(A(a,c-a.P.ya&a.P.ta),c=a.ra):v.call(a,12,0));switch(d){case 1:a.Mc(c,b);break;case 2:a.bb(c,b);break;case 4:a.Va(c,b)}a.ra=c}function D(a,b){var c=a.ra-a.U|0;0>(c-a.be|0)&&0<=(a.be^c)&&(8088>=a.ca||!a.P.yd&&a.P.Za==a.P.ta||a.P.yd&&!a.P.Za?(A(a,c-a.P.ya&a.P.ta),c=a.ra):v.call(a,12,0));a.Xb(c,b);a.ra=c}
function P(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.ca)2<b.length&&(b=b.substr(1,2));else if("PS"==b||2<b.length)d=8;a.la[b]&&(void 0===c&&(bb(a,"Value for "+b+" is invalid"),oc(a)),d=!a.ea.Nb||a.ea.ni?fa(c,d):"--------".substr(0,d),a.la[b].textContent!=d&&(a.la[b].textContent=d))}
l.Rc=function(a){this.Wh&&(a||!this.ea.Nb||this.ea.ni)&&(P(this,"EAX",this.J),P(this,"EBX",this.D),P(this,"ECX",this.G),P(this,"EDX",this.M),P(this,"ESP",C(this)),P(this,"EBP",this.K),P(this,"ESI",this.I),P(this,"EDI",this.H),P(this,"CS",this.Ca.ja),P(this,"DS",this.xa.ja),P(this,"SS",this.P.ja),P(this,"ES",this.pa.ja),P(this,"EIP",E(this)),a=Lc(this),P(this,"PS",a),P(this,"V",a&2048),P(this,"D",a&1024),P(this,"I",a&512),P(this,"T",a&256),P(this,"S",a&128),P(this,"Z",a&64),P(this,"A",a&16),P(this,
"P",a&4),P(this,"C",a&1),80386==this.ca&&(P(this,"FS",this.Ta.ja),P(this,"GS",this.Xa.ja),P(this,"CR0",this.Pa),P(this,"CR2",this.qd),P(this,"CR3",this.cd)));if(a=this.la.speed)a.textContent=this.ea.Nb&&this.T.Ad?this.T.Ad.toFixed(2)+"Mhz":"Stopped"};
l.Pj=function(a){this.ea.complete=!0;this.ea.ik=!1;this.ea.Oj=!1;this.mc=this.A=a;this.S&&!a&&vc(this.S);a||(this.L|=4);do{if(a=this.L&3312)this.wa|=a;else if(this.Ed=this.Y,this.va=this.xa,this.rb=this.P,this.F=this.C=-1,this.wa&3072&&Wd(this),this.wa=this.L&256,this.Ea){a:if(!(this.L&4)){a=80286>this.ca?0:1;for(var b=0;2>b;b++){switch(a){case 0:if(this.Ea&1&&this.X&512){var c=Ie(this.S);if(-1<=c&&(this.Ea&=-2,0<=c)){this.Ea&=-5;Je.call(this,c);break a}}break;case 1:if(this.Ea&2){this.Ea&=-3;80386<=
this.ca&&(this.qb[6]|=16384);Je.call(this,1);break a}}a=1-a}}if(this.Ea&4){this.L=this.A=0;break}}this.L=0;this.ma[this.na()].call(this)}while(0<this.A);return this.ea.complete?this.mc-this.A:void 0===this.ea.complete?0:-1};Ia(function(){for(var a=Za(document,"pcx86","cpu"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Qc(d);Ya(d,c)}});
function Ke(a){Ma.call(this,"FPU",a,Ke);this.ca=a.model||8087;this.K=new Float64Array(8);this.da=new Int32Array(this.K.buffer);this.Z=new Float32Array(1);this.ka=new Int32Array(this.Z.buffer);this.P=new Float64Array(1);this.I=new Int32Array(this.P.buffer);this.G=Array(3);this.ia=this.ba=-1;this.L=this.R=this.W=this.B=0;this.Y=new Float64Array(1);this.ga=new Int32Array(this.Y.buffer);this.ga[0]=0;this.ga[1]=268402688;Le(this)}Pa(Ke);l=Ke.prototype;
l.pc=function(a,b,c){this.A=c;this.S=jb(a,"ChipSet");t(this)};l.Ub=function(a,b){if(!b)if(!a||!this.restore)Le(this);else if(!this.restore(a))return!1;return!0};l.Tb=function(a){return a?this.save():!0};l.save=function(){var a=new ae(this),b=[],c=0;b[c++]=this.H;b[c++]=this.aa|this.C<<11;b[c++]=Me(this);for(var d=0;d<this.K.length;d++)b[c++]=this.K[d];a.set(0,b);return a.data()};
l.restore=function(a){a=a[0];var b=0;this.H=a[b++]&-57409;var c=a[b++];this.aa=c&-14337;this.C=(c&14336)>>11;Ne(this);Oe(this,a[b++]);for(c=0;c<this.K.length;c++)this.K[c]=a[b++];return!0};function Le(a){a.D=0;a.H=959;a.aa=0;a.C=0;a.S&&(a=a.S,a.ca>=Pe&&Qe(a,13))}function Ne(a){a.aa&=-129;a.aa&~a.H&63&&(a.aa|=128);if(a.aa&128&&!(a.H&128))return a=a.S,a.ca>=Pe?Re(a,13):a.ma&0||Je.call(a.A,2),!0;a=a.S;a.ca>=Pe&&Qe(a,13);return!1}function Se(a,b){80387<=a.ca||(b&=-65);a.aa|=b;return Ne(a)}
function Te(a,b){return isFinite(b)?!0:!Se(a,Infinity===b?8:16)}function Ue(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,Te(a,d)||(d=null));return d}function Ve(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,Te(a,d)||(d=null));return d}function We(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,Te(a,d)||(d=null));return d}function Xe(a,b,c){var d=null;null==b||null==c||!c&&Se(a,2)||(d=b/c,Te(a,d)||(d=null));return d}
function Ye(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:b||(d=16384));a.aa=a.aa&-18177|d;return!0}return!1}function Ze(a,b,c){if(null==b)return null;var d=a.H&3072;d?d=1024==d||3072==d&&0<b?Math.floor(b):Math.ceil(b):(d=Math.round(b),.5===d-b&&d%2&&d--);if(c){if(d>=c){if(Se(a,1))return null;d=-c}else if(d<-c){if(Se(a,1))return null;d=-c}a.I[0]=d|0;2147483648<c&&(a.I[1]=d/4294967296|0,!a.I[1]&&0>d&&(a.I[1]=-1))}return d}
function $e(a,b){var c=3;a.D&1<<b&&(a=a.K[b],c=0,a?isFinite(a)||(c=2):c=1);return c}function Me(a){for(var b=0,c=a.K.length-1;0<=c;c--)b<<=2,b|=$e(a,c);return b}function Oe(a,b){a.D=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.D|=c),b>>=2}function af(a){var b=a.C+0&7;return a.D&1<<b?(a.Z[0]=a.K[b],!0):Se(a,1)?!1:(a.Z[0]=a.Y[0],!0)}function bf(a){var b=a.C+0&7;return a.D&1<<b?(a.P[0]=a.K[b],!0):Se(a,1)?!1:(a.P[0]=a.Y[0],!0)}
function R(a,b){var c=null;b=a.C+b&7;a.D&1<<b?c=a.K[b]:Se(a,1)||(c=a.Y[0]);return c}function S(a,b,c){return null!=c&&(isNaN(c)?!Se(a,1):1)?(b=a.C+b&7,a.K[b]=c,a.D|=1<<b,!0):!1}function cf(a,b,c){var d=null;b=a.C+b&7;if(c||a.D&1<<b||!Se(a,1)){d=b<<1;c=a.da[d];d=a.da[d+1];b=d>>20&2047;var e=2147483648|(d&1048575)<<11|c>>>21;2047==b?b=32767:b?b+=15360:e&=2147483647;a.G[0]=c<<11;a.G[1]=e;a.G[2]=d>>16&32768|b;d=a.G}return d}function df(a){return a.A.ha(a.A.F)<<16>>16}
function ef(a){return a.A.fa(a.A.F)}function ff(a){a.ka[0]=a.A.fa(a.A.F);return a.Z[0]}function gf(a){a.I[0]=a.A.fa(a.A.F);a.I[1]=a.A.fa(a.A.F+4);return a.P[0]}function hf(a){a.G[0]=a.A.fa(a.A.F);a.G[1]=a.A.fa(a.A.F+4);a.G[2]=a.A.ha(a.A.F+8);return a.G}l.uh=function(){this.A.Va(this.A.F,this.I[0])};l.Lj=function(){this.A.Va(this.A.F,this.I[0]);this.A.Va(this.A.F+4,this.I[1])};l.Nj=Ke.prototype.uh;l.Mj=Ke.prototype.Lj;
function jf(a){a.A.Va(a.A.F,a.G[0]);a.A.Va(a.A.F+4,a.G[1]);a.A.bb(a.A.F+8,a.G[2])}function kf(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767;b=b[0]>>>11|c<<21;c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,b=c=0));a.I[0]=b;a.I[1]=c|(d|e)<<20;return a.P[0]}function lf(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function mf(a,b){for(var c=0,d=0;b--;)c|=a%10<<d,a/=10,d+=4;return c}
function nf(a){var b=null,c=1<<a.C;if(!(a.D&c)&&(a.aa&=-513,Se(a,65)))return b;a.D&=~c;b=a.K[a.C];a.C=a.C+1&7;return b}function of(a,b){if(null!=b){var c=a.C-1&7,d=1<<c;if(a.D&d&&(a.aa|=512,Se(a,65)))return;if(isNaN(b)&&Se(a,1)){if(Se(a,1))return;b=NaN}a.K[a.C=c]=b;a.D|=d}}
function pf(a,b){var c,d=a.A;c=d.Sb(b);a.H=c&-57409;c=d.Sb(b+=d.U);a.aa=c&-14337;a.C=(c&14336)>>11;Ne(a);Oe(a,d.Sb(b+=d.U));!(d.Pa&1)||d.X&131072?(a.L=d.Sb(b+=d.U),c=d.Sb(b+=d.U),a.W=c&2047,a.L|=(c&-4096)<<4,a.ia=-1,a.R=d.Sb(b+=d.U),a.R|=(d.Sb(b+=d.U)&-4096)<<4,a.ba=-1):(a.L=d.Sb(b+=d.U),c=d.Sb(b+=d.U),a.ia=c&65535,a.W=c>>16&2047,a.R=d.Sb(b+=d.U),a.ba=d.Sb(b+=d.U)&65535);return b+d.U}
function qf(a,b){var c=a.A;c.Xb(b,a.H);c.Xb(b+=c.U,a.aa|a.C<<11);c.Xb(b+=c.U,Me(a));if(!(c.Pa&1)||c.X&131072){var d=(a.ia<<4)+a.L;c.Xb(b+=c.U,d);c.Xb(b+=c.U,d>>4&-4096|a.W);d=(a.ba<<4)+a.R;c.Xb(b+=c.U,d);c.Xb(b+=c.U,d>>4&-4096)}else c.Xb(b+=c.U,a.L),c.Xb(b+=c.U,a.ia|a.W<<16),c.Xb(b+=c.U,a.R),c.Xb(b+=c.U,a.ba);return b+c.U}var rf=Math.log(10)/Math.LN2,sf=Math.LOG2E,tf=Math.PI,uf=Math.log(2)/Math.LN10,vf=Math.LN2,wf=Math.pow(2,63);function xf(){this.aa&=-32896;Ne(this)}
function yf(){Ye(this,R(this,0),R(this,this.B))}function zf(){Ye(this,R(this,0),R(this,this.B))&&nf(this)}function Af(){zf.call(this)}function Bf(){S(this,0,Xe(this,R(this,0),ff(this)))}function Ff(){this.D&=~(1<<this.C)}function Gf(){Le(this)}function Hf(){this.H=this.A.ha(this.A.F)&-57409}function If(){pf(this,this.A.F)}function Jf(){for(var a=this.A,b=pf(this,a.F),c=this.G,d=0;d<this.K.length;d++)c[0]=a.fa(b),c[1]=a.fa(b+=4),c[2]=a.ha(b+=4),c&&S(this,d,kf(this,c)),b+=2}
function Kf(){for(var a=this.A,b=qf(this,a.F),c=0;c<this.K.length;c++){var d=cf(this,c,!0);a.Va(b,d[0]);a.Va(b+=4,d[1]);a.bb(b+=4,d[2]);b+=2}Le(this)}function Lf(){qf(this,this.A.F);this.H|=63}function Mf(){S(this,this.B,R(this,0))&&nf(this)}function Nf(){Mf.call(this)}function Of(){this.A.bb(this.A.F,this.H)}function Pf(){this.A.bb(this.A.F,this.aa|this.C<<11)}function Qf(){80287<=this.ca&&(this.A.J=this.A.J&-65536|this.aa|this.C<<11)}
function Rf(){var a=R(this,0);S(this,0,R(this,this.B));S(this,this.B,a)}function Sf(){Rf.call(this)}
var Tf={216:{0:function(){S(this,0,Ue(this,R(this,0),ff(this)))},1:function(){S(this,0,We(this,R(this,0),ff(this)))},2:function(){Ye(this,R(this,0),ff(this))},3:function(){Ye(this,R(this,0),ff(this))&&nf(this)},4:function(){S(this,0,Ve(this,R(this,0),ff(this)))},5:function(){S(this,0,Ve(this,ff(this),R(this,0)))},6:Bf,7:Bf,48:function(){S(this,0,Ue(this,R(this,0),R(this,this.B)))},49:function(){S(this,0,We(this,R(this,0),R(this,this.B)))},50:yf,51:zf,52:function(){S(this,0,Ve(this,R(this,0),R(this,
this.B)))},53:function(){S(this,0,Ve(this,R(this,this.B),R(this,0)))},54:function(){S(this,0,Xe(this,R(this,0),R(this,this.B)))},55:function(){S(this,0,Xe(this,R(this,this.B),R(this,0)))}},217:{0:function(){of(this,ff(this))},2:function(){af(this)&&this.Nj()},3:function(){af(this)&&(this.Nj(),nf(this))},4:If,5:Hf,6:Lf,7:Of,48:function(){of(this,R(this,this.B))},49:Rf,50:function(){},51:Nf,64:function(){S(this,0,-R(this,0))},65:function(){S(this,0,Math.abs(R(this,0)))},68:function(){Ye(this,R(this,
0),0)},69:function(){this.aa&=-18177;this.da[((this.C+0&7)<<1)+1]&-2147483648&&(this.aa|=512);if(3==$e(this,this.C))this.aa|=16640;else{var a=R(this,0);this.aa=isNaN(a)?this.aa|256:0===a?this.aa|16384:Infinity===a||-Infinity===a?this.aa|1280:this.aa|1024}},80:function(){of(this,1)},81:function(){of(this,rf)},82:function(){of(this,sf)},83:function(){of(this,tf)},84:function(){of(this,uf)},85:function(){of(this,vf)},86:function(){of(this,0)},96:function(){S(this,0,Math.pow(2,R(this,0))-1)},97:function(){S(this,
1,R(this,1)*Math.log(R(this,0))/Math.LN2)&&nf(this)},98:function(){S(this,0,Math.tan(R(this,0)))&&of(this,1)},99:function(){S(this,1,Math.atan2(R(this,1),R(this,0)))&&nf(this)},100:function(){var a=R(this,0);null!=a&&(this.P[0]=a,S(this,0,(this.I[1]>>20&2047)-1023),this.I[1]=(this.I[1]|1072693248)&-1073741825,of(this,this.P[0]))},102:function(){this.C=this.C-1&7;this.aa&=-513},103:function(){this.C=this.C+1&7;this.aa&=-513},112:function(){S(this,0,R(this,0)%R(this,1))},113:function(){S(this,1,R(this,
1)*Math.log(R(this,0)+1)/Math.LN2)&&nf(this)},114:function(){var a=R(this,0),b=null;if(0<=a||!Se(this,1))b=Math.sqrt(a),Te(this,b)||(b=null);S(this,0,b)},116:function(){S(this,0,Ze(this,R(this,0),wf))},117:function(){var a=R(this,0),b=R(this,1);null!=a&&null!=b&&S(this,0,a*Math.pow(2,0<b?Math.floor(b):Math.ceil(b)))}},218:{0:function(){S(this,0,Ue(this,R(this,0),ef(this)))},1:function(){S(this,0,We(this,R(this,0),ef(this)))},2:function(){Ye(this,R(this,0),ef(this))},3:function(){Ye(this,R(this,0),
ef(this))&&nf(this)},4:function(){S(this,0,Ve(this,R(this,0),ef(this)))},5:function(){S(this,0,Ve(this,ef(this),R(this,0)))},6:function(){S(this,0,Xe(this,R(this,0),ef(this)))},7:function(){S(this,0,Xe(this,ef(this),R(this,0)))}},219:{0:function(){of(this,ef(this))},2:function(){null!=Ze(this,R(this,0),2147483648)&&this.uh()},3:function(){null!=Ze(this,R(this,0),2147483648)&&(this.uh(),nf(this))},5:function(){of(this,kf(this,hf(this)))},7:function(){cf(this,0)&&(jf(this),nf(this))},64:function(){8087==
this.ca&&(this.H&=-129)},65:function(){8087==this.ca&&(this.H|=128)},66:xf,67:Gf,68:function(){},115:function(){}},220:{0:function(){S(this,0,Ue(this,R(this,0),gf(this)))},1:function(){S(this,0,We(this,R(this,0),gf(this)))},2:function(){Ye(this,R(this,0),gf(this))},3:function(){Ye(this,R(this,0),gf(this))&&nf(this)},4:function(){S(this,0,Ve(this,R(this,0),gf(this)))},5:function(){S(this,0,Ve(this,gf(this),R(this,0)))},6:function(){S(this,0,Xe(this,R(this,0),gf(this)))},7:function(){S(this,0,Xe(this,
gf(this),R(this,0)))},48:function(){S(this,this.B,Ue(this,R(this,this.B),R(this,0)))},49:function(){S(this,this.B,We(this,R(this,this.B),R(this,0)))},50:function(){yf.call(this)},51:Af,52:function(){S(this,this.B,Ve(this,R(this,0),R(this,this.B)))},53:function(){S(this,this.B,Ve(this,R(this,this.B),R(this,0)))},54:function(){S(this,this.B,Xe(this,R(this,0),R(this,this.B)))},55:function(){S(this,this.B,Xe(this,R(this,this.B),R(this,0)))}},221:{0:function(){of(this,gf(this))},2:function(){bf(this)&&
this.Mj()},3:function(){bf(this)&&(this.Mj(),nf(this))},4:Jf,6:Kf,7:Pf,48:Ff,49:Sf,50:function(){S(this,this.B,R(this,0))},51:Mf},222:{0:function(){S(this,0,Ue(this,R(this,0),df(this)))},1:function(){S(this,0,We(this,R(this,0),df(this)))},2:function(){Ye(this,R(this,0),df(this))},3:function(){Ye(this,R(this,0),df(this))&&nf(this)},4:function(){S(this,0,Ve(this,R(this,0),df(this)))},5:function(){S(this,0,Ve(this,df(this),R(this,0)))},6:function(){S(this,0,Xe(this,R(this,0),df(this)))},7:function(){S(this,
0,Xe(this,df(this),R(this,0)))},48:function(){S(this,this.B,Ue(this,R(this,this.B),R(this,0)))&&nf(this)},49:function(){S(this,this.B,We(this,R(this,this.B),R(this,0)))&&nf(this)},50:Af,51:function(){Ye(this,R(this,0),R(this,1))&&null!=nf(this)&&nf(this)},52:function(){S(this,this.B,Ve(this,R(this,0),R(this,this.B)))&&nf(this)},53:function(){S(this,this.B,Ve(this,R(this,this.B),R(this,0)))&&nf(this)},54:function(){S(this,this.B,Xe(this,R(this,0),R(this,this.B)))&&nf(this)},55:function(){S(this,this.B,
Xe(this,R(this,this.B),R(this,0)))&&nf(this)}},223:{0:function(){of(this,df(this))},2:function(){null!=Ze(this,R(this,0),32768)&&this.A.bb(this.A.F,this.I[0])},3:function(){null!=Ze(this,R(this,0),32768)&&(this.A.bb(this.A.F,this.I[0]),nf(this))},4:function(){var a=hf(this),b=lf(a[0],8)+1E8*lf(a[1],8)+1E16*lf(a[2],2);a[2]&32768&&(b=-b);of(this,b)},5:function(){var a;a=this.A.fa(this.A.F);a=4294967296*this.A.fa(this.A.F+4)+(a>>>0);of(this,a)},6:function(){var a=Ze(this,nf(this));null!=a&&(this.G[0]=
mf(a,8),this.G[1]=mf(a/1E8,8),this.G[2]=mf(a/1E16,2),0>a&&(this.G[2]|=32768),jf(this))},7:function(){null!=Ze(this,R(this,0),wf)&&(this.Lj(),nf(this))},48:function(){Ff.call(this);nf(this)},49:Sf,50:Nf,51:Nf,52:Qf}},Uf=[xf,Gf,Hf,If,Jf,Kf,Of,Lf,Pf,Qf];Ia(function(){for(var a=Za(document,"pcx86","fpu"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Ke(d);Ya(d,c)}});function Vf(a,b){var c=a+b+ue(this)|0;ge(this,a,b,c,191);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&255}
function Wf(a,b){var c=a+b+ue(this)|0;ge(this,a,b,c,this.fb|63);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&this.N}function Xf(a,b){var c=a+b|0;ge(this,a,b,c,191);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&255}function Yf(a,b){var c=a+b|0;ge(this,a,b,c,this.fb|63);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&this.N}
function Zf(a,b){a&=b;H(this,a,128);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return a}function $f(a,b){this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return H(this,a&b,this.fb)&this.N}function ag(a,b){this.A-=10+(-1===this.F?0:1);if((a&3)<(b&3))return a=a&-4|b&3,ye(this),a;we(this);return a}
function bg(a){if(-1===this.F)return v.call(this,6),a;var b=a,c=this.Sb(this.F),d=this.Sb(this.F+this.U);2==this.U&&(b=a<<16>>16,c=c<<16>>16,d=d<<16>>16);this.A-=this.B.Ei;(b<c||b>d)&&v.call(this,5);this.L|=2;return a}function cg(a,b){var c=0;if(b){we(this);for(var d=1;d&this.N;){if(b&d){a=c;break}d<<=1;c++}}else ye(this);this.A-=11+3*c;return a}function dg(a,b){var c=0;if(b){we(this);for(var d=2==this.U?15:31,e=1<<d;e;){if(b&e){a=d;break}e>>>=1;c++;d--}}else ye(this);this.A-=11+3*c;return a}
function eg(a,b){a&1<<(b&(2==this.U?15:31))?ne(this):oe(this);this.A-=-1===this.F?3:6;this.L|=2;return a}function fg(a,b){b=1<<(b&(2==this.U?15:31));a&b?ne(this):oe(this);this.A-=-1===this.F?6:8;return a^b}function gg(a,b){b=1<<(b&(2==this.U?15:31));a&b?ne(this):oe(this);this.A-=-1===this.F?6:8;return a&~b}function hg(a,b){b=1<<(b&(2==this.U?15:31));a&b?ne(this):oe(this);this.A-=-1===this.F?6:8;return a|b}
function ig(a,b){if(-1===this.F)return eg.call(this,a,b);var c=this.U<<3;if(b>=c||b<-c)a=De(this,this.Eb,this.La+(b>>(2==this.U?4:5))*this.U);b=1<<(b&(2==this.U?15:31));a&b?ne(this):oe(this);this.A-=6;this.L|=2;return a}function jg(a,b){if(-1===this.F)return fg.call(this,a,b);var c=this.U<<3;if(b>=c||b<-c)a=De(this,this.Eb,this.La+(b>>(2==this.U?4:5))*this.U);b=1<<(b&(2==this.U?15:31));a&b?ne(this):oe(this);this.A-=8;return a^b}
function kg(a,b){if(-1===this.F)return gg.call(this,a,b);var c=this.U<<3;if(b>=c||b<-c)a=De(this,this.Eb,this.La+(b>>(2==this.U?4:5))*this.U);b=1<<(b&(2==this.U?15:31));a&b?ne(this):oe(this);this.A-=8;return a&~b}function lg(a,b){if(-1===this.F)return hg.call(this,a,b);var c=this.U<<3;if(b>=c||b<-c)a=De(this,this.Eb,this.La+(b>>(2==this.U?4:5))*this.U);b=1<<(b&(2==this.U?15:31));a&b?ne(this):oe(this);this.A-=8;return a|b}
function mg(a,b){ge(this,a,b,a-b|0,191,!0);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.Gg:this.B.yb;this.L|=2;return a}function ng(a,b){ge(this,a,b,a-b|0,this.fb|63,!0);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.Gg:this.B.yb;this.L|=2;return a}
function og(a){if(this.pd){var b=this.pd,c=this.Uh,d=this.W,e=d>>3&7;b.B=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.B);if(e=Tf[c][f]){if(0>Uf.indexOf(e)){var f=b.A,g=f.Ed;8087==b.ca&&(f.wa&16&&g++,f.wa&32&&g++);b.ia=f.Ca.ja;b.L=g-f.Ca.ya;-1!==f.F&&(b.ba=f.Eb.ja,b.R=f.F-f.Eb.ya);b.W=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.F?2:8;return a}function pg(a){if(80186>this.ca)return T.call(this,a);v.call(this,13,0);return a}function ld(a){v.call(this,6);return a}
function T(a){od.call(this);return a}function qg(a,b){a=rg.call(this,this.O(),b);80386>this.ca&&(this.A-=12);return a}function sg(a,b){a=this.Aa();a=2==this.U?rg.call(this,a,b):tg.call(this,a,b);80386>this.ca&&(this.A-=12);return a}function ug(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);vg.call(this,a,b);c&&(this.sa=~this.sa+1|0,this.Ga=~this.Ga+(this.sa?0:1)|0)}
function rg(a,b){a=(a<<16>>16)*(b<<16>>16)|0;32767<a||-32768>a?(ne(this),pe(this)):(oe(this),se(this));this.A-=-1===this.F?9:12;return a&65535}function tg(a,b){ug.call(this,a,b);this.Ga!=this.sa>>31?(ne(this),pe(this)):(oe(this),se(this));this.A-=-1===this.F?9:12;return this.sa}function wg(a,b){this.A-=14+(-1===this.F?0:2);we(this);-1!==this.Oa.load(b)&&this.Oa.nc>=this.za&&this.Oa.nc>=(b&3)&&(ye(this),a=this.Oa.lb&-256,2<this.U&&(a|=(this.Oa.ext&-65281)<<16));return a}
function xg(a,b){if(-1===this.F)return od.call(this),a;Jc(this,this.ha(this.F+this.U));this.A-=this.B.xe;return b}function yg(){this.A-=this.B.gj;return this.F}function zg(a,b){if(-1===this.F)return od.call(this),a;Kc(this,this.ha(this.F+this.U));this.A-=this.B.xe;return b}function Ag(a,b){if(-1===this.F)return od.call(this),a;a=this.ha(this.F+this.U);this.Ta.load(a);this.A-=this.B.xe;return b}
function Bg(a,b){if(-1===this.F)return od.call(this),a;a=this.ha(this.F+this.U);this.Xa.load(a);this.A-=this.B.xe;return b}function Cg(a,b){this.A-=14+(-1===this.F?0:2);if(b&65528&&-1!==this.Oa.load(b)&&(7168==(this.Oa.lb&7168)||this.Oa.nc>=this.za)&&this.Oa.nc>=(b&3))return ye(this),this.Oa.Za;we(this);return a}function Dg(a,b){if(-1===this.F)return od.call(this),a;Dc(this,this.ha(this.F+this.U));this.A-=this.B.xe;return b}
function Eg(a,b){this.A-=-1===this.C?-1===this.F?this.B.nj:this.B.mj:this.B.kj;return b}function Fg(a,b){switch(this.W>>3&7){case 4:this.oa=this.J;break;case 5:this.oa=this.G;break;case 6:this.oa=this.M;break;case 7:this.oa=this.D}return b}function Gg(a,b){return b}
function Hg(a,b){a=this.W>>3&7;switch(a){case 0:this.oa=this.J;break;case 2:this.oa=this.M;break;case 3:this.oa=this.D;break;default:if(80286==this.ca||80386==this.ca&&4!=a&&5!=a)v.call(this,6);else switch(a){case 1:this.oa=this.G;break;case 4:this.oa=C(this);break;case 5:this.oa=this.K;break;case 6:this.oa=this.I;break;case 7:this.oa=this.H}}return Eg.call(this,0,b)}
function Ig(a,b){switch(this.W>>3&7){case 0:b=this.pa.ja;break;case 1:b=this.Ca.ja;break;case 2:b=this.P.ja;break;case 3:b=this.xa.ja;break;case 4:if(80386<=this.ca){b=this.Ta.ja;break}v.call(this,6);b=a;break;case 5:if(80386<=this.ca){b=this.Xa.ja;break}default:v.call(this,6),b=a}-1!==this.C&&Gc(this,2);return Eg.call(this,0,b)}
function vg(a,b){if(a&-65536||b&-65536){var c=b&65535;b>>>=16;var d=a&65535;a>>>=16;var e=c*d,d=(e>>>16)+b*d,f=d>>>16,d=(d&65535)+c*a;this.sa=d<<16|e&65535;this.Ga=f+((d>>>16)+b*a)|0}else this.sa=a*b|0,this.Ga=0}function Jg(a,b){this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return H(this,a|b,128)}function Kg(a,b){this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return H(this,a|b,this.fb)&this.N}
function Lg(a,b){var c=a-b-ue(this)|0;ge(this,a,b,c,191,!0);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&255}function Mg(a,b){var c=a-b-ue(this)|0;ge(this,a,b,c,this.fb|63,!0);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&this.N}function Ng(){return me(this)?1:0}function Og(){return he(this)?1:0}function Pg(){return he(this)?0:1}function Qg(){return ke(this)?1:0}function Rg(){return ke(this)?0:1}function Sg(){return he(this)||ke(this)?1:0}
function Tg(){return he(this)||ke(this)?0:1}function Ug(){return le(this)?1:0}function Vg(){return le(this)?0:1}function Wg(){return ie(this)?1:0}function Xg(){return ie(this)?0:1}function Yg(){return!le(this)!=!me(this)?1:0}function Zg(){return!le(this)!=!me(this)?0:1}function $g(){return ke(this)||!le(this)!=!me(this)?1:0}function ah(){return ke(this)||!le(this)!=!me(this)?0:1}function bh(a,b){return ch.call(this,a,b,this.na())}function dh(a,b){return eh.call(this,a,b,this.na())}
function fh(a,b){return ch.call(this,a,b,this.G&31)}function gh(a,b){return eh.call(this,a,b,this.G&31)}function hh(a,b){return ih.call(this,a,b,this.na())}function jh(a,b){return kh.call(this,a,b,this.na())}function lh(a,b){return ih.call(this,a,b,this.G&31)}function mh(a,b){return kh.call(this,a,b,this.G&31)}function nh(a,b){var c=a-b|0;ge(this,a,b,c,191,!0);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&255}
function oh(a,b){var c=a-b|0;ge(this,a,b,c,this.fb|63,!0);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return c&this.N}function ph(a,b){H(this,a&b,128);this.A-=-1===this.C?-1===this.F?this.B.ih:this.B.cf:this.B.cf;this.L|=2;return a}function qh(a,b){H(this,a&b,this.fb);this.A-=-1===this.C?-1===this.F?this.B.ih:this.B.cf:this.B.cf;this.L|=2;return a}function rh(a,b){var c=this.J&this.N,d=(1<<(this.G&31))-1;return a&~(d<<c)|(b&d)<<c}
function sh(a,b){return b>>(this.J&this.N)&(1<<(this.G&31))-1&this.N}function th(a,b){if(-1===this.F){switch(this.W&7){case 0:this.J=this.J&-256|a;break;case 1:this.G=this.G&-256|a;break;case 2:this.M=this.M&-256|a;break;case 3:this.D=this.D&-256|a;break;case 4:this.J=this.J&-65281|a<<8;break;case 5:this.G=this.G&-65281|a<<8;break;case 6:this.M=this.M&-65281|a<<8;break;case 7:this.D=this.D&-65281|a<<8}this.A-=this.B.kh}else this.C=this.F,Ee(this,a),this.A-=this.B.jh;return b}
function uh(a,b){if(-1===this.F){switch(this.W&7){case 0:this.J=this.J&~this.N|a;break;case 1:this.G=this.G&~this.N|a;break;case 2:this.M=this.M&~this.N|a;break;case 3:this.D=this.D&~this.N|a;break;case 4:A(this,C(this)&~this.N|a);break;case 5:this.K=this.D&~this.N|a;break;case 6:this.I=this.I&~this.N|a;break;case 7:this.H=this.H&~this.N|a}this.A-=this.B.kh}else this.C=this.F,this.L&2||this.Xb(this.Eb.Rb(this.La,this.U),a),this.A-=this.B.jh;return b}
function vh(a,b){a^=b;H(this,a,128);this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return a}function wh(a,b){this.A-=-1===this.C?-1===this.F?this.B.dc:this.B.yb:this.B.qc;return H(this,a^b,this.fb)&this.N}function xh(a,b){var c=a[1]-b[1];c||(c=a[0]-b[0]);return c}function yh(a){var b=a-1|0;ge(this,a,1,b,this.fb|62,!0);this.A-=2;return a&~this.N|b&this.N}
function zh(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1;c=[c>>>0,0];for(a=[a>>>0,b>>>0];0<xh(a,c);){var f=b=c;b[0]+=f[0];b[1]+=f[1];4294967295<b[0]&&(b[0]>>>=0,b[1]++);e+=e}do 0<=xh(a,c)&&(b=a,f=c,b[0]-=f[0],b[1]-=f[1],0>b[0]&&(b[0]>>>=0,b[1]--),d+=e),b=c,b[0]>>>=1,b[1]&1&&(b[0]=(b[0]|2147483648)>>>0),b[1]>>>=1,e/=2;while(1<=e);this.sa=d;this.Ga=a[0];return!0}function Ah(a){var b=a+1|0;ge(this,a,1,b,this.fb|62);this.A-=2;return a&~this.N|b&this.N}
function Pc(a){this.cd=a;this.Pa&-2147483648&&wb(this)}function Bh(a){this.L|=1;this.Gb.call(this,a);this.A-=-1===this.F?4:5}function ch(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a<<c-1;a=(d<<1|b>>>16-c)&65535;H(this,a,32768,d&32768)}return a}function eh(a,b,c){if(c){var d=a<<c-1;a=d<<1|b>>>32-c;H(this,a,-2147483648,d&-2147483648)}return a}function ih(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a>>>c-1;a=(d>>>1|b<<16-c)&65535;H(this,a,32768,d&1)}return a}
function kh(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;H(this,a,-2147483648,d&1)}return a}function Ch(){this.A-=-1===this.F?2:this.B.Aj;return 1}function Dh(){var a=this.G&255;this.A-=(-1===this.F?this.B.ah:this.B.$g)+(a<<this.B.bh);return a}function Eh(){var a=this.na();this.A-=(-1===this.F?this.B.ah:this.B.$g)+(a<<this.B.bh);return a}function Fh(){return null}function Gh(){return this.oa}
function Hh(a,b){this.Gc=this.Ca.ja;this.ic=this.P.ja;this.ka=this.ra;var c=E(this),d=this.U;null!=Nc(this,a,b,!0)&&(Ic(this,this.Gc,d,2),Ic(this,c,d,d));this.Gc=this.ic=this.ka=-1}function Ih(a,b,c){this.A-=this.B.Zi+(c||0);c=Lc(this);var d=this.Ca.ja,e=E(this);a=this.Ca.xi(a);-1!==a&&(D(this,c),D(this,d),D(this,e),null!=b&&D(this,b),this.fc=-1,de(this,a))}
function Jh(a){this.ic=this.P.ja;this.ka=this.ra;var b=x(this),c=x(this);a&&A(this,C(this)+a);Nc(this,b,c,!1)&&(a&&A(this,C(this)+a),Kh.call(this,this.xa),Kh.call(this,this.pa),80386<=this.ca&&(Kh.call(this,this.Ta),Kh.call(this,this.Xa)));2==a&&this.ag&&Yd(this,this.Y);this.ic=this.ka=-1}function Lh(){8086==this.ca?(this.fc=-1,Ih.call(this,0,null,2)):v.call(this,0,null,2)}function Je(a,b){this.fc=a;void 0===b&&(b=11);Ih.call(this,a,null,b)}
function v(a,b,c,d){var e=!1;this.ea.complete?80186<=this.ca&&(e=!0,0>this.fc?(-1!=this.Gc&&(this.Gc!==this.Ca.ja&&(this.Ca.sb=this.Gc&3,ce(this,this.Gc)),this.Gc=-1),this.Ed!==this.Y&&de(this,this.Ed),-1!=this.ic&&(this.ic!==this.P.ja&&Dc(this,this.ic),this.ic=-1),-1!==this.ka&&(this.ka!==this.ra&&A(this,this.Ob&~this.P.ta|this.ka-this.P.ya),this.ka=-1)):8!=this.fc?(b=0,a=8):(b=0,a=-1,xd(this),e=d=!1)):de(this,this.Ed);var f=a,g=b,h=Be(this,this.Y);204!=h||this.xc||(d=!1);this.X&131072&&(6==f&&99==
h||13==f&&205==h)&&(d=!1);983040<=this.Y&&1048575>=this.Y&&(d=!1);if(d){var k=this.ea.Nb,f="Fault "+fa(f,2,!0)+(null!=g?" ("+fa(g,4,!0)+")":"")+" on opcode "+fa(h,2,!0);d&&k&&(f+=" (blocked)");this.Ba(f);oc(this)}if(d&&e)throw-1;if(e)throw this.fc=a,Ih.call(this,a,b,c),this.Ed=this.Y,this.L=1==a?this.L|8192:this.L|4096,a;}function yd(a,b,c){this.qd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.za&&(a|=4);v.call(this,14,a)}
function Kh(a){var b=a.lb&7680;a.ja&65528&&(6144==b||7168==b||7168>b&&a.nc<this.za&&a.nc<(a.ja&3))&&a.load(0)}
function Dd(a){var b,c;switch((this.W=this.na())&199){case 0:c=I(this,this.D+this.I);this.A-=this.B.Ic;break;case 1:c=I(this,this.D+this.H);this.A-=this.B.Jc;break;case 2:c=J(this,this.K+this.I);this.A-=this.B.Jc;break;case 3:c=J(this,this.K+this.H);this.A-=this.B.Ic;break;case 4:c=I(this,this.I);this.A-=this.B.kc;break;case 5:c=I(this,this.H);this.A-=this.B.kc;break;case 6:c=I(this,O(this));this.A-=this.B.$c;break;case 7:c=I(this,this.D);this.A-=this.B.kc;break;case 64:c=I(this,this.D+this.I+this.O());
this.A-=this.B.Kb;break;case 65:c=I(this,this.D+this.H+this.O());this.A-=this.B.Lb;break;case 66:c=J(this,this.K+this.I+this.O());this.A-=this.B.Lb;break;case 67:c=J(this,this.K+this.H+this.O());this.A-=this.B.Kb;break;case 68:c=I(this,this.I+this.O());this.A-=this.B.Sa;break;case 69:c=I(this,this.H+this.O());this.A-=this.B.Sa;break;case 70:c=J(this,this.K+this.O());this.A-=this.B.Sa;break;case 71:c=I(this,this.D+this.O());this.A-=this.B.Sa;break;case 128:c=I(this,this.D+this.I+O(this));this.A-=this.B.Kb;
break;case 129:c=I(this,this.D+this.H+O(this));this.A-=this.B.Lb;break;case 130:c=J(this,this.K+this.I+O(this));this.A-=this.B.Lb;break;case 131:c=J(this,this.K+this.H+O(this));this.A-=this.B.Kb;break;case 132:c=I(this,this.I+O(this));this.A-=this.B.Sa;break;case 133:c=I(this,this.H+O(this));this.A-=this.B.Sa;break;case 134:c=J(this,this.K+O(this));this.A-=this.B.Sa;break;case 135:c=I(this,this.D+O(this));this.A-=this.B.Sa;break;case 192:c=this.J&255;break;case 193:c=this.G&255;break;case 194:c=this.M&
255;break;case 195:c=this.D&255;break;case 196:c=this.J>>8&255;break;case 197:c=this.G>>8&255;break;case 198:c=this.M>>8&255;break;case 199:c=this.D>>8&255;break;default:c=0}var d=this.W>>3&7;switch(d){case 0:b=this.J&255;break;case 1:b=this.G&255;break;case 2:b=this.M&255;break;case 3:b=this.D&255;break;case 4:b=this.J>>8&255;break;case 5:b=this.G>>8&255;break;case 6:b=this.M>>8&255;break;case 7:b=this.D>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.J=this.J&-256|a;break;case 1:this.G=
this.G&-256|a;break;case 2:this.M=this.M&-256|a;break;case 3:this.D=this.D&-256|a;break;case 4:this.J=this.J&-65281|a<<8;break;case 5:this.G=this.G&-65281|a<<8;break;case 6:this.M=this.M&-65281|a<<8;break;case 7:this.D=this.D&-65281|a<<8}}
function Ed(a){var b,c,d=(this.W=this.na())&199;switch(d){case 0:b=I(this,this.D+this.I);this.C=this.F;break;case 1:b=I(this,this.D+this.H);this.C=this.F;break;case 2:b=J(this,this.K+this.I);this.C=this.F;break;case 3:b=J(this,this.K+this.H);this.C=this.F;break;case 4:b=I(this,this.I);this.C=this.F;break;case 5:b=I(this,this.H);this.C=this.F;break;case 6:b=I(this,O(this));this.C=this.F;break;case 7:b=I(this,this.D);this.C=this.F;break;case 64:b=I(this,this.D+this.I+this.O());this.C=this.F;break;case 65:b=
I(this,this.D+this.H+this.O());this.C=this.F;break;case 66:b=J(this,this.K+this.I+this.O());this.C=this.F;break;case 67:b=J(this,this.K+this.H+this.O());this.C=this.F;break;case 68:b=I(this,this.I+this.O());this.C=this.F;break;case 69:b=I(this,this.H+this.O());this.C=this.F;break;case 70:b=J(this,this.K+this.O());this.C=this.F;break;case 71:b=I(this,this.D+this.O());this.C=this.F;break;case 128:b=I(this,this.D+this.I+O(this));this.C=this.F;break;case 129:b=I(this,this.D+this.H+O(this));this.C=this.F;
break;case 130:b=J(this,this.K+this.I+O(this));this.C=this.F;break;case 131:b=J(this,this.K+this.H+O(this));this.C=this.F;break;case 132:b=I(this,this.I+O(this));this.C=this.F;break;case 133:b=I(this,this.H+O(this));this.C=this.F;break;case 134:b=J(this,this.K+O(this));this.C=this.F;break;case 135:b=I(this,this.D+O(this));this.C=this.F;break;case 192:b=this.J&255;break;case 193:b=this.G&255;break;case 194:b=this.M&255;break;case 195:b=this.D&255;break;case 196:b=this.J>>8&255;break;case 197:b=this.G>>
8&255;break;case 198:b=this.M>>8&255;break;case 199:b=this.D>>8&255;break;default:b=0}switch(this.W>>3&7){case 0:c=this.J&255;break;case 1:c=this.G&255;break;case 2:c=this.M&255;break;case 3:c=this.D&255;break;case 4:c=this.J>>8&255;break;case 5:c=this.G>>8&255;break;case 6:c=this.M>>8&255;break;case 7:c=this.D>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Ee(this,a);this.A-=this.B.Ic;break;case 1:case 2:Ee(this,a);this.A-=this.B.Jc;break;case 4:case 5:case 7:Ee(this,a);this.A-=
this.B.kc;break;case 6:Ee(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Ee(this,a);this.A-=this.B.Kb;break;case 65:case 66:case 129:case 130:Ee(this,a);this.A-=this.B.Lb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Ee(this,a);this.A-=this.B.Sa;break;case 192:this.J=this.J&-256|a;break;case 193:this.G=this.G&-256|a;break;case 194:this.M=this.M&-256|a;break;case 195:this.D=this.D&-256|a;break;case 196:this.J=this.J&-65281|a<<8;break;case 197:this.G=this.G&
-65281|a<<8;break;case 198:this.M=this.M&-65281|a<<8;break;case 199:this.D=this.D&-65281|a<<8}}
function Fd(a,b){var c,d=(this.W=this.na())&199;switch(d){case 0:c=I(this,this.D+this.I);this.C=this.F;break;case 1:c=I(this,this.D+this.H);this.C=this.F;break;case 2:c=J(this,this.K+this.I);this.C=this.F;break;case 3:c=J(this,this.K+this.H);this.C=this.F;break;case 4:c=I(this,this.I);this.C=this.F;break;case 5:c=I(this,this.H);this.C=this.F;break;case 6:c=I(this,O(this));this.C=this.F;break;case 7:c=I(this,this.D);this.C=this.F;break;case 64:c=I(this,this.D+this.I+this.O());this.C=this.F;break;case 65:c=
I(this,this.D+this.H+this.O());this.C=this.F;break;case 66:c=J(this,this.K+this.I+this.O());this.C=this.F;break;case 67:c=J(this,this.K+this.H+this.O());this.C=this.F;break;case 68:c=I(this,this.I+this.O());this.C=this.F;break;case 69:c=I(this,this.H+this.O());this.C=this.F;break;case 70:c=J(this,this.K+this.O());this.C=this.F;break;case 71:c=I(this,this.D+this.O());this.C=this.F;break;case 128:c=I(this,this.D+this.I+O(this));this.C=this.F;break;case 129:c=I(this,this.D+this.H+O(this));this.C=this.F;
break;case 130:c=J(this,this.K+this.I+O(this));this.C=this.F;break;case 131:c=J(this,this.K+this.H+O(this));this.C=this.F;break;case 132:c=I(this,this.I+O(this));this.C=this.F;break;case 133:c=I(this,this.H+O(this));this.C=this.F;break;case 134:c=J(this,this.K+O(this));this.C=this.F;break;case 135:c=I(this,this.D+O(this));this.C=this.F;break;case 192:c=this.J&255;break;case 193:c=this.G&255;break;case 194:c=this.M&255;break;case 195:c=this.D&255;break;case 196:c=this.J>>8&255;break;case 197:c=this.G>>
8&255;break;case 198:c=this.M>>8&255;break;case 199:c=this.D>>8&255;break;default:c=0}a=a[this.W>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Ee(this,a);this.A-=this.B.Ic;break;case 1:case 2:Ee(this,a);this.A-=this.B.Jc;break;case 4:case 5:case 7:Ee(this,a);this.A-=this.B.kc;break;case 6:Ee(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Ee(this,a);this.A-=this.B.Kb;break;case 65:case 66:case 129:case 130:Ee(this,a);this.A-=this.B.Lb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Ee(this,
a);this.A-=this.B.Sa;break;case 192:this.J=this.J&-256|a;break;case 193:this.G=this.G&-256|a;break;case 194:this.M=this.M&-256|a;break;case 195:this.D=this.D&-256|a;break;case 196:this.J=this.J&-65281|a<<8;break;case 197:this.G=this.G&-65281|a<<8;break;case 198:this.M=this.M&-65281|a<<8;break;case 199:this.D=this.D&-65281|a<<8}}
function Gd(a){var b,c;switch((this.W=this.na())&199){case 0:c=K(this,this.D+this.I);this.A-=this.B.Ic;break;case 1:c=K(this,this.D+this.H);this.A-=this.B.Jc;break;case 2:c=L(this,this.K+this.I);this.A-=this.B.Jc;break;case 3:c=L(this,this.K+this.H);this.A-=this.B.Ic;break;case 4:c=K(this,this.I);this.A-=this.B.kc;break;case 5:c=K(this,this.H);this.A-=this.B.kc;break;case 6:c=K(this,O(this));this.A-=this.B.$c;break;case 7:c=K(this,this.D);this.A-=this.B.kc;break;case 64:c=K(this,this.D+this.I+this.O());
this.A-=this.B.Kb;break;case 65:c=K(this,this.D+this.H+this.O());this.A-=this.B.Lb;break;case 66:c=L(this,this.K+this.I+this.O());this.A-=this.B.Lb;break;case 67:c=L(this,this.K+this.H+this.O());this.A-=this.B.Kb;break;case 68:c=K(this,this.I+this.O());this.A-=this.B.Sa;break;case 69:c=K(this,this.H+this.O());this.A-=this.B.Sa;break;case 70:c=L(this,this.K+this.O());this.A-=this.B.Sa;break;case 71:c=K(this,this.D+this.O());this.A-=this.B.Sa;break;case 128:c=K(this,this.D+this.I+O(this));this.A-=this.B.Kb;
break;case 129:c=K(this,this.D+this.H+O(this));this.A-=this.B.Lb;break;case 130:c=L(this,this.K+this.I+O(this));this.A-=this.B.Lb;break;case 131:c=L(this,this.K+this.H+O(this));this.A-=this.B.Kb;break;case 132:c=K(this,this.I+O(this));this.A-=this.B.Sa;break;case 133:c=K(this,this.H+O(this));this.A-=this.B.Sa;break;case 134:c=L(this,this.K+O(this));this.A-=this.B.Sa;break;case 135:c=K(this,this.D+O(this));this.A-=this.B.Sa;break;case 192:c=this.J&65535;break;case 193:c=this.G&65535;break;case 194:c=
this.M&65535;break;case 195:c=this.D&65535;break;case 196:c=C(this)&65535;break;case 197:c=this.K&65535;break;case 198:c=this.I&65535;break;case 199:c=this.H&65535;break;default:c=0}var d=this.W>>3&7;switch(d){case 0:b=this.J&65535;break;case 1:b=this.G&65535;break;case 2:b=this.M&65535;break;case 3:b=this.D&65535;break;case 4:b=C(this)&65535;break;case 5:b=this.K&65535;break;case 6:b=this.I&65535;break;case 7:b=this.H&65535;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.J=this.J&-65536|
a;break;case 1:this.G=this.G&-65536|a;break;case 2:this.M=this.M&-65536|a;break;case 3:this.D=this.D&-65536|a;break;case 4:A(this,C(this)&-65536|a);break;case 5:this.K=this.K&-65536|a;break;case 6:this.I=this.I&-65536|a;break;case 7:this.H=this.H&-65536|a}}
function Hd(a){var b,c,d=(this.W=this.na())&199;switch(d){case 0:b=K(this,this.D+this.I);this.C=this.F;break;case 1:b=K(this,this.D+this.H);this.C=this.F;break;case 2:b=L(this,this.K+this.I);this.C=this.F;break;case 3:b=L(this,this.K+this.H);this.C=this.F;break;case 4:b=K(this,this.I);this.C=this.F;break;case 5:b=K(this,this.H);this.C=this.F;break;case 6:b=K(this,O(this));this.C=this.F;break;case 7:b=K(this,this.D);this.C=this.F;break;case 64:b=K(this,this.D+this.I+this.O());this.C=this.F;break;case 65:b=
K(this,this.D+this.H+this.O());this.C=this.F;break;case 66:b=L(this,this.K+this.I+this.O());this.C=this.F;break;case 67:b=L(this,this.K+this.H+this.O());this.C=this.F;break;case 68:b=K(this,this.I+this.O());this.C=this.F;break;case 69:b=K(this,this.H+this.O());this.C=this.F;break;case 70:b=L(this,this.K+this.O());this.C=this.F;break;case 71:b=K(this,this.D+this.O());this.C=this.F;break;case 128:b=K(this,this.D+this.I+O(this));this.C=this.F;break;case 129:b=K(this,this.D+this.H+O(this));this.C=this.F;
break;case 130:b=L(this,this.K+this.I+O(this));this.C=this.F;break;case 131:b=L(this,this.K+this.H+O(this));this.C=this.F;break;case 132:b=K(this,this.I+O(this));this.C=this.F;break;case 133:b=K(this,this.H+O(this));this.C=this.F;break;case 134:b=L(this,this.K+O(this));this.C=this.F;break;case 135:b=K(this,this.D+O(this));this.C=this.F;break;case 192:b=this.J&65535;break;case 193:b=this.G&65535;break;case 194:b=this.M&65535;break;case 195:b=this.D&65535;break;case 196:b=C(this)&65535;break;case 197:b=
this.K&65535;break;case 198:b=this.I&65535;break;case 199:b=this.H&65535;break;default:b=0}switch(this.W>>3&7){case 0:c=this.J&65535;break;case 1:c=this.G&65535;break;case 2:c=this.M&65535;break;case 3:c=this.D&65535;break;case 4:c=C(this)&65535;break;case 5:c=this.K&65535;break;case 6:c=this.I&65535;break;case 7:c=this.H&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Fe(this,a);this.A-=this.B.Ic;break;case 1:case 2:Fe(this,a);this.A-=this.B.Jc;break;case 4:case 5:case 7:Fe(this,
a);this.A-=this.B.kc;break;case 6:Fe(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Fe(this,a);this.A-=this.B.Kb;break;case 65:case 66:case 129:case 130:Fe(this,a);this.A-=this.B.Lb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Fe(this,a);this.A-=this.B.Sa;break;case 192:this.J=this.J&-65536|a;break;case 193:this.G=this.G&-65536|a;break;case 194:this.M=this.M&-65536|a;break;case 195:this.D=this.D&-65536|a;break;case 196:A(this,C(this)&-65536|a);break;
case 197:this.K=this.K&-65536|a;break;case 198:this.I=this.I&-65536|a;break;case 199:this.H=this.H&-65536|a}}
function Id(a,b){var c,d=(this.W=this.na())&199;switch(d){case 0:c=K(this,this.D+this.I);this.C=this.F;break;case 1:c=K(this,this.D+this.H);this.C=this.F;break;case 2:c=L(this,this.K+this.I);this.C=this.F;break;case 3:c=L(this,this.K+this.H);this.C=this.F;break;case 4:c=K(this,this.I);this.C=this.F;break;case 5:c=K(this,this.H);this.C=this.F;break;case 6:c=K(this,O(this));this.C=this.F;break;case 7:c=K(this,this.D);this.C=this.F;break;case 64:c=K(this,this.D+this.I+this.O());this.C=this.F;break;case 65:c=
K(this,this.D+this.H+this.O());this.C=this.F;break;case 66:c=L(this,this.K+this.I+this.O());this.C=this.F;break;case 67:c=L(this,this.K+this.H+this.O());this.C=this.F;break;case 68:c=K(this,this.I+this.O());this.C=this.F;break;case 69:c=K(this,this.H+this.O());this.C=this.F;break;case 70:c=L(this,this.K+this.O());this.C=this.F;break;case 71:c=K(this,this.D+this.O());this.C=this.F;break;case 128:c=K(this,this.D+this.I+O(this));this.C=this.F;break;case 129:c=K(this,this.D+this.H+O(this));this.C=this.F;
break;case 130:c=L(this,this.K+this.I+O(this));this.C=this.F;break;case 131:c=L(this,this.K+this.H+O(this));this.C=this.F;break;case 132:c=K(this,this.I+O(this));this.C=this.F;break;case 133:c=K(this,this.H+O(this));this.C=this.F;break;case 134:c=L(this,this.K+O(this));this.C=this.F;break;case 135:c=K(this,this.D+O(this));this.C=this.F;break;case 192:c=this.J&65535;break;case 193:c=this.G&65535;break;case 194:c=this.M&65535;break;case 195:c=this.D&65535;break;case 196:c=C(this)&65535;break;case 197:c=
this.K&65535;break;case 198:c=this.I&65535;break;case 199:c=this.H&65535;break;default:c=0}a=a[this.W>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Fe(this,a);this.A-=this.B.Ic;break;case 1:case 2:Fe(this,a);this.A-=this.B.Jc;break;case 4:case 5:case 7:Fe(this,a);this.A-=this.B.kc;break;case 6:Fe(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Fe(this,a);this.A-=this.B.Kb;break;case 65:case 66:case 129:case 130:Fe(this,a);this.A-=this.B.Lb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Fe(this,
a);this.A-=this.B.Sa;break;case 192:this.J=this.J&-65536|a;break;case 193:this.G=this.G&-65536|a;break;case 194:this.M=this.M&-65536|a;break;case 195:this.D=this.D&-65536|a;break;case 196:A(this,C(this)&-65536|a);break;case 197:this.K=this.K&-65536|a;break;case 198:this.I=this.I&-65536|a;break;case 199:this.H=this.H&-65536|a}}
function Jd(a){var b,c;switch((this.W=this.na())&199){case 0:c=M(this,this.D+this.I);this.A-=this.B.Ic;break;case 1:c=M(this,this.D+this.H);this.A-=this.B.Jc;break;case 2:c=N(this,this.K+this.I);this.A-=this.B.Jc;break;case 3:c=N(this,this.K+this.H);this.A-=this.B.Ic;break;case 4:c=M(this,this.I);this.A-=this.B.kc;break;case 5:c=M(this,this.H);this.A-=this.B.kc;break;case 6:c=M(this,O(this));this.A-=this.B.$c;break;case 7:c=M(this,this.D);this.A-=this.B.kc;break;case 64:c=M(this,this.D+this.I+this.O());
this.A-=this.B.Kb;break;case 65:c=M(this,this.D+this.H+this.O());this.A-=this.B.Lb;break;case 66:c=N(this,this.K+this.I+this.O());this.A-=this.B.Lb;break;case 67:c=N(this,this.K+this.H+this.O());this.A-=this.B.Kb;break;case 68:c=M(this,this.I+this.O());this.A-=this.B.Sa;break;case 69:c=M(this,this.H+this.O());this.A-=this.B.Sa;break;case 70:c=N(this,this.K+this.O());this.A-=this.B.Sa;break;case 71:c=M(this,this.D+this.O());this.A-=this.B.Sa;break;case 128:c=M(this,this.D+this.I+O(this));this.A-=this.B.Kb;
break;case 129:c=M(this,this.D+this.H+O(this));this.A-=this.B.Lb;break;case 130:c=N(this,this.K+this.I+O(this));this.A-=this.B.Lb;break;case 131:c=N(this,this.K+this.H+O(this));this.A-=this.B.Kb;break;case 132:c=M(this,this.I+O(this));this.A-=this.B.Sa;break;case 133:c=M(this,this.H+O(this));this.A-=this.B.Sa;break;case 134:c=N(this,this.K+O(this));this.A-=this.B.Sa;break;case 135:c=M(this,this.D+O(this));this.A-=this.B.Sa;break;case 192:c=this.J;break;case 193:c=this.G;break;case 194:c=this.M;break;
case 195:c=this.D;break;case 196:c=C(this);break;case 197:c=this.K;break;case 198:c=this.I;break;case 199:c=this.H;break;default:c=0}var d=this.W>>3&7;switch(d){case 0:b=this.J;break;case 1:b=this.G;break;case 2:b=this.M;break;case 3:b=this.D;break;case 4:b=C(this);break;case 5:b=this.K;break;case 6:b=this.I;break;case 7:b=this.H;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.J=a;break;case 1:this.G=a;break;case 2:this.M=a;break;case 3:this.D=a;break;case 4:A(this,a);break;case 5:this.K=
a;break;case 6:this.I=a;break;case 7:this.H=a}}
function Kd(a){var b,c,d=(this.W=this.na())&199;switch(d){case 0:b=M(this,this.D+this.I);this.C=this.F;break;case 1:b=M(this,this.D+this.H);this.C=this.F;break;case 2:b=N(this,this.K+this.I);this.C=this.F;break;case 3:b=N(this,this.K+this.H);this.C=this.F;break;case 4:b=M(this,this.I);this.C=this.F;break;case 5:b=M(this,this.H);this.C=this.F;break;case 6:b=M(this,O(this));this.C=this.F;break;case 7:b=M(this,this.D);this.C=this.F;break;case 64:b=M(this,this.D+this.I+this.O());this.C=this.F;break;case 65:b=
M(this,this.D+this.H+this.O());this.C=this.F;break;case 66:b=N(this,this.K+this.I+this.O());this.C=this.F;break;case 67:b=N(this,this.K+this.H+this.O());this.C=this.F;break;case 68:b=M(this,this.I+this.O());this.C=this.F;break;case 69:b=M(this,this.H+this.O());this.C=this.F;break;case 70:b=N(this,this.K+this.O());this.C=this.F;break;case 71:b=M(this,this.D+this.O());this.C=this.F;break;case 128:b=M(this,this.D+this.I+O(this));this.C=this.F;break;case 129:b=M(this,this.D+this.H+O(this));this.C=this.F;
break;case 130:b=N(this,this.K+this.I+O(this));this.C=this.F;break;case 131:b=N(this,this.K+this.H+O(this));this.C=this.F;break;case 132:b=M(this,this.I+O(this));this.C=this.F;break;case 133:b=M(this,this.H+O(this));this.C=this.F;break;case 134:b=N(this,this.K+O(this));this.C=this.F;break;case 135:b=M(this,this.D+O(this));this.C=this.F;break;case 192:b=this.J;break;case 193:b=this.G;break;case 194:b=this.M;break;case 195:b=this.D;break;case 196:b=C(this);break;case 197:b=this.K;break;case 198:b=this.I;
break;case 199:b=this.H;break;default:b=0}switch(this.W>>3&7){case 0:c=this.J;break;case 1:c=this.G;break;case 2:c=this.M;break;case 3:c=this.D;break;case 4:c=C(this);break;case 5:c=this.K;break;case 6:c=this.I;break;case 7:c=this.H;break;default:c=0}a=a.call(this,b,c);switch(d){case 0:case 3:Ge(this,a);this.A-=this.B.Ic;break;case 1:case 2:Ge(this,a);this.A-=this.B.Jc;break;case 4:case 5:case 7:Ge(this,a);this.A-=this.B.kc;break;case 6:Ge(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Ge(this,
a);this.A-=this.B.Kb;break;case 65:case 66:case 129:case 130:Ge(this,a);this.A-=this.B.Lb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Ge(this,a);this.A-=this.B.Sa;break;case 192:this.J=a;break;case 193:this.G=a;break;case 194:this.M=a;break;case 195:this.D=a;break;case 196:A(this,a);break;case 197:this.K=a;break;case 198:this.I=a;break;case 199:this.H=a}}
function Ld(a,b){var c,d=(this.W=this.na())&199;switch(d){case 0:c=M(this,this.D+this.I);this.C=this.F;break;case 1:c=M(this,this.D+this.H);this.C=this.F;break;case 2:c=N(this,this.K+this.I);this.C=this.F;break;case 3:c=N(this,this.K+this.H);this.C=this.F;break;case 4:c=M(this,this.I);this.C=this.F;break;case 5:c=M(this,this.H);this.C=this.F;break;case 6:c=M(this,O(this));this.C=this.F;break;case 7:c=M(this,this.D);this.C=this.F;break;case 64:c=M(this,this.D+this.I+this.O());this.C=this.F;break;case 65:c=
M(this,this.D+this.H+this.O());this.C=this.F;break;case 66:c=N(this,this.K+this.I+this.O());this.C=this.F;break;case 67:c=N(this,this.K+this.H+this.O());this.C=this.F;break;case 68:c=M(this,this.I+this.O());this.C=this.F;break;case 69:c=M(this,this.H+this.O());this.C=this.F;break;case 70:c=N(this,this.K+this.O());this.C=this.F;break;case 71:c=M(this,this.D+this.O());this.C=this.F;break;case 128:c=M(this,this.D+this.I+O(this));this.C=this.F;break;case 129:c=M(this,this.D+this.H+O(this));this.C=this.F;
break;case 130:c=N(this,this.K+this.I+O(this));this.C=this.F;break;case 131:c=N(this,this.K+this.H+O(this));this.C=this.F;break;case 132:c=M(this,this.I+O(this));this.C=this.F;break;case 133:c=M(this,this.H+O(this));this.C=this.F;break;case 134:c=N(this,this.K+O(this));this.C=this.F;break;case 135:c=M(this,this.D+O(this));this.C=this.F;break;case 192:c=this.J;break;case 193:c=this.G;break;case 194:c=this.M;break;case 195:c=this.D;break;case 196:c=C(this);break;case 197:c=this.K;break;case 198:c=this.I;
break;case 199:c=this.H}a=a[this.W>>3&7].call(this,c,b.call(this));switch(d){case 0:case 3:Ge(this,a);this.A-=this.B.Ic;break;case 1:case 2:Ge(this,a);this.A-=this.B.Jc;break;case 4:case 5:case 7:Ge(this,a);this.A-=this.B.kc;break;case 6:Ge(this,a);this.A-=this.B.$c;break;case 64:case 67:case 128:case 131:Ge(this,a);this.A-=this.B.Kb;break;case 65:case 66:case 129:case 130:Ge(this,a);this.A-=this.B.Lb;break;case 68:case 69:case 70:case 71:case 132:case 133:case 134:case 135:Ge(this,a);this.A-=this.B.Sa;
break;case 192:this.J=a;break;case 193:this.G=a;break;case 194:this.M=a;break;case 195:this.D=a;break;case 196:A(this,a);break;case 197:this.K=a;break;case 198:this.I=a;break;case 199:this.H=a}}
function Md(a){var b,c;switch((this.W=this.na())&199){case 0:c=I(this,this.J);break;case 1:c=I(this,this.G);break;case 2:c=I(this,this.M);break;case 3:c=I(this,this.D);break;case 4:c=I(this,Mh.call(this,0));break;case 5:c=I(this,O(this));break;case 6:c=I(this,this.I);break;case 7:c=I(this,this.H);break;case 64:c=I(this,this.J+this.O());break;case 65:c=I(this,this.G+this.O());break;case 66:c=I(this,this.M+this.O());break;case 67:c=I(this,this.D+this.O());break;case 68:c=I(this,Mh.call(this,1)+this.O());
break;case 69:c=J(this,this.K+this.O());break;case 70:c=I(this,this.I+this.O());break;case 71:c=I(this,this.H+this.O());break;case 128:c=I(this,this.J+O(this));break;case 129:c=I(this,this.G+O(this));break;case 130:c=I(this,this.M+O(this));break;case 131:c=I(this,this.D+O(this));break;case 132:c=I(this,Mh.call(this,2)+O(this));break;case 133:c=J(this,this.K+O(this));break;case 134:c=I(this,this.I+O(this));break;case 135:c=I(this,this.H+O(this));break;case 192:c=this.J&255;break;case 193:c=this.G&
255;break;case 194:c=this.M&255;break;case 195:c=this.D&255;break;case 196:c=this.J>>8&255;break;case 197:c=this.G>>8&255;break;case 198:c=this.M>>8&255;break;case 199:c=this.D>>8&255;break;default:c=0}var d=this.W>>3&7;switch(d){case 0:b=this.J&255;break;case 1:b=this.G&255;break;case 2:b=this.M&255;break;case 3:b=this.D&255;break;case 4:b=this.J>>8&255;break;case 5:b=this.G>>8&255;break;case 6:b=this.M>>8&255;break;case 7:b=this.D>>8&255;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.J=
this.J&-256|a;break;case 1:this.G=this.G&-256|a;break;case 2:this.M=this.M&-256|a;break;case 3:this.D=this.D&-256|a;break;case 4:this.J=this.J&-65281|a<<8;break;case 5:this.G=this.G&-65281|a<<8;break;case 6:this.M=this.M&-65281|a<<8;break;case 7:this.D=this.D&-65281|a<<8}}
function Nd(a){var b,c,d=(this.W=this.na())&199;switch(d){case 0:b=I(this,this.J);this.C=this.F;break;case 1:b=I(this,this.G);this.C=this.F;break;case 2:b=I(this,this.M);this.C=this.F;break;case 3:b=I(this,this.D);this.C=this.F;break;case 4:b=I(this,Mh.call(this,0));this.C=this.F;break;case 5:b=I(this,O(this));this.C=this.F;break;case 6:b=I(this,this.I);this.C=this.F;break;case 7:b=I(this,this.H);this.C=this.F;break;case 64:b=I(this,this.J+this.O());this.C=this.F;break;case 65:b=I(this,this.G+this.O());
this.C=this.F;break;case 66:b=I(this,this.M+this.O());this.C=this.F;break;case 67:b=I(this,this.D+this.O());this.C=this.F;break;case 68:b=I(this,Mh.call(this,1)+this.O());this.C=this.F;break;case 69:b=J(this,this.K+this.O());this.C=this.F;break;case 70:b=I(this,this.I+this.O());this.C=this.F;break;case 71:b=I(this,this.H+this.O());this.C=this.F;break;case 128:b=I(this,this.J+O(this));this.C=this.F;break;case 129:b=I(this,this.G+O(this));this.C=this.F;break;case 130:b=I(this,this.M+O(this));this.C=
this.F;break;case 131:b=I(this,this.D+O(this));this.C=this.F;break;case 132:b=I(this,Mh.call(this,2)+O(this));this.C=this.F;break;case 133:b=J(this,this.K+O(this));this.C=this.F;break;case 134:b=I(this,this.I+O(this));this.C=this.F;break;case 135:b=I(this,this.H+O(this));this.C=this.F;break;case 192:b=this.J&255;break;case 193:b=this.G&255;break;case 194:b=this.M&255;break;case 195:b=this.D&255;break;case 196:b=this.J>>8&255;break;case 197:b=this.G>>8&255;break;case 198:b=this.M>>8&255;break;case 199:b=
this.D>>8&255;break;default:b=0}switch(this.W>>3&7){case 0:c=this.J&255;break;case 1:c=this.G&255;break;case 2:c=this.M&255;break;case 3:c=this.D&255;break;case 4:c=this.J>>8&255;break;case 5:c=this.G>>8&255;break;case 6:c=this.M>>8&255;break;case 7:c=this.D>>8&255;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.J=this.J&-256|a;break;case 193:this.G=this.G&-256|a;break;case 194:this.M=this.M&-256|a;break;case 195:this.D=this.D&-256|a;break;case 196:this.J=this.J&-65281|a<<8;break;case 197:this.G=
this.G&-65281|a<<8;break;case 198:this.M=this.M&-65281|a<<8;break;case 199:this.D=this.D&-65281|a<<8;break;default:Ee(this,a)}}
function Od(a,b){var c,d=(this.W=this.na())&199;switch(d){case 0:c=I(this,this.J);this.C=this.F;break;case 1:c=I(this,this.G);this.C=this.F;break;case 2:c=I(this,this.M);this.C=this.F;break;case 3:c=I(this,this.D);this.C=this.F;break;case 4:c=I(this,Mh.call(this,0));this.C=this.F;break;case 5:c=I(this,O(this));this.C=this.F;break;case 6:c=I(this,this.I);this.C=this.F;break;case 7:c=I(this,this.H);this.C=this.F;break;case 64:c=I(this,this.J+this.O());this.C=this.F;break;case 65:c=I(this,this.G+this.O());
this.C=this.F;break;case 66:c=I(this,this.M+this.O());this.C=this.F;break;case 67:c=I(this,this.D+this.O());this.C=this.F;break;case 68:c=I(this,Mh.call(this,1)+this.O());this.C=this.F;break;case 69:c=J(this,this.K+this.O());this.C=this.F;break;case 70:c=I(this,this.I+this.O());this.C=this.F;break;case 71:c=I(this,this.H+this.O());this.C=this.F;break;case 128:c=I(this,this.J+O(this));this.C=this.F;break;case 129:c=I(this,this.G+O(this));this.C=this.F;break;case 130:c=I(this,this.M+O(this));this.C=
this.F;break;case 131:c=I(this,this.D+O(this));this.C=this.F;break;case 132:c=I(this,Mh.call(this,2)+O(this));this.C=this.F;break;case 133:c=J(this,this.K+O(this));this.C=this.F;break;case 134:c=I(this,this.I+O(this));this.C=this.F;break;case 135:c=I(this,this.H+O(this));this.C=this.F;break;case 192:c=this.J&255;break;case 193:c=this.G&255;break;case 194:c=this.M&255;break;case 195:c=this.D&255;break;case 196:c=this.J>>8&255;break;case 197:c=this.G>>8&255;break;case 198:c=this.M>>8&255;break;case 199:c=
this.D>>8&255;break;default:c=0}a=a[this.W>>3&7].call(this,c,b.call(this));switch(d){case 192:this.J=this.J&-256|a;break;case 193:this.G=this.G&-256|a;break;case 194:this.M=this.M&-256|a;break;case 195:this.D=this.D&-256|a;break;case 196:this.J=this.J&-65281|a<<8;break;case 197:this.G=this.G&-65281|a<<8;break;case 198:this.M=this.M&-65281|a<<8;break;case 199:this.D=this.D&-65281|a<<8;break;default:Ee(this,a)}}
function Pd(a){var b,c;switch((this.W=this.na())&199){case 0:c=K(this,this.J);break;case 1:c=K(this,this.G);break;case 2:c=K(this,this.M);break;case 3:c=K(this,this.D);break;case 4:c=K(this,Mh.call(this,0));break;case 5:c=K(this,O(this));break;case 6:c=K(this,this.I);break;case 7:c=K(this,this.H);break;case 64:c=K(this,this.J+this.O());break;case 65:c=K(this,this.G+this.O());break;case 66:c=K(this,this.M+this.O());break;case 67:c=K(this,this.D+this.O());break;case 68:c=K(this,Mh.call(this,1)+this.O());
break;case 69:c=L(this,this.K+this.O());break;case 70:c=K(this,this.I+this.O());break;case 71:c=K(this,this.H+this.O());break;case 128:c=K(this,this.J+O(this));break;case 129:c=K(this,this.G+O(this));break;case 130:c=K(this,this.M+O(this));break;case 131:c=K(this,this.D+O(this));break;case 132:c=K(this,Mh.call(this,2)+O(this));break;case 133:c=L(this,this.K+O(this));break;case 134:c=K(this,this.I+O(this));break;case 135:c=K(this,this.H+O(this));break;case 192:c=this.J&65535;break;case 193:c=this.G&
65535;break;case 194:c=this.M&65535;break;case 195:c=this.D&65535;break;case 196:c=C(this)&65535;break;case 197:c=this.K&65535;break;case 198:c=this.I&65535;break;case 199:c=this.H&65535;break;default:c=0}var d=this.W>>3&7;switch(d){case 0:b=this.J&65535;break;case 1:b=this.G&65535;break;case 2:b=this.M&65535;break;case 3:b=this.D&65535;break;case 4:b=C(this)&65535;break;case 5:b=this.K&65535;break;case 6:b=this.I&65535;break;case 7:b=this.H&65535;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.J=
this.J&-65536|a;break;case 1:this.G=this.G&-65536|a;break;case 2:this.M=this.M&-65536|a;break;case 3:this.D=this.D&-65536|a;break;case 4:A(this,C(this)&-65536|a);break;case 5:this.K=this.K&-65536|a;break;case 6:this.I=this.I&-65536|a;break;case 7:this.H=this.H&-65536|a}}
function Qd(a){var b,c,d=(this.W=this.na())&199;switch(d){case 0:b=K(this,this.J);this.C=this.F;break;case 1:b=K(this,this.G);this.C=this.F;break;case 2:b=K(this,this.M);this.C=this.F;break;case 3:b=K(this,this.D);this.C=this.F;break;case 4:b=K(this,Mh.call(this,0));this.C=this.F;break;case 5:b=K(this,O(this));this.C=this.F;break;case 6:b=K(this,this.I);this.C=this.F;break;case 7:b=K(this,this.H);this.C=this.F;break;case 64:b=K(this,this.J+this.O());this.C=this.F;break;case 65:b=K(this,this.G+this.O());
this.C=this.F;break;case 66:b=K(this,this.M+this.O());this.C=this.F;break;case 67:b=K(this,this.D+this.O());this.C=this.F;break;case 68:b=K(this,Mh.call(this,1)+this.O());this.C=this.F;break;case 69:b=L(this,this.K+this.O());this.C=this.F;break;case 70:b=K(this,this.I+this.O());this.C=this.F;break;case 71:b=K(this,this.H+this.O());this.C=this.F;break;case 128:b=K(this,this.J+O(this));this.C=this.F;break;case 129:b=K(this,this.G+O(this));this.C=this.F;break;case 130:b=K(this,this.M+O(this));this.C=
this.F;break;case 131:b=K(this,this.D+O(this));this.C=this.F;break;case 132:b=K(this,Mh.call(this,2)+O(this));this.C=this.F;break;case 133:b=L(this,this.K+O(this));this.C=this.F;break;case 134:b=K(this,this.I+O(this));this.C=this.F;break;case 135:b=K(this,this.H+O(this));this.C=this.F;break;case 192:b=this.J&65535;break;case 193:b=this.G&65535;break;case 194:b=this.M&65535;break;case 195:b=this.D&65535;break;case 196:b=C(this)&65535;break;case 197:b=this.K&65535;break;case 198:b=this.I&65535;break;
case 199:b=this.H&65535;break;default:b=0}switch(this.W>>3&7){case 0:c=this.J&65535;break;case 1:c=this.G&65535;break;case 2:c=this.M&65535;break;case 3:c=this.D&65535;break;case 4:c=C(this)&65535;break;case 5:c=this.K&65535;break;case 6:c=this.I&65535;break;case 7:c=this.H&65535;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.J=this.J&-65536|a;break;case 193:this.G=this.G&-65536|a;break;case 194:this.M=this.M&-65536|a;break;case 195:this.D=this.D&-65536|a;break;case 196:A(this,C(this)&
-65536|a);break;case 197:this.K=this.K&-65536|a;break;case 198:this.I=this.I&-65536|a;break;case 199:this.H=this.H&-65536|a;break;default:Fe(this,a)}}
function Rd(a,b){var c,d=(this.W=this.na())&199;switch(d){case 0:c=K(this,this.J);this.C=this.F;break;case 1:c=K(this,this.G);this.C=this.F;break;case 2:c=K(this,this.M);this.C=this.F;break;case 3:c=K(this,this.D);this.C=this.F;break;case 4:c=K(this,Mh.call(this,0));this.C=this.F;break;case 5:c=K(this,O(this));this.C=this.F;break;case 6:c=K(this,this.I);this.C=this.F;break;case 7:c=K(this,this.H);this.C=this.F;break;case 64:c=K(this,this.J+this.O());this.C=this.F;break;case 65:c=K(this,this.G+this.O());
this.C=this.F;break;case 66:c=K(this,this.M+this.O());this.C=this.F;break;case 67:c=K(this,this.D+this.O());this.C=this.F;break;case 68:c=K(this,Mh.call(this,1)+this.O());this.C=this.F;break;case 69:c=L(this,this.K+this.O());this.C=this.F;break;case 70:c=K(this,this.I+this.O());this.C=this.F;break;case 71:c=K(this,this.H+this.O());this.C=this.F;break;case 128:c=K(this,this.J+O(this));this.C=this.F;break;case 129:c=K(this,this.G+O(this));this.C=this.F;break;case 130:c=K(this,this.M+O(this));this.C=
this.F;break;case 131:c=K(this,this.D+O(this));this.C=this.F;break;case 132:c=K(this,Mh.call(this,2)+O(this));this.C=this.F;break;case 133:c=L(this,this.K+O(this));this.C=this.F;break;case 134:c=K(this,this.I+O(this));this.C=this.F;break;case 135:c=K(this,this.H+O(this));this.C=this.F;break;case 192:c=this.J&65535;break;case 193:c=this.G&65535;break;case 194:c=this.M&65535;break;case 195:c=this.D&65535;break;case 196:c=C(this)&65535;break;case 197:c=this.K&65535;break;case 198:c=this.I&65535;break;
case 199:c=this.H&65535;break;default:c=0}a=a[this.W>>3&7].call(this,c,b.call(this));switch(d){case 192:this.J=this.J&-65536|a;break;case 193:this.G=this.G&-65536|a;break;case 194:this.M=this.M&-65536|a;break;case 195:this.D=this.D&-65536|a;break;case 196:A(this,C(this)&-65536|a);break;case 197:this.K=this.K&-65536|a;break;case 198:this.I=this.I&-65536|a;break;case 199:this.H=this.H&-65536|a;break;default:Fe(this,a)}}
function Sd(a){var b,c;switch((this.W=this.na())&199){case 0:c=M(this,this.J);break;case 1:c=M(this,this.G);break;case 2:c=M(this,this.M);break;case 3:c=M(this,this.D);break;case 4:c=M(this,Mh.call(this,0));break;case 5:c=M(this,O(this));break;case 6:c=M(this,this.I);break;case 7:c=M(this,this.H);break;case 64:c=M(this,this.J+this.O());break;case 65:c=M(this,this.G+this.O());break;case 66:c=M(this,this.M+this.O());break;case 67:c=M(this,this.D+this.O());break;case 68:c=M(this,Mh.call(this,1)+this.O());
break;case 69:c=N(this,this.K+this.O());break;case 70:c=M(this,this.I+this.O());break;case 71:c=M(this,this.H+this.O());break;case 128:c=M(this,this.J+O(this));break;case 129:c=M(this,this.G+O(this));break;case 130:c=M(this,this.M+O(this));break;case 131:c=M(this,this.D+O(this));break;case 132:c=M(this,Mh.call(this,2)+O(this));break;case 133:c=N(this,this.K+O(this));break;case 134:c=M(this,this.I+O(this));break;case 135:c=M(this,this.H+O(this));break;case 192:c=this.J;break;case 193:c=this.G;break;
case 194:c=this.M;break;case 195:c=this.D;break;case 196:c=C(this);break;case 197:c=this.K;break;case 198:c=this.I;break;case 199:c=this.H;break;default:c=0}var d=this.W>>3&7;switch(d){case 0:b=this.J;break;case 1:b=this.G;break;case 2:b=this.M;break;case 3:b=this.D;break;case 4:b=C(this);break;case 5:b=this.K;break;case 6:b=this.I;break;case 7:b=this.H;break;default:b=0}a=a.call(this,b,c);switch(d){case 0:this.J=a;break;case 1:this.G=a;break;case 2:this.M=a;break;case 3:this.D=a;break;case 4:A(this,
a);break;case 5:this.K=a;break;case 6:this.I=a;break;case 7:this.H=a}}
function Td(a){var b,c,d=(this.W=this.na())&199;switch(d){case 0:b=M(this,this.J);this.C=this.F;break;case 1:b=M(this,this.G);this.C=this.F;break;case 2:b=M(this,this.M);this.C=this.F;break;case 3:b=M(this,this.D);this.C=this.F;break;case 4:b=M(this,Mh.call(this,0));this.C=this.F;break;case 5:b=M(this,O(this));this.C=this.F;break;case 6:b=M(this,this.I);this.C=this.F;break;case 7:b=M(this,this.H);this.C=this.F;break;case 64:b=M(this,this.J+this.O());this.C=this.F;break;case 65:b=M(this,this.G+this.O());
this.C=this.F;break;case 66:b=M(this,this.M+this.O());this.C=this.F;break;case 67:b=M(this,this.D+this.O());this.C=this.F;break;case 68:b=M(this,Mh.call(this,1)+this.O());this.C=this.F;break;case 69:b=N(this,this.K+this.O());this.C=this.F;break;case 70:b=M(this,this.I+this.O());this.C=this.F;break;case 71:b=M(this,this.H+this.O());this.C=this.F;break;case 128:b=M(this,this.J+O(this));this.C=this.F;break;case 129:b=M(this,this.G+O(this));this.C=this.F;break;case 130:b=M(this,this.M+O(this));this.C=
this.F;break;case 131:b=M(this,this.D+O(this));this.C=this.F;break;case 132:b=M(this,Mh.call(this,2)+O(this));this.C=this.F;break;case 133:b=N(this,this.K+O(this));this.C=this.F;break;case 134:b=M(this,this.I+O(this));this.C=this.F;break;case 135:b=M(this,this.H+O(this));this.C=this.F;break;case 192:b=this.J;break;case 193:b=this.G;break;case 194:b=this.M;break;case 195:b=this.D;break;case 196:b=C(this);break;case 197:b=this.K;break;case 198:b=this.I;break;case 199:b=this.H;break;default:b=0}switch(this.W>>
3&7){case 0:c=this.J;break;case 1:c=this.G;break;case 2:c=this.M;break;case 3:c=this.D;break;case 4:c=C(this);break;case 5:c=this.K;break;case 6:c=this.I;break;case 7:c=this.H;break;default:c=0}a=a.call(this,b,c);switch(d){case 192:this.J=a;break;case 193:this.G=a;break;case 194:this.M=a;break;case 195:this.D=a;break;case 196:A(this,a);break;case 197:this.K=a;break;case 198:this.I=a;break;case 199:this.H=a;break;default:Ge(this,a)}}
function Ud(a,b){var c,d=(this.W=this.na())&199;switch(d){case 0:c=M(this,this.J);this.C=this.F;break;case 1:c=M(this,this.G);this.C=this.F;break;case 2:c=M(this,this.M);this.C=this.F;break;case 3:c=M(this,this.D);this.C=this.F;break;case 4:c=M(this,Mh.call(this,0));this.C=this.F;break;case 5:c=M(this,O(this));this.C=this.F;break;case 6:c=M(this,this.I);this.C=this.F;break;case 7:c=M(this,this.H);this.C=this.F;break;case 64:c=M(this,this.J+this.O());this.C=this.F;break;case 65:c=M(this,this.G+this.O());
this.C=this.F;break;case 66:c=M(this,this.M+this.O());this.C=this.F;break;case 67:c=M(this,this.D+this.O());this.C=this.F;break;case 68:c=M(this,Mh.call(this,1)+this.O());this.C=this.F;break;case 69:c=N(this,this.K+this.O());this.C=this.F;break;case 70:c=M(this,this.I+this.O());this.C=this.F;break;case 71:c=M(this,this.H+this.O());this.C=this.F;break;case 128:c=M(this,this.J+O(this));this.C=this.F;break;case 129:c=M(this,this.G+O(this));this.C=this.F;break;case 130:c=M(this,this.M+O(this));this.C=
this.F;break;case 131:c=M(this,this.D+O(this));this.C=this.F;break;case 132:c=M(this,Mh.call(this,2)+O(this));this.C=this.F;break;case 133:c=N(this,this.K+O(this));this.C=this.F;break;case 134:c=M(this,this.I+O(this));this.C=this.F;break;case 135:c=M(this,this.H+O(this));this.C=this.F;break;case 192:c=this.J;break;case 193:c=this.G;break;case 194:c=this.M;break;case 195:c=this.D;break;case 196:c=C(this);break;case 197:c=this.K;break;case 198:c=this.I;break;case 199:c=this.H;break;default:c=0}a=a[this.W>>
3&7].call(this,c,b.call(this));switch(d){case 192:this.J=a;break;case 193:this.G=a;break;case 194:this.M=a;break;case 195:this.D=a;break;case 196:A(this,a);break;case 197:this.K=a;break;case 198:this.I=a;break;case 199:this.H=a;break;default:Ge(this,a)}}
function Mh(a){var b=this.na(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.J;break;case 1:d=this.G;break;case 2:d=this.M;break;case 3:d=this.D;break;case 4:d=0;break;case 5:d=this.K;break;case 6:d=this.I;break;case 7:d=this.H}switch(b&7){case 0:e=this.J;break;case 1:e=this.G;break;case 2:e=this.M;break;case 3:e=this.D;break;case 4:e=C(this);this.va=this.rb;break;case 5:a?(e=this.K,this.va=this.rb):e=O(this);break;case 6:e=this.I;break;case 7:e=this.H}return(d<<c)+e|0}
function md(){this.Yc[this.na()].call(this)}function pd(){D(this,C(this)&this.N);this.A-=this.B.Ac}function Wc(){this.ka=this.ra;var a=C(this)&this.N;D(this,this.J&this.N);D(this,this.G&this.N);D(this,this.M&this.N);D(this,this.D&this.N);D(this,a);D(this,this.K&this.N);D(this,this.I&this.N);D(this,this.H&this.N);this.A-=this.B.uj;this.ka=-1}
function Xc(){this.ka=this.ra;this.H=this.H&~this.N|x(this);this.I=this.I&~this.N|x(this);this.K=this.K&~this.N|x(this);A(this,C(this)+this.U);this.D=this.D&~this.N|x(this);this.M=this.M&~this.N|x(this);this.G=this.G&~this.N|x(this);this.J=this.J&~this.N|x(this);this.A-=this.B.sj;this.ka=-1}function Yc(){this.Z.call(this,bg)}function qd(){!(this.Pa&1)||this.X&131072?v.call(this,6):this.qa.call(this,ag)}function rd(){this.L|=20;this.va=this.rb=this.Ta;this.A-=this.B.Pc}
function sd(){this.L|=20;this.va=this.rb=this.Xa;this.A-=this.B.Pc}function td(){this.L|=1024;this.wa&1024||(this.U^=6,this.N^=-65536,Vd(this));this.A-=this.B.Pc}function ud(){this.L|=2048;this.wa&2048||(this.Qc^=6,this.ta^=-65536,Cd(this));this.A-=this.B.Pc}function Zc(){D(this,this.Aa());this.A-=this.B.Ac}function $c(){this.Z.call(this,sg)}function ad(){D(this,this.O());this.A-=this.B.Ac}function bd(){this.Z.call(this,qg)}
function cd(){var a=1,b=0,c=this.ta,d=5;this.wa&192&&(a=this.G&c,b=1,this.wa&256&&(d=4));if(a--){var e=this.M&65535;Ae(this,e,1)&&(e=Qb(this.ia,e,1,this.Y-b-1),this.Mc(this.pa.Rb(this.H&c,1),e),this.H=this.H&~c|this.H+(this.X&1024?-1:1)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(fe(this),this.L|=256))}}
function dd(){var a=1,b=0,c=this.ta,d=5;this.wa&192&&(a=this.G&c,b=1,this.wa&256&&(d=4));if(a--){var e=this.M&65535;Ae(this,e,this.U)&&(e=Qb(this.ia,e,this.U,this.Y-b-1),this.Xb(this.pa.Rb(this.H&c,this.U),e),this.H=this.H&~c|this.H+(this.X&1024?-this.U:this.U)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(fe(this),this.L|=256))}}
function ed(){var a=1,b=0,c=this.ta,d=5;this.wa&192&&(a=this.G&c,b=1,this.wa&256&&(d=4));if(a--){var e=this.M&65535;if(Ae(this,e,1)){var f=this.Jb(this.xa.Qb(this.I&c,1));Sb(this.ia,e,1,f,this.Y-b-1);this.I=this.I&~c|this.I+(this.X&1024?-1:1)&c;this.G=this.G&~c|this.G-b&c;this.A-=d;a&&(fe(this),this.L|=256)}}}
function fd(){var a=1,b=0,c=this.ta,d=5;this.wa&192&&(a=this.G&c,b=1,this.wa&256&&(d=4));if(a--){var e=Hc(this,this.xa,this.I&c),f=this.M&65535;Ae(this,f,this.U)&&(Sb(this.ia,f,this.U,e,this.Y-b-1),this.I=this.I&~c|this.I+(this.X&1024?-this.U:this.U)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(fe(this),this.L|=256))}}function Nh(){var a=this.O();me(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na}
function Oh(){var a=this.O();me(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)}function Ph(){var a=this.O();he(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na}function Qh(){var a=this.O();he(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)}function Rh(){var a=this.O();ke(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na}function Sh(){var a=this.O();ke(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)}
function Th(){var a=this.O();he(this)||ke(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na}function Uh(){var a=this.O();he(this)||ke(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)}function Vh(){var a=this.O();le(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na}function Wh(){var a=this.O();le(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)}function Xh(){var a=this.O();ie(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na}
function Yh(){var a=this.O();ie(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)}function Zh(){var a=this.O();!le(this)!=!me(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na}function $h(){var a=this.O();!le(this)==!me(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na}function ai(){var a=this.O();ke(this)||!le(this)!=!me(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na}
function bi(){var a=this.O();ke(this)||!le(this)!=!me(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)}function ci(){this.yc.call(this,di,this.na);this.A-=-1===this.C?1:this.B.Qf}function ei(){this.L|=1;this.Gb.call(this,Eg)}function fi(){this.L|=1;this.qa.call(this,Eg)}function gi(){this.Bb.call(this,Eg)}function hi(){this.Z.call(this,Eg)}function gd(){this.yc.call(this,ii,Eh)}function hd(){this.Ja.call(this,2==this.U?ji:ki,Eh)}
function li(){var a=He(this),b=x(this);G(this,b);a&&A(this,C(this)+a);this.A-=this.B.zj}function mi(){var a=x(this);G(this,a);this.A-=this.B.wj}function id(){this.ka=this.ra;var a=He(this),b=this.na()&31;this.A-=11;D(this,this.K);var c=C(this)&this.N;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.K=this.K&~this.N|this.K-this.U&this.N,D(this,Hc(this,this.P,this.K&this.N));D(this,c)}this.K=this.K&~this.N|c;A(this,C(this)&~this.P.ta|C(this)-a&this.P.ta);this.ka=-1}
function jd(){this.ka=this.ra;A(this,C(this)&~this.P.ta|this.K&this.P.ta);this.K=this.K&~this.N|x(this)&this.N;this.A-=5;this.ka=-1}function ni(){Jh.call(this,He(this));this.A-=this.B.yj}function oi(){Jh.call(this,0);this.A-=this.B.xj}function pi(a){this.Uh=a;this.Z.call(this,og)}function qi(){this.L|=36;this.A-=this.B.Pc}function kd(){od.call(this)}function Vc(){v.call(this,6)}
function od(){G(this,this.Ed-this.Ca.ya);bb(this,"Undefined opcode "+fa(this.Jb(this.Y),2,!0)+" at "+fa(this.Y,8,!0));oc(this)}
var Rc=[function(){this.Gb.call(this,Xf)},function(){this.qa.call(this,Yf)},function(){this.Bb.call(this,Xf)},function(){this.Z.call(this,Yf)},function(){this.J=this.J&-256|Xf.call(this,this.J&255,this.na());this.A--},function(){this.J=this.J&~this.N|Yf.call(this,this.J&this.N,this.Aa());this.A--},function(){Ic(this,this.pa.ja,this.U,2);this.A-=this.B.Wd},function(){this.ka=this.ra;Kc(this,x(this));this.A-=this.B.ec;this.ka=-1},function(){this.Gb.call(this,Jg)},function(){this.qa.call(this,Kg)},function(){this.Bb.call(this,
Jg)},function(){this.Z.call(this,Kg)},function(){this.J=this.J&-256|Jg.call(this,this.J&255,this.na());this.A--},function(){this.J=this.J&~this.N|Kg.call(this,this.J&this.N,this.Aa());this.A--},function(){Ic(this,this.Ca.ja,this.U,2);this.A-=this.B.Wd},function(){ce(this,x(this));this.A-=this.B.ec},function(){this.Gb.call(this,Vf)},function(){this.qa.call(this,Wf)},function(){this.Bb.call(this,Vf)},function(){this.Z.call(this,Wf)},function(){this.J=this.J&-256|Vf.call(this,this.J&255,this.na());this.A--},
function(){this.J=this.J&~this.N|Wf.call(this,this.J&this.N,this.Aa());this.A--},function(){Ic(this,this.P.ja,this.U,2);this.A-=this.B.Wd},function(){this.ka=this.ra;Dc(this,x(this));this.A-=this.B.ec;this.ka=-1},function(){this.Gb.call(this,Lg)},function(){this.qa.call(this,Mg)},function(){this.Bb.call(this,Lg)},function(){this.Z.call(this,Mg)},function(){this.J=this.J&-256|Lg.call(this,this.J&255,this.na());this.A--},function(){this.J=this.J&~this.N|Mg.call(this,this.J&this.N,this.Aa());this.A--},
function(){Ic(this,this.xa.ja,this.U,2);this.A-=this.B.Wd},function(){this.ka=this.ra;Jc(this,x(this));this.A-=this.B.ec;this.ka=-1},function(){this.Gb.call(this,Zf)},function(){this.qa.call(this,$f)},function(){this.Bb.call(this,Zf)},function(){this.Z.call(this,$f)},function(){this.J=this.J&-256|Zf.call(this,this.J&255,this.na());this.A--},function(){this.J=this.J&~this.N|$f.call(this,this.J&this.N,this.Aa());this.A--},function(){this.L|=20;this.va=this.rb=this.pa;this.A-=this.B.Pc},function(){var a=
this.J&255,b=je(this),c=he(this);9<(a&15)||b?(a+=6,b=16):b=0;159<a||c?(a+=96,c=1):c=0;a&=255;this.J=this.J&-256|a;H(this,a,128);c?ne(this):oe(this);b?xe(this):ve(this);this.A-=this.B.Vd},function(){this.Gb.call(this,nh)},function(){this.qa.call(this,oh)},function(){this.Bb.call(this,nh)},function(){this.Z.call(this,oh)},function(){this.J=this.J&-256|nh.call(this,this.J&255,this.na());this.A--},function(){this.J=this.J&~this.N|oh.call(this,this.J&this.N,this.Aa());this.A--},function(){this.L|=20;this.va=
this.rb=this.Ca;this.A-=this.B.Pc},function(){var a=this.J&255,b=je(this),c=he(this);9<(a&15)||b?(a-=6,b=16):b=0;159<a||c?(a-=96,c=1):c=0;a&=255;this.J=this.J&-256|a;H(this,a,128);c?ne(this):oe(this);b?xe(this):ve(this);this.A-=this.B.Vd},function(){this.Gb.call(this,vh)},function(){this.qa.call(this,wh)},function(){this.Bb.call(this,vh)},function(){this.Z.call(this,wh)},function(){this.J=this.J&-256|vh.call(this,this.J&255,this.na());this.A--},function(){this.J=this.J&~this.N|wh.call(this,this.J&
this.N,this.Aa());this.A--},function(){this.L|=20;this.va=this.rb=this.P;this.A-=this.B.Pc},function(){var a,b,c=this.J&255,d=this.J>>8&255;9<(c&15)||je(this)?(c+=6,80286<=this.ca&&255<c&&d++,d++,a=b=1):a=b=0;this.J=this.J&-65536|(d<<8|c)&65295;a?ne(this):oe(this);b?xe(this):ve(this);this.A-=this.B.Vd},function(){this.Gb.call(this,mg)},function(){this.qa.call(this,ng)},function(){this.Bb.call(this,mg)},function(){this.Z.call(this,ng)},function(){mg.call(this,this.J&255,this.na());this.A--},function(){ng.call(this,
this.J&this.N,this.Aa());this.A--},function(){this.L|=20;this.va=this.rb=this.xa;this.A-=this.B.Pc},function(){var a,b,c=this.J&255,d=this.J>>8&255;9<(c&15)||je(this)?(c=c-6&15,d=d-1&255,a=b=1):a=b=0;this.J=this.J&-65536|d<<8|c;a?ne(this):oe(this);b?xe(this):ve(this);this.A-=this.B.Vd},function(){this.J=Ah.call(this,this.J)},function(){this.G=Ah.call(this,this.G)},function(){this.M=Ah.call(this,this.M)},function(){this.D=Ah.call(this,this.D)},function(){A(this,Ah.call(this,C(this)))},function(){this.K=
Ah.call(this,this.K)},function(){this.I=Ah.call(this,this.I)},function(){this.H=Ah.call(this,this.H)},function(){this.J=yh.call(this,this.J)},function(){this.G=yh.call(this,this.G)},function(){this.M=yh.call(this,this.M)},function(){this.D=yh.call(this,this.D)},function(){A(this,yh.call(this,C(this)))},function(){this.K=yh.call(this,this.K)},function(){this.I=yh.call(this,this.I)},function(){this.H=yh.call(this,this.H)},function(){D(this,this.J&this.N);this.A-=this.B.Ac},function(){D(this,this.G&
this.N);this.A-=this.B.Ac},function(){D(this,this.M&this.N);this.A-=this.B.Ac},function(){D(this,this.D&this.N);this.A-=this.B.Ac},function(){D(this,C(this)-2&65535);this.A-=this.B.Ac},function(){D(this,this.K&this.N);this.A-=this.B.Ac},function(){D(this,this.I&this.N);this.A-=this.B.Ac},function(){D(this,this.H&this.N);this.A-=this.B.Ac},function(){this.J=this.J&~this.N|x(this);this.A-=this.B.ec},function(){this.G=this.G&~this.N|x(this);this.A-=this.B.ec},function(){this.M=this.M&~this.N|x(this);
this.A-=this.B.ec},function(){this.D=this.D&~this.N|x(this);this.A-=this.B.ec},function(){A(this,C(this)&~this.N|x(this));this.A-=this.B.ec},function(){this.K=this.K&~this.N|x(this);this.A-=this.B.ec},function(){this.I=this.I&~this.N|x(this);this.A-=this.B.ec},function(){this.H=this.H&~this.N|x(this);this.A-=this.B.ec},Nh,Oh,Ph,Qh,Rh,Sh,Th,Uh,Vh,Wh,Xh,Yh,Zh,$h,ai,bi,Nh,Oh,Ph,Qh,Rh,Sh,Th,Uh,Vh,Wh,Xh,Yh,Zh,$h,ai,bi,ci,function(){this.Ja.call(this,ri,this.Aa);this.A-=-1===this.C?1:this.B.Qf},ci,function(){this.Ja.call(this,
ri,this.O);this.A-=-1===this.C?1:this.B.Qf},function(){this.Gb.call(this,ph)},function(){this.qa.call(this,qh)},function(){this.Bb.call(this,th)},function(){this.Z.call(this,uh)},ei,fi,gi,hi,function(){this.L|=1;this.qa.call(this,Ig)},function(){this.L|=1;this.va=this.rb=this.dg;this.Z.call(this,yg)},function(){var a;this.Z.call(this,Hg);switch(this.W>>3&7){case 0:a=this.J;this.J=this.oa;Kc(this,a);break;case 1:a=this.G;this.G=this.oa;ce(this,a);break;case 2:a=this.M;this.M=this.oa;Dc(this,a);break;
case 3:a=this.D;this.D=this.oa;Jc(this,a);break;case 4:a=C(this);A(this,this.oa);80386<=this.ca?this.Ta.load(a):Kc(this,a);break;case 5:a=this.K;this.K=this.oa;80386<=this.ca?this.Xa.load(a):ce(this,a);break;case 6:a=this.I;this.I=this.oa;Dc(this,a);break;case 7:a=this.H,this.H=this.oa,Jc(this,a)}},function(){this.L|=1;this.ka=this.ra;this.oa=x(this);this.Ja.call(this,si,Gh);this.ka=-1},function(){this.A-=3},function(){var a=this.J;this.J=this.J&~this.N|this.G&this.N;this.G=this.G&~this.N|a&this.N;
this.A-=3},function(){var a=this.J;this.J=this.J&~this.N|this.M&this.N;this.M=this.M&~this.N|a&this.N;this.A-=3},function(){var a=this.J;this.J=this.J&~this.N|this.D&this.N;this.D=this.D&~this.N|a&this.N;this.A-=3},function(){var a=this.J,b=C(this);this.J=this.J&~this.N|b&this.N;A(this,b&~this.N|a&this.N);this.A-=3},function(){var a=this.J;this.J=this.J&~this.N|this.K&this.N;this.K=this.K&~this.N|a&this.N;this.A-=3},function(){var a=this.J;this.J=this.J&~this.N|this.I&this.N;this.I=this.I&~this.N|
a&this.N;this.A-=3},function(){var a=this.J;this.J=this.J&~this.N|this.H&this.N;this.H=this.H&~this.N|a&this.N;this.A-=3},function(){this.J=2==this.U?this.J&-65536|this.J<<24>>24&65535:this.J<<16>>16;this.A-=2},function(){this.M=2==this.U?this.M&-65536|(this.J&32768?65535:0):this.J&-2147483648?-1:0;this.A-=this.B.Gi},function(){Hh.call(this,this.Aa(),He(this));this.A-=this.B.Ji},function(){this.A-=3},function(){var a=Lc(this);a&131072&&3>this.Cb?v.call(this,13,0):(D(this,a&-196609),this.A-=this.B.Ac)},
function(){if(this.X&131072&&3>this.Cb)v.call(this,13,0);else{var a=x(this),a=a&65535|this.X&-65536;Mc(this,a);this.A-=this.B.ec}},function(){var a=this.J>>8&255;a&1?ne(this):oe(this);a&4?(this.resultType&=-3,this.X|=4):(this.resultType&=-3,this.X&=-5);a&16?xe(this):ve(this);a&64?ye(this):we(this);a&128?(this.resultType&=-17,this.X|=128):(this.resultType&=-17,this.X&=-129);this.A-=this.B.Mb},function(){this.J=this.J&-65281|(Lc(this)&213)<<8;this.A-=this.B.Mb},function(){var a=this.J&-256,b;b=O(this);
b=this.Jb(this.va.Qb(b,1));this.J=a|b;this.A-=this.B.Qg},function(){this.J=this.J&~this.N|Hc(this,this.va,O(this));this.A-=this.B.Qg},function(){var a=O(this),b=this.J;this.Mc(this.va.Rb(a,1),b);this.A-=this.B.Rg},function(){var a=O(this),b=this.J;this.Xb(this.va.Rb(a,this.U),b);this.A-=this.B.Rg},function(){var a=1,b=0,c=this.ta,d=this.B.Sg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Ug,this.wa&256||(this.A-=this.B.Tg));if(a--){var e=this.Jb(this.va.Qb(this.I&c,1));this.Mc(this.pa.Rb(this.H&c,1),e);e=
this.X&1024?-1:1;this.I=this.I&~c|this.I+e&c;this.H=this.H&~c|this.H+e&c;this.A-=d;this.G=this.G&~c|this.G-b&c;a&&(fe(this),this.L|=256)}},function(){var a=1,b=0,c=this.ta,d=this.B.Sg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Ug,this.wa&256||(this.A-=this.B.Tg));if(a--){var e=Hc(this,this.va,this.I&c);this.Xb(this.pa.Rb(this.H&c,this.U),e);e=this.X&1024?-this.U:this.U;this.I=this.I&~c|this.I+e&c;this.H=this.H&~c|this.H+e&c;this.A-=d;this.G=this.G&~c|this.G-b&c;a&&(fe(this),this.L|=256)}},function(){var a=
1,b=0,c=this.ta,d=this.B.Dg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Fg,this.wa&256||(this.A-=this.B.Eg));if(a--){var e=Ce(this,this.va,this.I),f=Ce(this,this.pa,this.H);this.C=this.F;mg.call(this,e,f);e=this.X&1024?-1:1;this.I=this.I&~c|this.I+e&c;this.H=this.H&~c|this.H+e&c;this.G=this.G&~c|this.G-b&c;this.A-=d-this.B.yb;a&&ke(this)==(this.wa&64)&&(fe(this),this.L|=256)}},function(){var a=1,b=0,c=this.ta,d=this.B.Dg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Fg,this.wa&256||(this.A-=this.B.Eg));if(a--){var e=
De(this,this.va,this.I&c),f=De(this,this.pa,this.H&c);this.C=this.F;ng.call(this,e,f);e=this.X&1024?-this.U:this.U;this.I=this.I&~c|this.I+e&c;this.H=this.H&~c|this.H+e&c;this.G=this.G&~c|this.G-b&c;this.A-=d-this.B.yb;a&&ke(this)==(this.wa&64)&&(fe(this),this.L|=256)}},function(){H(this,this.J&this.na(),128);this.A-=this.B.Vd},function(){H(this,this.J&this.Aa(),this.fb);this.A-=this.B.Vd},function(){var a=1,b=0,c=this.ta,d=this.B.dh;this.wa&192&&(a=this.G&c,b=1,d=this.B.fh,this.wa&256||(this.A-=
this.B.eh));if(a--){var e=this.J;this.Mc(this.pa.Rb(this.H&c,1),e);this.G=this.G&~c|this.G-b&c;80546<=this.od&&80564>=this.od&&!(this.wa&2048)!=(103!=this.Jb(this.Y))&&(c^=-65536);this.H=this.H&~c|this.H+(this.X&1024?-1:1)&c;this.A-=d;a&&(fe(this),this.L|=256)}},function(){var a=1,b=0,c=this.ta,d=this.B.dh;this.wa&192&&(a=this.G&c,b=1,d=this.B.fh,this.wa&256||(this.A-=this.B.eh));if(a--){var e=this.J;this.Xb(this.pa.Rb(this.H&c,this.U),e);this.H=this.H&~c|this.H+(this.X&1024?-this.U:this.U)&c;this.G=
this.G&~c|this.G-b&c;this.A-=d;a&&(fe(this),this.L|=256)}},function(){var a=1,b=0,c=this.ta,d=this.B.Kg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Mg,this.wa&256||(this.A-=this.B.Lg));if(a--){var e=this.Jb(this.va.Qb(this.I&c,1));this.J=this.J&-256|e;this.I=this.I&~c|this.I+(this.X&1024?-1:1)&c;this.G=this.G&~c|this.G-b&c;this.A-=d;a&&(fe(this),this.L|=256)}},function(){var a=1,b=0,c=this.ta,d=this.B.Kg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Mg,this.wa&256||(this.A-=this.B.Lg));if(a--){var e=Hc(this,this.va,
this.I&c);this.J=this.J&~this.N|e;this.I=this.I&~c|this.I+(this.X&1024?-this.U:this.U)&c;this.G=this.G&~c|this.G-b&c;this.A-=d;a&&(fe(this),this.L|=256)}},function(){var a=1,b=0,c=this.ta,d=this.B.Xg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Zg,this.wa&256||(this.A-=this.B.Yg));if(a--){var e=this.J&255,f=Ce(this,this.pa,this.H);this.C=this.F;mg.call(this,e,f);this.H=this.H&~c|this.H+(this.X&1024?-1:1)&c;this.G=this.G&~c|this.G-b&c;this.A-=d-this.B.yb;a&&ke(this)==(this.wa&64)&&(fe(this),this.L|=256)}},
function(){var a=1,b=0,c=this.ta,d=this.B.Xg;this.wa&192&&(a=this.G&c,b=1,d=this.B.Zg,this.wa&256||(this.A-=this.B.Yg));if(a--){var e=this.J&this.N,f=De(this,this.pa,this.H&c);this.C=this.F;ng.call(this,e,f);this.H=this.H&~c|this.H+(this.X&1024?-this.U:this.U)&c;this.G=this.G&~c|this.G-b&c;this.A-=d-this.B.yb;a&&ke(this)==(this.wa&64)&&(fe(this),this.L|=256)}},function(){this.J=this.J&-256|this.na();this.A-=this.B.Mb},function(){this.G=this.G&-256|this.na();this.A-=this.B.Mb},function(){this.M=this.M&
-256|this.na();this.A-=this.B.Mb},function(){this.D=this.D&-256|this.na();this.A-=this.B.Mb},function(){this.J=this.J&-65281|this.na()<<8;this.A-=this.B.Mb},function(){this.G=this.G&-65281|this.na()<<8;this.A-=this.B.Mb},function(){this.M=this.M&-65281|this.na()<<8;this.A-=this.B.Mb},function(){this.D=this.D&-65281|this.na()<<8;this.A-=this.B.Mb},function(){this.J=this.J&~this.N|this.Aa();this.A-=this.B.Mb},function(){this.G=this.G&~this.N|this.Aa();this.A-=this.B.Mb},function(){this.M=this.M&~this.N|
this.Aa();this.A-=this.B.Mb},function(){this.D=this.D&~this.N|this.Aa();this.A-=this.B.Mb},function(){A(this,C(this)&~this.N|this.Aa());this.A-=this.B.Mb},function(){this.K=this.K&~this.N|this.Aa();this.A-=this.B.Mb},function(){this.I=this.I&~this.N|this.Aa();this.A-=this.B.Mb},function(){this.H=this.H&~this.N|this.Aa();this.A-=this.B.Mb},li,mi,li,mi,function(){this.Z.call(this,zg)},function(){this.Z.call(this,xg)},function(){this.L|=1;this.yc.call(this,ti,this.na)},function(){this.L|=1;this.Ja.call(this,
ti,this.Aa)},ni,oi,ni,oi,function(){if(this.X&131072&&3>this.Cb)v.call(this,13,0);else{var a=this.B.$i;this.fc=-1;Ih.call(this,3,null,a)}},function(){var a=this.na();if(this.X&131072&&3>this.Cb)v.call(this,13,0);else{var b;a:{b=this.rf[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c](this.Y)){b=!1;break a}b=!0}b?(this.fc=-1,Ih.call(this,a,null,0)):this.A--}},function(){if(me(this))if(this.X&131072&&3>this.Cb)v.call(this,13,0);else{var a=this.B.aj;this.fc=-1;Ih.call(this,4,null,a)}else this.A-=
this.B.bj},function(){if(this.X&131072&&3>this.Cb)v.call(this,13,0);else{this.ic=this.P.ja;this.ka=this.ra;this.A-=this.B.Yi;if(this.Pa&1&&this.X&16384){var a=this.ha(this.ga.ya+0);Ec(this.Ca,a,!1)}else{var a=this.za,b=x(this),c=x(this),d=x(this);if(this.X&131072)d=d&131071|this.X&-131072;else if(d&131072){var e=x(this),f=x(this),g=x(this),h=x(this),k=x(this),m=x(this);Fc(this,!0,!0);Dc(this,f);A(this,e);Kc(this,g);Jc(this,h);this.Ta.load(k);this.Xa.load(m)}null!=Nc(this,b,c,!1)&&(Mc(this,d,a),this.ag&&
Yd(this,this.Y))}this.ic=this.ka=-1}},function(){this.yc.call(this,ii,Ch)},function(){this.Ja.call(this,2==this.U?ji:ki,Ch)},function(){this.yc.call(this,ii,Dh)},function(){this.Ja.call(this,2==this.U?ji:ki,Dh)},function(){var a=this.na();if(a){var b=this.J&255;this.J=this.J&-65536|b/a<<8|b%a;H(this,this.J,128);this.A-=this.B.Di}else Lh.call(this)},function(){var a=this.J&255,b=(this.J>>8&255)*this.na()|0,c=a+b|0;this.J=this.J&-65536|c&255;ge(this,a,b,c,191);this.A-=this.B.Ci},function(){this.J=this.J&
-256|(he(this)?255:0);this.A-=2},function(){this.J=this.J&-256|Ce(this,this.va,this.D+(this.J&255));this.A-=this.B.Bj},function(){pi.call(this,216)},function(){pi.call(this,217)},function(){pi.call(this,218)},function(){pi.call(this,219)},function(){pi.call(this,220)},function(){pi.call(this,221)},function(){pi.call(this,222)},function(){pi.call(this,223)},function(){var a=this.O(),b=this.G-1&this.ta;this.G=this.G&~this.ta|b;b&&!ke(this)?(G(this,E(this)+a),this.A-=this.B.ij):this.A-=this.B.Ng},function(){var a=
this.O(),b=this.G-1&this.ta;this.G=this.G&~this.ta|b;b&&ke(this)?(G(this,E(this)+a),this.A-=this.B.Og):this.A-=this.B.Pg},function(){var a=this.O(),b=this.G-1&this.ta;this.G=this.G&~this.ta|b;b?(G(this,E(this)+a),this.A-=this.B.hj):this.A-=this.B.Ng},function(){var a=this.O();this.G&this.ta?this.A-=this.B.Pg:(G(this,E(this)+a),this.A-=this.B.Og)},function(){var a=this.na();Ae(this,a,1)&&(this.J=this.J&-256|Qb(this.ia,a,1,this.Y-2)&255,this.A-=this.B.Ig)},function(){var a=this.na();Ae(this,a,this.U)&&
(this.J=this.J&~this.N|Qb(this.ia,a,this.U,this.Y-2)&this.N,this.A-=this.B.Ig)},function(){var a=this.na();Ae(this,a,1)&&(Sb(this.ia,a,1,this.J&255,this.Y-2),this.A-=this.B.Wg)},function(){var a=this.na();Ae(this,a,this.U)&&(Sb(this.ia,a,this.U,this.J&this.N,this.Y-2),this.A-=this.B.Wg)},function(){var a=this.Aa(),b=E(this),a=b+a;D(this,b);G(this,a);this.A-=this.B.Hi},function(){var a=this.Aa();G(this,E(this)+a);this.A-=this.B.Jg},function(){Nc(this,this.Aa(),He(this));this.A-=this.B.dj},function(){var a=
this.O();G(this,E(this)+a);this.A-=this.B.Jg},function(){var a=this.M&65535;Ae(this,a,1)&&(this.J=this.J&-256|Qb(this.ia,a,1,this.Y-1)&255,this.A-=this.B.Hg)},function(){var a=this.M&65535;Ae(this,a,this.U)&&(this.J=this.J&~this.N|Qb(this.ia,a,this.U,this.Y-1)&this.N,this.A-=this.B.Hg)},function(){var a=this.M&65535;Ae(this,a,1)&&(Sb(this.ia,a,1,this.J&255,this.Y-1),this.A-=this.B.Vg)},function(){var a=this.M&65535;Ae(this,a,2)&&(Sb(this.ia,a,this.U,this.J&this.N,this.Y-1),this.A-=this.B.Vg)},qi,
qi,function(){this.L|=132;this.A-=this.B.Pc},function(){this.L|=68;this.A-=this.B.Pc},function(){this.X&131072?v.call(this,13,0):(this.Ea|=4,this.A-=2,this.X&512||oc(this))},function(){he(this)?oe(this):ne(this);this.A-=2},function(){this.Hb=!1;this.yc.call(this,ui,Fh);this.Hb&&(this.J=this.J&~this.N|this.sa&this.N)},function(){this.Hb=!1;this.Ja.call(this,vi,Fh);this.Hb&&(this.J=this.J&~this.N|this.sa&this.N,this.M=this.M&~this.N|this.Ga&this.N)},function(){oe(this);this.A-=2},function(){ne(this);
this.A-=2},function(){this.za>this.Cb?v.call(this,13,0):(this.X&=-513,this.A-=this.B.Fi)},function(){this.za>this.Cb?v.call(this,13,0):(this.X|=512,this.L|=4,this.A-=2)},function(){this.X&=-1025;this.A-=2},function(){this.X|=1024;this.A-=2},function(){this.yc.call(this,Sc,Fh)},function(){this.Ja.call(this,Tc,Fh)}],di=[Xf,Jg,Vf,Lg,Zf,nh,vh,mg],ri=[Yf,Kg,Wf,Mg,$f,oh,wh,ng],si=[function(a,b){this.A-=-1===this.C?this.B.ec:this.B.tj;return b},pg,pg,pg,pg,pg,pg,pg],ti=[function(a,b){this.A-=-1===this.C?
this.B.lj:this.B.jj;return b},T,T,T,T,T,T,T],ii=[function(a,b){var c=a;if(b&=this.Da){var d;(b&=7)?(d=a<<b-1,c=(a<<b|a>>8-b)&255):d=a<<7;te(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Da){var d;(b&=7)?(d=a<<8-b,c=(a>>>b|d)&255):d=a;te(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Da){var d=ue(this);(b%=9)?(c=(a<<b|d<<b-1|a>>9-b)&255,d=a<<b-1):d<<=7;te(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Da){var d=ue(this);(b%=9)?(c=(a>>b|d<<8-b|a<<9-b)&255,d=a<<8-b):d<<=
7;te(this,c,d,128)}return c},function(a,b){var c=a;if(b&=this.Da){var d=0;8<b?c=0:(d=a<<b-1,c=d<<1&255);H(this,c,128,d&128,(c^d)&128)}return c},function(a,b){if(b&=this.Da)b=8<b?0:a>>>b-1,a=b>>>1&255,H(this,a,128,b&1,a&128);return a},T,function(a,b){if(b&=this.Da)9<b&&(b=9),b=a<<24>>24>>b-1,a=b>>1&255,H(this,a,128,b&1);return a}],ji=[function(a,b){var c=a;if(b&=this.Da){var d;(b&=15)?(d=a<<b-1,c=(a<<b|a>>16-b)&65535):d=a<<15;te(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Da){var d;
(b&=15)?(d=a<<16-b,c=(a>>>b|d)&65535):d=a;te(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Da){var d=ue(this);(b%=17)?(c=(a<<b|d<<b-1|a>>17-b)&65535,d=a<<b-1):d<<=15;te(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Da){var d=ue(this);(b%=17)?(c=(a>>b|d<<16-b|a<<17-b)&65535,d=a<<16-b):d<<=15;te(this,c,d,32768)}return c},function(a,b){var c=a;if(b&=this.Da){var d=0;16<b?c=0:(d=a<<b-1,c=d<<1&65535);H(this,c,32768,d&32768,(c^d)&32768)}return c},function(a,b){if(b&=this.Da)b=
16<b?0:a>>>b-1,a=b>>>1&65535,H(this,a,32768,b&1,a&32768);return a},T,function(a,b){if(b&=this.Da)17<b&&(b=17),b=a<<16>>16>>b-1,a=b>>1&65535,H(this,a,32768,b&1);return a}],ki=[function(a,b){var c=a;if(b&=this.Da)c=a<<b|a>>>32-b,te(this,c,a<<b-1,-2147483648);return c},function(a,b){var c=a;if(b&=this.Da){var d=a<<32-b,c=a>>>b|d;te(this,c,d,-2147483648)}return c},function(a,b){var c=a;if(b&=this.Da)c=ue(this),c=a<<b|c<<b-1|a>>>32-b>>>1,te(this,c,a<<b-1,-2147483648);return c},function(a,b){var c=a;if(b&=
this.Da)c=ue(this),c=a>>>b|c<<32-b|a<<32-b<<1,te(this,c,a<<32-b,-2147483648);return c},function(a,b){var c=a;if(b&=this.Da)a<<=b-1,c=a<<1,H(this,c,-2147483648,a&-2147483648,(c^a)&-2147483648);return c},function(a,b){if(b&=this.Da)b=a>>>b-1,a=b>>>1,H(this,a,-2147483648,b&1,a&-2147483648);return a},T,function(a,b){if(b&=this.Da)b=a>>b-1,a=b>>1,H(this,a,-2147483648,b&1);return a}],ui=[function(a,b){b=this.na();H(this,a&b,128);this.A-=-1===this.F?this.B.hh:this.B.gh;this.L|=2;return a},T,function(a){this.A-=
-1===this.F?this.B.bf:this.B.af;return a^255},function(a){var b=-a|0;ge(this,0,a,b,191,!0);this.A-=-1===this.F?this.B.bf:this.B.af;return b&255},function(a){this.sa=(this.J&255)*a&65535;this.sa&65280?(ne(this),pe(this)):(oe(this),se(this));this.Hb=!0;this.A-=-1===this.F?this.B.pj:this.B.oj;this.L|=2;return a},function(a){var b=(this.J<<24>>24)*(a<<24>>24)|0;this.sa=b&65535;127<b||-128>b?(ne(this),pe(this)):(oe(this),se(this));this.Hb=!0;this.A-=-1===this.F?this.B.Vi:this.B.Ui;this.L|=2;return a},
function(a,b){if(!a)return Lh.call(this),a;var c=(b=this.J&65535)/a;if(255<c)return Lh.call(this),a;this.sa=c&255|(b%a&255)<<8;this.Hb=!0;this.A-=-1===this.F?this.B.Ni:this.B.Mi;this.L|=2;return a},function(a,b){if(!a)return Lh.call(this),a;var c=a<<24>>24,d=(b=this.J<<16>>16)/c|0;if(d!=d<<24>>24||8086==this.ca&&-128==d)return Lh.call(this),a;this.sa=d&255|(b%c&255)<<8;this.Hb=!0;this.A-=-1===this.F?this.B.Ri:this.B.Qi;this.L|=2;return a}],vi=[function(a,b){b=this.Aa();H(this,a&b,this.fb);this.A-=
-1===this.F?this.B.hh:this.B.gh;this.L|=2;return a},T,function(a){this.A-=-1===this.F?this.B.bf:this.B.af;return a^this.N},function(a){var b=-a|0;ge(this,0,a,b,this.fb|63,!0);this.A-=-1===this.F?this.B.bf:this.B.af;return b&this.N},function(a,b){2==this.U?(b=this.J&65535,b=b*a|0,this.sa=b&65535,this.Ga=b>>16&65535):(vg.call(this,a,this.J),80563==this.od&&68657152==this.J&&129==a&&(this.Ga=0));this.Ga?(ne(this),pe(this)):(oe(this),se(this));this.Hb=!0;this.A-=-1===this.F?this.B.rj:this.B.qj;this.L|=
2;return a},function(a,b){2==this.U?(b=this.J&65535,b=(b<<16>>16)*(a<<16>>16)|0,this.sa=b&65535,this.Ga=b>>16&65535,b=32767<b||-32768>b):(ug.call(this,a,this.J),b=this.Ga!=this.sa>>31);b?(ne(this),pe(this)):(oe(this),se(this));this.Hb=!0;this.A-=-1===this.F?this.B.Xi:this.B.Wi;this.L|=2;return a},function(a,b){if(2==this.U){if(!a)return Lh.call(this),a;b=65536*(this.M&65535)+(this.J&65535);var c=b/a;if(65536<=c)return Lh.call(this),a;this.sa=c&65535;this.Ga=b%a&65535}else{if(!zh.call(this,this.J,
this.M,a))return Lh.call(this),a;this.sa|=0;this.Ga|=0}this.Hb=!0;this.A-=-1===this.F?this.B.Pi:this.B.Oi;this.L|=2;return a},function(a,b){if(2==this.U){if(!a)return Lh.call(this),a;var c=a<<16>>16,d=(b=this.M<<16|this.J&65535)/c|0;if(d!=d<<16>>16||8086==this.ca&&-32768==d)return Lh.call(this),a;this.sa=d&65535;this.Ga=b%c&65535}else{b=this.J;var c=this.M,d=a,e=0,f=0;0>d&&(d=-d|0,e=1-e);0>c&&(b=-b|0,c=~c+(b?0:1)|0,f=1,e=1-e);!zh.call(this,b,c,d)||this.sa>2147483647+e||this.Ga>2147483647+f?b=!1:(e&&
(this.sa=-this.sa),f&&(this.Ga=-this.Ga),b=!0);if(!b)return Lh.call(this),a;this.sa|=0;this.Ga|=0}this.Hb=!0;this.A-=-1===this.F?this.B.Ti:this.B.Si;this.L|=2;return a}],Sc=[function(a){var b=a+1|0;ge(this,a,1,b,190);this.A-=-1===this.F?this.B.$e:this.B.Ze;return b&255},function(a){var b=a-1|0;ge(this,a,1,b,190,!0);this.A-=-1===this.F?this.B.$e:this.B.Ze;return b&255},T,T,T,T,T,T],Tc=[function(a){var b=a+1|0;ge(this,a,1,b,this.fb|62);this.A-=-1===this.F?this.B.$e:this.B.Ze;return b&this.N},function(a){var b=
a-1|0;ge(this,a,1,b,this.fb|62,!0);this.A-=-1===this.F?this.B.$e:this.B.Ze;return b&this.N},function(a){D(this,E(this));G(this,a);this.A-=-1===this.F?this.B.Li:this.B.Ki;this.L|=2;return a},function(a){if(-1===this.F)return T.call(this,a);this.ka=this.ra;Hh.call(this,a,this.ha(this.F+this.U));this.A-=this.B.Ii;this.L|=2;this.ka=-1;return a},function(a){G(this,a);this.A-=-1===this.F?this.B.fj:this.B.ej;this.L|=2;return a},function(a){if(-1===this.F)return T.call(this,a);Nc(this,a,this.ha(this.F+this.U));
this.A-=this.B.cj;this.L|=2;return a},function(a){var b=a;this.L&512&&(a=a-2&65535,80286>this.ca&&(b=a));D(this,b);this.A-=-1===this.F?this.B.Ac:this.B.vj;this.L|=2;return a},T];function vd(){this.Z.call(this,sh);this.A-=-1===this.F?6:13}function wd(){this.qa.call(this,rh);this.A-=-1===this.F?12:19}var nd=Array(256);nd[0]=function(){16>(this.Jb(this.Y)&56)&&(this.L|=1);this.Ja.call(this,this.Sh,Fh)};nd[1]=function(){this.Jb(this.Y)&16||(this.L|=1);this.Ja.call(this,wi,Fh)};
nd[2]=function(){!(this.Pa&1)||this.X&131072?v.call(this,6):this.Z.call(this,wg)};nd[3]=function(){!(this.Pa&1)||this.X&131072?v.call(this,6):this.Z.call(this,Cg)};
nd[5]=function(){this.za?v.call(this,13,0,0,!0):(ze(this,this.ha(2054)),this.H=this.ha(2086),this.I=this.ha(2088),this.K=this.ha(2090),this.D=this.ha(2094),this.M=this.ha(2096),this.G=this.ha(2098),this.J=this.ha(2100),Cc(this.pa,2102,this.ha(2084)),Cc(this.Ca,2108,this.ha(2082)),Cc(this.P,2114,this.ha(2080)),Cc(this.xa,2120,this.ha(2078)),Mc(this,this.ha(2072)),G(this,this.ha(2074)),A(this,this.ha(2092)),this.ub=this.ha(2126)|this.Jb(2128)<<16,this.wc=this.ub+this.ha(2130),this.Ab=this.ha(2138)|
this.Jb(2140)<<16,this.xc=this.Ab+this.ha(2142),Cc(this.Zb,2132,this.ha(2076)),Cc(this.ga,2144,this.ha(2070)),this.A-=195)};nd[6]=function(){this.za?v.call(this,13,0):(this.Pa&=-9,this.A-=2)};nd[11]=Vc;nd[166]=Vc;nd[255]=Vc;var F=[];F[5]=Vc;
F[7]=function(){if(this.za)v.call(this,13,0,0,!0);else{var a=this.pa.Qb(this.H&this.ta,204);if(-1!==a){this.Pa=this.fa(a);Fc(this);this.Pa&-2147483648?wb(this):zd(this);var b=this.fa(a+168),c=(b&24576)>>13;Mc(this,this.fa(a+4),c);this.ub=this.fa(a+112);this.wc=this.ub+this.fa(a+116);this.Ab=this.fa(a+100);this.xc=this.Ab+this.fa(a+104);Bc(this.Zb,this.fa(a+56),this.fa(a+120),this.fa(a+124),this.fa(a+128));Bc(this.ga,this.fa(a+52),this.fa(a+84),this.fa(a+88),this.fa(a+92));this.H=this.fa(a+12);this.I=
this.fa(a+16);this.K=this.fa(a+20);this.D=this.fa(a+28);this.M=this.fa(a+32);this.G=this.fa(a+36);this.J=this.fa(a+40);Bc(this.Xa,this.fa(a+60),this.fa(a+132),this.fa(a+136),this.fa(a+140));Bc(this.Ta,this.fa(a+64),this.fa(a+144),this.fa(a+148),this.fa(a+152));Bc(this.xa,this.fa(a+68),this.fa(a+156),this.fa(a+160),this.fa(a+164));Bc(this.P,this.fa(a+72),b,this.fa(a+172),this.fa(a+176));Bc(this.Ca,this.fa(a+76),this.fa(a+180),this.fa(a+184),this.fa(a+188));Bc(this.pa,this.fa(a+80),this.fa(a+192),this.fa(a+
196),this.fa(a+200));G(this,this.fa(a+8));A(this,this.fa(a+24))}this.A-=122<<(a&3?1:0)}};F[16]=ei;F[17]=fi;F[18]=gi;F[19]=hi;F[32]=function(){if(this.za)v.call(this,13,0);else{var a,b=this.na();switch((b&56)>>3){case 0:a=this.Pa;break;case 2:a=this.qd;break;case 3:a=this.cd;break;default:od.call(this);return}Bd(this,b&7,a);this.A-=6}};F[33]=function(){if(this.za)v.call(this,13,0);else{var a=this.na(),b=(a&56)>>3;4==b||5==b?od.call(this):(Bd(this,a&7,this.qb[b]),this.A-=22)}};
F[34]=function(){if(this.za)v.call(this,13,0);else{var a=this.na(),b=Ad(this,a&7);switch((a&56)>>3){case 0:this.Pa=b;Fc(this);this.Pa&-2147483648?wb(this):zd(this);this.A-=10;break;case 2:this.qd=b;this.A-=4;break;case 3:Pc.call(this,b);this.A-=5;break;default:od.call(this)}}};F[35]=function(){if(this.za)v.call(this,13,0);else{var a=this.na(),b=(a&56)>>3;4==b||5==b?od.call(this):(a=Ad(this,a&7),a!=this.qb[b]&&(Zd(this,!1),this.qb[b]=a,Zd(this,!0)),this.A-=4>b?22:14)}};
F[36]=function(){if(this.za)v.call(this,13,0);else{var a=this.na(),b=(a&56)>>3;6>b?od.call(this):(Bd(this,a&7,this.uf[b]),this.A-=12)}};F[38]=function(){if(this.za)v.call(this,13,0);else{var a=this.na(),b=(a&56)>>3;6>b?od.call(this):(this.uf[b]=Ad(this,a&7),this.A-=12)}};F[128]=function(){var a=this.Aa();me(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};F[129]=function(){var a=this.Aa();me(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)};
F[130]=function(){var a=this.Aa();he(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};F[131]=function(){var a=this.Aa();he(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)};F[132]=function(){var a=this.Aa();ke(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};F[133]=function(){var a=this.Aa();ke(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)};F[134]=function(){var a=this.Aa();he(this)||ke(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};
F[135]=function(){var a=this.Aa();he(this)||ke(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)};F[136]=function(){var a=this.Aa();le(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};F[137]=function(){var a=this.Aa();le(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)};F[138]=function(){var a=this.Aa();ie(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};F[139]=function(){var a=this.Aa();ie(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)};
F[140]=function(){var a=this.Aa();!le(this)!=!me(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};F[141]=function(){var a=this.Aa();!le(this)==!me(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};F[142]=function(){var a=this.Aa();ke(this)||!le(this)!=!me(this)?(G(this,E(this)+a),this.A-=this.B.Ma):this.A-=this.B.Na};F[143]=function(){var a=this.Aa();ke(this)||!le(this)!=!me(this)?this.A-=this.B.Na:(G(this,E(this)+a),this.A-=this.B.Ma)};F[144]=function(){Bh.call(this,Ng)};
F[145]=function(){Bh.call(this,Ng)};F[146]=function(){Bh.call(this,Og)};F[147]=function(){Bh.call(this,Pg)};F[148]=function(){Bh.call(this,Qg)};F[149]=function(){Bh.call(this,Rg)};F[150]=function(){Bh.call(this,Sg)};F[151]=function(){Bh.call(this,Tg)};F[152]=function(){Bh.call(this,Ug)};F[153]=function(){Bh.call(this,Vg)};F[154]=function(){Bh.call(this,Wg)};F[155]=function(){Bh.call(this,Xg)};F[156]=function(){Bh.call(this,Yg)};F[157]=function(){Bh.call(this,Zg)};F[158]=function(){Bh.call(this,$g)};
F[159]=function(){Bh.call(this,ah)};F[160]=function(){Ic(this,this.Ta.ja,this.U,2);this.A-=this.B.Wd};F[161]=function(){this.ka=this.ra;var a=x(this);this.Ta.load(a);this.A-=this.B.ec;this.ka=-1};F[163]=function(){this.qa.call(this,ig);-1!==this.F&&(this.A-=6)};F[164]=function(){this.qa.call(this,2==this.U?bh:dh);this.A-=-1===this.F?3:7};F[165]=function(){this.qa.call(this,2==this.U?fh:gh);this.A-=-1===this.F?3:7};F[168]=function(){Ic(this,this.Xa.ja,this.U,2);this.A-=this.B.Wd};
F[169]=function(){this.ka=this.ra;var a=x(this);this.Xa.load(a);this.A-=this.B.ec;this.ka=-1};F[171]=function(){this.qa.call(this,lg);-1!==this.F&&(this.A-=5)};F[172]=function(){this.qa.call(this,2==this.U?hh:jh);this.A-=-1===this.F?3:7};F[173]=function(){this.qa.call(this,2==this.U?lh:mh);this.A-=-1===this.F?3:7};F[175]=function(){this.Z.call(this,2==this.U?rg:tg)};F[178]=function(){this.Z.call(this,Dg)};F[179]=function(){this.qa.call(this,kg);-1!==this.F&&(this.A-=5)};
F[180]=function(){this.Z.call(this,Ag)};F[181]=function(){this.Z.call(this,Bg)};
F[182]=function(){this.Bb.call(this,Fg);switch(this.W>>3&7){case 0:this.J=this.J&~this.N|this.J&255;break;case 1:this.G=this.G&~this.N|this.G&255;break;case 2:this.M=this.M&~this.N|this.M&255;break;case 3:this.D=this.D&~this.N|this.D&255;break;case 4:this.Ob=this.Ob&~this.N|this.J>>8&255;this.J=this.oa;break;case 5:this.K=this.K&~this.N|this.G>>8&255;this.G=this.oa;break;case 6:this.I=this.I&~this.N|this.M>>8&255;this.M=this.oa;break;case 7:this.H=this.H&~this.N|this.D>>8&255,this.D=this.oa}this.A-=
-1===this.F?3:6};F[183]=function(){Gc(this,2);this.Z.call(this,Gg);switch(this.W>>3&7){case 0:this.J=this.J&65535;break;case 1:this.G=this.G&65535;break;case 2:this.M=this.M&65535;break;case 3:this.D=this.D&65535;break;case 4:this.Ob=this.Ob&65535;break;case 5:this.K=this.K&65535;break;case 6:this.I=this.I&65535;break;case 7:this.H=this.H&65535}this.A-=-1===this.F?3:6};F[186]=function(){this.Ja.call(this,xi,this.na)};F[187]=function(){this.qa.call(this,jg);-1!==this.F&&(this.A-=5)};
F[188]=function(){this.Z.call(this,cg)};F[189]=function(){this.Z.call(this,dg)};
F[190]=function(){this.Bb.call(this,Fg);switch(this.W>>3&7){case 0:this.J=this.J&~this.N|(this.J&255)<<24>>24&this.N;break;case 1:this.G=this.G&~this.N|(this.G&255)<<24>>24&this.N;break;case 2:this.M=this.M&~this.N|(this.M&255)<<24>>24&this.N;break;case 3:this.D=this.D&~this.N|(this.D&255)<<24>>24&this.N;break;case 4:this.Ob=this.Ob&~this.N|this.J<<16>>24&this.N;this.J=this.oa;break;case 5:this.K=this.K&~this.N|this.G<<16>>24&this.N;this.G=this.oa;break;case 6:this.I=this.I&~this.N|this.M<<16>>24&
this.N;this.M=this.oa;break;case 7:this.H=this.H&~this.N|this.D<<16>>24&this.N,this.D=this.oa}this.A-=-1===this.F?3:6};F[191]=function(){Gc(this,2);this.Z.call(this,Gg);switch(this.W>>3&7){case 0:this.J=this.J<<16>>16;break;case 1:this.G=this.G<<16>>16;break;case 2:this.M=this.M<<16>>16;break;case 3:this.D=this.D<<16>>16;break;case 4:this.Ob=this.Ob<<16>>16;break;case 5:this.K=this.K<<16>>16;break;case 6:this.I=this.I<<16>>16;break;case 7:this.H=this.H<<16>>16}this.A-=-1===this.F?3:6};
var $d=[function(){this.A-=2+(-1===this.F?0:1);return this.Zb.ja},function(){this.A-=2+(-1===this.F?0:1);return this.ga.ja},function(a){this.L|=2;this.Zb.load(a);this.A-=17+(-1===this.F?0:2);return a},function(a){this.L|=2;-1!==this.ga.load(a)&&(this.bb(this.ga.hc+4,this.ga.lb|=512),this.ga.type|=512);this.A-=17+(-1===this.F?0:2);return a},function(a){this.L|=2;this.A-=14+(-1===this.F?0:2);if(-1!==this.Oa.load(a)&&2048!=(this.Oa.lb&2560)&&(this.Oa.nc>=this.za&&this.Oa.nc>=(a&3)||7168==(this.Oa.lb&
7168)))return ye(this),a;we(this);return a},function(a){this.L|=2;this.A-=14+(-1===this.F?0:2);if(-1!==this.Oa.load(a)&&512==(this.Oa.lb&2560)&&this.Oa.nc>=this.za&&this.Oa.nc>=(a&3))return ye(this),a;we(this);return a},T,T],Uc=[ld,ld,ld,ld,ld,ld,T,T],wi=[function(a){if(-1===this.F)v.call(this,6);else{a=this.wc-this.ub;var b=this.ub;80286==this.ca?b|=-16777216:80386<=this.ca&&2!=this.U&&(a|=b<<16);this.Va(this.F+2,b);this.A-=11}return a},function(a){if(-1===this.F)v.call(this,6);else{a=this.xc-this.Ab;
var b=this.Ab;80286==this.ca?b|=-16777216:80386<=this.ca&&2!=this.U&&(a|=b<<16);this.Va(this.F+2,b);this.A-=12}return a},function(a){-1===this.F||this.X&131072?v.call(this,6):(this.ub=this.fa(this.F+2)&(this.N|this.N<<8),a&=65535,this.wc=this.ub+a,this.L|=2,this.A-=11);return a},function(a){-1===this.F||this.X&131072?v.call(this,6):(this.Ab=this.fa(this.F+2)&(this.N|this.N<<8),a&=65535,this.xc=this.Ab+a,this.L|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.F?0:1);return this.Pa},T,function(a){this.X&
131072?v.call(this,6):(ze(this,a),this.A-=-1===this.F?3:6,this.L|=2);return a},T],xi=[T,T,T,T,eg,hg,gg,fg];
function U(a){Ma.call(this,"ChipSet",a,U);var b=a.model;b&&!yi[b]&&r("Unrecognized ChipSet model: "+b);this.ca=yi[b]||zi;this.D=[];b=Ai(a[Bi]);this.D[0]=[b,b];null==b&&(this.Y=[360,360],(b=a.floppies)&&b.length&&(this.Y=b),Ci(this,Di,this.Y.length),Ci(this,Ei,a.monitor||(this.ca<Pe?"mono":"ega")));b=Ai(a[Fi]);this.D[1]=[b,b];this.Ea=this.pa=1;this.ca>=Pe&&(this.Ea=this.pa=2);this.Z=a.scaleTimers||!1;this.Xa=a.rtcDate;this.Oa=!1;a.sound&&(this.La=this.qa=null,window&&(this.La=window.AudioContext||
window.webkitAudioContext),this.La&&(this.qa=new this.La));this.reset(!0);t(this)}Pa(U);var zi=5150.9,Pe=5170,yi={5150:5150,5160:5160,5170:Pe,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:zi,deskpro386:5180},Bi="sw1",Fi="sw2",Gi={Yj:1,ONE:0,In:64,Gn:128,xn:192,lc:192,eg:6},Hi={Hn:16,Vm:32,yn:48,lc:48,eg:4},Di=1,Ei=4,W={5150:[{},{}]};W[5150][0][Di]={lc:192,Nc:{1:0,2:64,3:128,4:192},fd:"Number of Floppy Drives"};W[5150][0][3]={lc:2,Nc:{0:0,1:2},fd:"FPU"};
W[5150][0][Ei]={lc:48,Nc:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,cga:32,mda:48,mono:48,ega:0,vga:0},fd:"Monitor Type"};W[5150][0][5]={lc:12,Nc:{16:0,32:4,48:8,64:12},fd:"Base Memory (16Kb Increments)"};W[5150][1][6]={lc:31,Nc:{0:0,32:1,64:2,96:3,128:4,160:5,192:6,224:7,256:8,288:9,320:10,352:11,384:12,416:13,448:14,480:15,512:16,544:17,576:18},fd:"Expansion Memory (32Kb Increments)"};W[5160]=[{},{}];W[5160][0][Di]=W[5150][0][Di];W[5160][0][3]=W[5150][0][3];W[5160][0][Ei]=W[5150][0][Ei];
W[5160][0][5]={lc:12,Nc:{64:0,128:4,192:8,256:12},fd:"Base Memory (64Kb Increments)"};W[5160][1][6]=W[5150][1][6];W[5160.101]=[{},{}];W[5160.101][0][5]={lc:143,Nc:{128:1,256:130,512:8,640:141},fd:"Base Memory (128Kb Increments)"};W[5160.101][0][3]={lc:16,Nc:{0:0,1:16},fd:"FPU"};W[5160.101][1][2]={lc:1,Nc:{0:0,1:1},fd:"Floppy Type"};W[5160.101][1][Di]=W[5150][0][Di];W[5160.101][1][Ei]=W[5150][0][Ei];l=U.prototype;
l.zb=function(a,b,c){switch(b){case Bi:return this.la[b]=c,Ii(this,0,b),!0;case Fi:if(5150==(this.ca|0)||5160.101==this.ca)return this.la[b]=c,Ii(this,1,b),!0;break;case "swdesc":return this.la[b]=c,!0}return!1};
l.pc=function(a,b,c,d){this.ia=b;this.A=c;this.Ia=d;this.ba=a;this.pd=jb(a,"FPU");Ci(this,3,this.pd?1:0,!0);this.C=jb(a,"Keyboard");this.Ga=c.T.Zc/1193181;Pb(b,this,Ji);Rb(b,this,Ki);this.ca<Pe?5160.101!=this.ca?(Pb(b,this,Li),Rb(b,this,Mi)):(Pb(b,this,Ni),Rb(b,this,Oi)):(Pb(b,this,Pi),Rb(b,this,Qi),5180==(this.ca|0)&&(Pb(b,this,Ri),Rb(b,this,Si)))};l.Ub=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};l.Tb=function(a){return a?this.save():!0};
l.reset=function(a){var b;Ti(this);this.G=Array(this.Ea);for(b=0;b<this.Ea;b++)Ui(this,b);this.gc=Array(this.pa);Vi(this,0,32);1<this.pa&&Vi(this,1,160);this.za=this.xa=null;this.K=Array(5180==(this.ca|0)?6:3);for(b=0;b<this.K.length;b++)Wi(this,b);this.oa=this.Ja=this.S=this.Da=null;this.ma=0;5160.101==this.ca&&(this.ka=0);if(this.ca>=Pe){this.H=16;this.P=0;this.R=16;this.sa=0;this.W=160;512<=Xi(this)&&(this.W|=16);3==+Yi(this,Ei,void 0)&&(this.W|=64);5180==(this.ca|0)&&(this.W|=12);this.va=3;this.I=
Array(8);this.da=0;a&&(this.B=Array(64));Zi(this,this.Xa);for(a=21;24>=a;a++)this.B[a]=0;for(a=14;46>a;a++)void 0===this.B[a]&&(this.B[a]=0);a=0|+Yi(this,Ei,void 0)<<Hi.eg&Hi.lc;a|=+Yi(this,3,void 0)?2:0;b=+Yi(this,Di,void 0);a|=b?b-1<<Gi.eg&Gi.lc|Gi.Yj:0;this.B[20]=a;this.B[16]=$i(this,0)<<4|$i(this,1);aj(this)}};
function Zi(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.rc("CMOS date invalid ("+b+"), using "+c)):b&&a.rc("CMOS date: "+c);a.B[0]=c.getSeconds();a.B[1]=0;a.B[2]=c.getMinutes();a.B[3]=0;a.B[4]=c.getHours();a.B[5]=0;a.B[6]=c.getDay()+1;a.B[7]=c.getDate();a.B[8]=c.getMonth()+1;b=c.getFullYear();a.B[9]=b%100;b/=100;a.B[50]=b%10|b/10<<4;a.B[10]=38;a.B[11]=2;a.B[12]=0;a.B[13]=128;a.ra=a.ga=0;a.Ta=a.Fa=null}
function bj(a){var b;void 0===b&&(b=a.Fa);a.ga=tc(a.A,a.Z)+b;a.B[11]&64&&qc(a.A,b)}function aj(a){for(var b=0,c=16;46>c;c++)b+=a.B[c];a.B[47]=b&255;a.B[46]=b>>8}
l.save=function(){var a=new ae(this);a.set(0,[this.D]);for(var b=[],c=0;c<this.G;c++){for(var d=this.G[c],e=d,f=[],g=0;g<e.$b.length;g++){var h=e.$b[g];f[g]=[h.Sd,h.wf,h.jc,h.gb,h.hb,h.mode,h.xf,h.Pm,h.Qm]}b[c]=[d.Db,d.hg,d.hi,d.Ib,f,d.jg]}a.set(1,[b]);b=[];for(c=0;c<this.gc.length;c++)d=this.gc[c],b[c]=[d.We,d.Sc,d.ld,d.Vc,d.ac,d.Cc,d.Nd,d.Ne];a.set(2,[b]);b=[];for(c=0;c<this.K.length;c++)d=this.K[c],b[c]=[d.jc,d.Ec,d.hb,d.Od,d.kg,d.mode,d.mf,d.Xc,d.jd,d.Tc,d.oe,d.Qd,d.kd,d.Db,d.se];a.set(3,[this.xa,
b,this.za]);a.set(4,[this.Da,this.S,this.Ja,this.oa,this.ma]);this.ca>=Pe&&(a.set(5,[this.H,this.P,this.R,this.sa,this.W,this.va]),a.set(6,[this.I[7],this.I,this.da,this.B,this.ra,this.ga]));return a.data()};
l.restore=function(a){var b,c;b=a[0];Array.isArray(b[0])?this.D=b[0]:(this.D[0][0]=b[0],this.D[1][0]=b[1]&15,this.D[0][1]=b[2],this.D[1][1]=b[3]&15);Ti(this);b=a[1];for(c=0;c<this.Ea;c++)Ui(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.pa;c++)Vi(this,c,c?160:32,b[0][c]);b=a[3];this.xa=b[0];this.za=b[2];for(c=0;c<this.K.length;c++)Wi(this,c,b[1][c]);b=a[4];this.Da=b[0];this.S=b[1];this.Ja=b[2];this.oa=b[3];this.ma=b[4];if(b=a[5])this.H=b[0],this.P=b[1],this.R=b[2],this.sa=b[3],this.W=b[4],this.va=
b[5];if(b=a[6])this.I=b[1],this.I[7]=b[0],this.da=b[2],this.B=b[3],this.ra=b[4],this.ga=b[5],Zi(this);return!0};l.start=function(){cj(this)};l.stop=function(){cj(this)};var dj=[0,null,null,0,Array(4),0];function Ui(a,b,c){var d=a.G[b];d||(d={$b:Array(4)});c=c&&5<=c.length?c:dj;d.Db=c[0];d.hg=c[1];d.hi=c[2];d.Ib=c[3];d.Il=b<<2;for(var e=0;e<d.$b.length;e++)ej(d,e,c[4][e]);d.jg=c[5]||0;a.G[b]=d}var fj=[!0,[0,0],[0,0],[0,0],[0,0]];
function ej(a,b,c){var d=a.$b[b];d||(d={wf:[0,0],jc:[0,0],gb:[0,0],hb:[0,0]});c=c&&8==c.length?c:fj;d.Sd=c[0];d.wf[0]=c[1][0];d.wf[1]=c[1][1];d.jc[0]=c[2][0];d.jc[1]=c[2][1];d.gb[0]=c[3][0];d.gb[1]=c[3][1];d.hb[0]=c[4][0];d.hb[1]=c[4][1];d.mode=c[5];d.xf=c[6];d.controller=a;d.vi=b;gj(d,c[8],c[9]);a.$b[b]=d}function gj(a,b,c,d){"string"==typeof b&&(b=Ua(b));b&&(a.done=null,a.Pm=b.id,a.Qm=c,a.Ef=b,a.qg=b[c],a.Sf=d)}var hj=[0,Array(4)];
function Vi(a,b,c,d){var e=a.gc[b];e||(e={Sc:[null,null,null,null]});d=d&&8==d.length?d:hj;e.port=c;e.Ln=b<<3;e.We=d[0];e.Sc[0]=d[1][0];e.Sc[1]=d[1][1];e.Sc[2]=d[1][2];e.Sc[3]=d[1][3];e.ld=d[2];e.Vc=d[3];e.ac=d[4];e.Cc=d[5];e.Nd=d[6];e.Ne=d[7];a.gc[b]=e}var ij=[[0,0],[0,0],[0,0],[0,0]];
function Wi(a,b,c){var d=a.K[b];d||(d={jc:[0,0],Ec:[0,0],hb:[0,0],Od:[0,0]});c=c&&13<=c.length?c:ij;d.jc[0]=c[0][0];d.jc[1]=c[0][1];d.Ec[0]=c[1][0];d.Ec[1]=c[1][1];d.hb[0]=c[2][0];d.hb[1]=c[2][1];d.Od[0]=c[3][0];d.Od[1]=c[3][1];d.kg=c[4];d.mode=c[5];d.mf=c[6];d.Xc=c[7];d.jd=c[8];d.Tc=c[9];d.oe=c[10];d.Qd=c[11];d.kd=c[12];d.Db=c[13]||0;d.se=c[14]||!1;a.K[b]=d}
function Ii(a,b,c){for(var d="",e=a.la[c],f=1;8>=f;f++){var g="pcjs-bitCell";f||(g+=" pcjs-bitCellLeft");d+='<div id="'+(c+"-"+f)+'" class="'+g+'" data-value="0">'+f+"</div>\n"}e.innerHTML=d;jj(a,b,c,!0)}function kj(a,b,c){if(b=(a=W[a.ca|0])&&a[b])for(var d in b)if(a=b[d],a.lc&1<<c)return a;return null}
function Yi(a,b,c){for(var d=null,e=W[a.ca]||W[a.ca|0]||W[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b])){a=a.D[f][c?0:1]&g.lc;for(var h in g.Nc)if(g.Nc[h]==a&&(d=h,"number"==typeof+d))break;break}}return d}function $i(a,b){if(b<+Yi(a,Di,void 0)){if(!a.Y)return 1;if(b<a.Y.length)switch(a.Y[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Xi(a,b){return+Yi(a,5,b)+ +Yi(a,6,b)}
function Ai(a,b){if(a){b=0;for(var c=1,d=0;d<a.length;d++)"0"==a.charAt(d)&&(b|=c),c<<=1}return b}function Ci(a,b,c,d){for(var e=W[a.ca]||W[a.ca|0]||W[5150],f=0;f<e.length;f++){var g=e[f];if(g&&(g=g[b]))for(var h in g.Nc)if(h==c){a.D[f][d?0:1]&=~g.lc;a.D[f][d?0:1]|=g.Nc[h];return}}}function lj(a,b){a.setAttribute("data-value",b?"1":"0");a.style.color=b?"#ffffff":"#000000";a.style.backgroundColor=b?"#000000":"#ffffff"}function Ti(a){jj(a,0,Bi);jj(a,1,Fi);mj(a)}
function jj(a,b,c,d){if(c=a.la[c]){d=d?a.D[b][0]:a.D[b][1]=a.D[b][0];c=Za(c,"pcjs-bitCell");for(var e=0;e<c.length;e++){var f=kj(a,b,e);c[e].setAttribute("title",f&&f.fd||"Reserved");lj(c[e],d&1<<e?!1:!0);c[e].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");lj(b,c);var d=b.getAttribute("id").split("-"),e=1<<+d[1]-1;switch(d[0]){case Bi:a.D[0][0]=a.D[0][0]&~e|(c?0:e);break;case Fi:a.D[1][0]=a.D[1][0]&~e|(c?0:e)}mj(a)}}(a,c[e])}}}
function mj(a){var b=a.la.swdesc;if(null!=b){var c;c=""+(Xi(a,!0)+"Kb");c+=", "+(+ +Yi(a,3,!0)?"":"No ")+"FPU";c+=", "+{0:"Enhanced Color",1:"TV",2:"Color",3:"Monochrome"}[+Yi(a,Ei,!0)]+" Monitor";c+=", "+ +Yi(a,Di,!0)+" Floppy Drives";if(null!=a.D[0][1]&&a.D[0][1]!=a.D[0][0]||null!=a.D[1][1]&&a.D[1][1]!=a.D[1][0])c+=" (Reset required)";b.textContent=c}}
function nj(a,b,c){a=a.G[b];var d=a.$b[c],e=d.gb[a.Ib];a.Ib^=1;b||c||a.Ib||(d.gb[0]++,255<d.gb[0]&&(d.gb[0]=0,d.gb[1]++,255<d.gb[1]&&(d.gb[1]=0)));return e}function oj(a,b,c,d){a=a.G[b];c=a.$b[c];c.gb[a.Ib]=c.wf[a.Ib]=d;a.Ib^=1}function pj(a,b,c){a=a.G[b];var d=a.$b[c],e=d.hb[a.Ib];a.Ib^=1;b||c||a.Ib||(d.hb[0]--,0>d.hb[0]&&(d.hb[0]=255,d.hb[1]--,0>d.hb[1]&&(d.hb[1]=255)));return e}function uj(a,b,c,d){a=a.G[b];c=a.$b[c];c.hb[a.Ib]=c.jc[a.Ib]=d;a.Ib^=1}
function vj(a,b){a=a.G[b];b=a.Db|1;a.Db&=-16;return b}function wj(a,b,c){a=a.G[b];b=c&3;a.Db=a.Db&~(16<<b)|(c&4)<<b+2;a.hi=c}function xj(a,b,c){b=a.G[b];var d=c&3,e=b.$b[d];e.Sd=!!(c&4);e.Sd||yj(a,b.Il+d)}function zj(a,b){a=a.G[b];for(b=0;b<a.$b.length;b++)ej(a,b)}function Aj(a,b,c){return a.G[b].$b[c].xf}function Bj(a,b,c,d){a.G[b].$b[c].xf=d}function Cj(a,b,c,d,e){gj(a.G[b>>2].$b[b&3],c,d,e)}function yj(a,b,c){b=a.G[b>>2].$b[b&3];b.Ef&&b.qg&&b.Sf?(c&&(b.done=c),b.Sd||Dj(a,b,!0)):c&&c(!0)}
function Dj(a,b,c){c&&(b.count=b.hb[1]<<8|b.hb[0],b.type=b.mode&12,b.si=b.Ff=!1);for(var d=!1;0<=b.count&&(c=b.xf<<16|b.gb[1]<<8|b.gb[0],4==b.type?(d=!0,function(c){b.qg.call(b.Ef,b.Sf,-1,function(e,g){0>e&&(b.si||(b.si=!0),e=255);b.Sd||a.ia.Mc(c,e);(d=g)&&setTimeout(function(){Ej(b)||Dj(a,b)},0)})}(c)):8==b.type?(c=a.ia.Jb(c),0>b.qg.call(b.Ef,b.Sf,c)&&(b.Ff=!0)):0!=b.type&&(b.Ff=!0)),!d&&!Ej(b););}
function Ej(a){if(!a.Ff&&0<=--a.count&&(a.mode&32?(a.gb[0]--,0>a.gb[0]&&(a.gb[0]=255,a.gb[1]--,0>a.gb[1]&&(a.gb[1]=255))):(a.gb[0]++,255<a.gb[0]&&(a.gb[0]=0,a.gb[1]++,255<a.gb[1]&&(a.gb[1]=0))),!a.Sd))return!1;var b=a.controller;b.Db=b.Db&~(16<<a.vi)|1<<a.vi;a.mode&16||(a.Sd=!0,a.Ef=a.Sf=null);a.done&&(a.done(!a.Ff),a.done=null);return!0}function Fj(a,b){var c=0;a=a.gc[b];if(null!=a.Ne)switch(a.Ne&3){case 2:c=a.ac;break;case 3:c=a.Cc}return c}
function Gj(a,b,c){b=a.gc[b];if(c&16)b.ld=0,b.Sc[b.ld++]=c,b.Vc=0,b.Nd=7,b.ac=b.Cc=0,b.Ne=10;else if(c&8)b.Ne=c;else{var d=c&224;if(d&32){var e=0;if(96==(d&96))e=1<<(c&7);else for(c=b.Nd+1;;){c&=7;d=1<<c;if(b.Cc&d){e=d;break}if(c++==b.Nd)break}b.Cc&e&&(b.Cc&=~e,Hj(a))}else 192==d&&(b.Nd=c&7)}}function Ij(a,b,c){var d=a.gc[b];d.ld<d.Sc.length?(d.Sc[d.ld++]=c,2==d.ld&&d.Sc[0]&2&&d.ld++,3!=d.ld||d.Sc[0]&1||d.ld++):(d.Vc=c,d=a.A,d.L|=4,Hj(a,b||253!=c?0:6))}
function Re(a,b,c){var d=a.gc[b>>3];b=1<<(b&7);d.ac&b||(d.ac|=b,d.We=c||0,Hj(a))}function Qe(a,b){var c=a.gc[b>>3];b=1<<(b&7);c.ac&b&&(c.ac&=~b,Hj(a))}function Hj(a,b){var c,d=-1;1<a.pa&&(c=a.gc[1],d=~(c.Cc|c.Vc)&c.ac);c=a.gc[0];0<=d&&(c.ac=d?c.ac|4:c.ac&-5);d=~(c.Cc|c.Vc)&c.ac;a=a.A;a.S&&(a.Ea=d?a.Ea|1:a.Ea&-2);d&&b&&(c.We=b)}
function Ie(a,b){void 0===b&&(b=0);var c=-1,d=a.gc[b];if(d.We)c=-2,d.We--;else for(var e=d.ac&((d.Cc|d.Vc)^255),f=d.Nd+1;;){var f=f&7,g=1<<f;if(d.Cc&g)break;if(e&g){b||2!=f?c=d.Sc[1]+f:c=Ie(a,1);0<=c&&(d.Cc|=g,d.ac&=~g);break}if(f++==d.Nd)break}return c}function Jj(a,b,c){var d=b?3:0;b=a.K[d+c];b.se?(a=b.Db,b.se=!1):(b.Xc==b.jd&&Kj(a,d+c),b.oe?(a=b.Od[b.Xc++],b.Xc==b.jd&&(b.oe=!1)):(Lj(a,d+c),a=b.hb[b.Xc++]));return a}
function Mj(a,b,c,d){var e=b?3:0,f=a.K[e+c];f.Xc==f.jd&&Kj(a,e+c);f.jc[f.Xc++]=d;f.Xc==f.jd&&(f.Qd&&0!=f.mode&&8!=f.mode||(f.oe=!1,f.hb[0]=f.Ec[0]=f.jc[0],f.hb[1]=f.Ec[1]=f.jc[1],f.kd=tc(a.A,a.Z),f.Qd=!0,f.Tc=0!=f.mode,b||c||(Qe(a,0),d=Nj(a,0)*a.Ga|0,6==f.mode&&(d>>=1),qc(a.A,d))),b||2!=c||cj(a))}
function Oj(a,b,c){var d=0,e=c&192;b?(d=3,a.za=c):a.xa=c;if(192==e){if(!(c&16))for(e=0;2>=e;e++)if(c&2<<e){b=d+e;var f=a.K[b];f.se||(Lj(a,b),f.Db=f.kg|f.mode|f.mf|(f.Xc<f.jd?64:0)|(f.Tc?128:0),f.se=!0)}if(!(c&32))for(e=0;2>=e;e++)c&2<<e&&Pj(a,d+e)}else{var e=e>>6,f=c&1,g=c&14;if(c&=48){var d=d+e,h=a.K[d];h.mf=c;h.mode=g;h.kg=f;h.jc=[0,0];h.hb=[0,0];h.Od=[0,0];h.Tc=!1;h.oe=!1;h.Qd=!1;h.se=!1;Kj(a,d);b||e||Qe(a,0);b||2!=e||255!=a.gc[0].Vc||77!=a.S||(e=a.K[0],e.Ec[0]=e.jc[0],e.Ec[1]=e.jc[1],e.kd=tc(a.A,
a.Z))}else Pj(a,d+e)}}function Nj(a,b){a=a.K[b];(b=a.jc[1]<<8|a.jc[0])||(b=1==a.jd?256:65536);return b}function wc(a,b){a=a.K[b];(b=a.Ec[1]<<8|a.Ec[0])||(b=1==a.jd?256:65536);return b}function Pj(a,b){Lj(a,b);var c=a.K[b];c.Od[0]=c.hb[0];c.Od[1]=c.hb[1];c.oe=!0;Kj(a,b)}function Kj(a,b){a=a.K[b];a.Xc=32==a.mf?1:0;a.jd=48==a.mf?2:1}
function Lj(a,b,c){var d=a.K[b];if(d.Qd&&(2!=b||a.S&1)){var e=tc(a.A,a.Z),f=(e-d.kd)/a.Ga|0;0>f&&(d.kd=e,f=0);var g=Nj(a,b),h=wc(a,b)-f;0==d.mode?(0>=h&&(h=0),h||(d.Tc=!0,d.Qd=!1,b||Re(a,0))):4==d.mode?(d.Tc=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Ec[0]=h&255,d.Ec[1]=h>>8&255,d.kd=e,!b&&d.Tc&&Re(a,0))):6==d.mode&&(h-=f,0>=h&&(d.Tc=!d.Tc,h=g+h,0>=h&&(h=g),d.Ec[0]=h&255,d.Ec[1]=h>>8&255,d.kd=e,!b&&d.Tc&&Re(a,0)));d.hb[0]=h&255;d.hb[1]=h>>8&255;c&&(a.kd=0)}return d}
function vc(a,b){for(var c=0;c<a.K.length;c++)Lj(a,c,b);if(a.ca>=Pe){b=a.A.T.Zc;c=tc(a.A,a.Z);null==a.Fa&&(a.ra=tc(a.A,a.Z),a.Ta=1024,a.Fa=Math.floor(a.A.T.Zc/a.Ta),bj(a));c>=a.ga&&(a.B[12]|=64,a.B[11]&64&&(a.B[12]|=128,Re(a,8)),a.ga=c+a.Fa);a.B[0]==a.B[1]&&a.B[2]==a.B[3]&&a.B[4]==a.B[5]&&(a.B[12]|=32,a.B[11]&32&&(a.B[12]|=128,Re(a,8)));var d=c-a.ra,e=Math.floor(d/b);if(e&&!(a.B[11]&128)){for(;e--;)if(60<=++a.B[0]&&(a.B[0]=0,60<=++a.B[2]&&(a.B[2]=0,24<=++a.B[4]))){a.B[4]=0;a.B[6]=a.B[6]%7+1;var f;
f=a.B[9];var g=pa[a.B[8]-1];28==g&&(f%4||!(f%100)&&f%400||g++);f=g;++a.B[7]>f&&(a.B[7]=1,12<++a.B[8]&&(a.B[8]=1,a.B[9]=(a.B[9]+1)%100))}a.B[12]|=16;a.B[11]&16&&(a.B[12]|=128,Re(a,8))}a.ra=c-d%b}}l=U.prototype;l.ll=function(){var a=this.Da;this.oa&16&&(this.S&128?a=this.D[0][1]:this.C&&(a=Qj(this.C)));return a};l.Cm=function(a,b){this.Da=b};l.ml=function(){return this.S};l.Dm=function(a,b){Rj(this,b)};function Rj(a,b){var c=!!(b&2),d=!!(a.S&2);a.S=b;a.C&&Sj(a.C,!(b&128),!!(b&64));c!=d&&cj(a,c)}
l.nl=function(){var a=0,a=5150==(this.ca|0)?this.S&4?a|this.D[1][1]&15:a|this.D[1][1]>>4&1:this.S&8?a|this.D[0][1]>>4:a|this.D[0][1]&15;this.S&1&&Lj(this,2).Tc&&(a=this.S&2?a|32:a|16);return a};l.Em=function(a,b){this.Ja=b};l.ol=function(){return this.oa};l.Fm=function(a,b){this.oa=b};l.xk=function(){var a=this.C?Qj(this.C):0;this.ka&=-2;return a};l.Ol=function(){};l.wk=function(){return this.S};l.Nl=function(a,b){Rj(this,b)};l.yk=function(){return this.ka};
l.zk=function(){var a=this.sa;this.H&=-258;this.C&&Tj(this.C);return a};l.Ql=function(a,b){if(this.H&8)switch(this.P){case 96:Uj(this,b);break;case 209:Vj(this,b);break;default:if(Uj(this,this.R&-17),this.C){a=this.C;var c=b,d=-1;switch(a.G||c){case 255:d=250;a.Pb=[];Wj(a,170);break;case 243:a.G&&(c=0);Wj(a,250);a.G=c;break;case 237:a.G&&(c=0),Wj(a,250),a.G=c}Xj(this,d)}}this.P=b;this.H&=-9};l.Ak=function(){return this.S&-209|(tc(this.A)&64?16:0)};l.Rl=function(a,b){Rj(this,b)};
l.Bk=function(){var a=this.H&255;this.H&256&&(this.H|=1,this.H&=-257);return a};
l.Pl=function(a,b){this.P=b;this.H|=8;a=0;240<=this.P&&(a=this.P^15,this.P=240);switch(this.P){case 32:Xj(this,this.R);break;case 173:Uj(this,this.R|16);break;case 174:Uj(this,this.R&-17);this.C&&Tj(this.C);break;case 170:this.C&&(this.C.Pb=[]);Uj(this,this.R|16);Xj(this,85);Vj(this,3);break;case 171:Xj(this,0);break;case 192:Xj(this,this.W);break;case 208:Xj(this,this.va);break;case 224:Xj(this,this.R&16?0:1);break;case 240:a&1&&xd(this.A)}};
function Uj(a,b){a.R=b;a.H=a.H&-5|b&4;a.C&&Sj(a.C,!!(b&8),!(b&16))}function Xj(a,b,c){0<=b&&(a.sa=b,c?a.H|=1:(a.H&=-2,a.H|=256))}function Vj(a,b){a.va=b;tb(a.ia,!!(b&2));b&1||xd(a.A)}function Yj(a,b){a.ca<Pe?(Re(a,1,4),a.ka|=1):a.R&16||a.H&257||(Xj(a,b,!0),Zj(a.C),Re(a,1,120))}l.Pk=function(){return this.da};l.em=function(a,b){this.da=b;this.ma=b&128?0:128};
l.Qk=function(a,b){a=this.da&63;var c;if(13>=a)if(c=this.B[a],10>a){var d=!1;4!=a&&5!=a||this.B[11]&2||(12>c?c=c?c:12:c=(c-=12)?c+128:140,d=!0);this.B[11]&4||(d&&128<c&&(c-=48),c=c%10|c/10<<4)}else 10==a&&(this.B[a]^=128);else c=this.B[a];null!=b&&12==a&&(this.B[a]&=15,c&128&&Qe(this,8),c&64&&this.B[11]&64&&bj(this));return c};
l.fm=function(a,b){a=this.da&63;var c=b^this.B[a],d;if(13>=a){if(d=b,10>a){var e=!1;this.B[11]&4||(d=10*(d>>4)+(d&15),e=!0);if(4==a||5==a)e&&23<d&&(d+=48),this.B[11]&2||(12>=d?d=12==d?0:d:(d-=116,d=24==d?12:d))}}else d=b;this.B[a]=d;11==a&&c&64&&b&64&&bj(this)};l.Fj=function(a,b){this.ma=b};l.pm=function(){};l.qm=function(){this.pd&&Le(this.pd)};
function cj(a,b){if(a.qa)try{void 0!==b?a.Oa=b:b=a.Oa&&a.A&&a.A.ea.Nb;var c=Math.round(1193181/Nj(a,2));if(20>c||2E4<c)b=!1;b?a.L?a.L.frequency.value=c:(a.L=a.qa.createOscillator(),a.L&&(a.L.type="number"==typeof a.L.type?1:"square",a.L.connect(a.qa.destination),a.L.frequency.value=c,"start"in a.L?a.L.start(0):a.L.noteOn(0))):a.L&&("stop"in a.L?a.L.stop(0):a.L.noteOff(0),a.L.disconnect(),delete a.L)}catch(d){a.Ba("AudioContext exception: "+d.message),a.qa=null}}
var Ji={0:function(){return nj(this,0,0)},1:function(){return pj(this,0,0)},2:function(){return nj(this,0,1)},3:function(){return pj(this,0,1)},4:function(){return nj(this,0,2)},5:function(){return pj(this,0,2)},6:function(){return nj(this,0,3)},7:function(){return pj(this,0,3)},8:function(){return vj(this,0)},13:function(){return this.G[0].jg},32:function(){return Fj(this,0)},33:function(){return this.gc[0].Vc},64:function(){return Jj(this,0,0)},65:function(){return Jj(this,0,1)},66:function(){return Jj(this,
0,2)},67:function(){return this.xa},129:function(){return Aj(this,0,2)},130:function(){return Aj(this,0,3)},131:function(){return Aj(this,0,1)},135:function(){return Aj(this,0,0)}},Li={96:U.prototype.ll,97:U.prototype.ml,98:U.prototype.nl,99:U.prototype.ol},Pi={96:U.prototype.zk,97:U.prototype.Ak,100:U.prototype.Bk,112:U.prototype.Pk,113:U.prototype.Qk,128:function(){return this.I[7]},132:function(){return this.I[0]},133:function(){return this.I[1]},134:function(){return this.I[2]},136:function(){return this.I[3]},
137:function(){return Aj(this,1,2)},138:function(){return Aj(this,1,3)},139:function(){return Aj(this,1,1)},140:function(){return this.I[4]},141:function(){return this.I[5]},142:function(){return this.I[6]},143:function(){return Aj(this,1,0)},160:function(){return Fj(this,1)},161:function(){return this.gc[1].Vc},192:function(){return nj(this,1,0)},194:function(){return pj(this,1,0)},196:function(){return nj(this,1,1)},198:function(){return pj(this,1,1)},200:function(){return nj(this,1,2)},202:function(){return pj(this,
1,2)},204:function(){return nj(this,1,3)},206:function(){return pj(this,1,3)},208:function(){return vj(this,1)},218:function(){return this.G[1].jg}},Ni={96:U.prototype.xk,97:U.prototype.wk,100:U.prototype.yk,102:function(){return this.D[0][1]},103:function(){return this.D[1][1]}},Ri={72:function(){return Jj(this,1,0)},73:function(){return Jj(this,1,1)},74:function(){return Jj(this,1,2)},75:function(){return this.za}},Ki={0:function(a,b){oj(this,0,0,b)},1:function(a,b){uj(this,0,0,b)},2:function(a,
b){oj(this,0,1,b)},3:function(a,b){uj(this,0,1,b)},4:function(a,b){oj(this,0,2,b)},5:function(a,b){uj(this,0,2,b)},6:function(a,b){oj(this,0,3,b)},7:function(a,b){uj(this,0,3,b)},8:function(a,b){this.G[0].hg=b},9:function(a,b){wj(this,0,b)},10:function(a,b){xj(this,0,b)},11:function(a,b){this.G[0].$b[b&3].mode=b},12:function(){this.G[0].Ib=0},13:function(){zj(this,0)},32:function(a,b){Gj(this,0,b)},33:function(a,b){Ij(this,0,b)},64:function(a,b){Mj(this,0,0,b)},65:function(a,b){Mj(this,0,1,b)},66:function(a,
b){Mj(this,0,2,b)},67:function(a,b){Oj(this,0,b)},129:function(a,b){Bj(this,0,2,b)},130:function(a,b){Bj(this,0,3,b)},131:function(a,b){Bj(this,0,1,b)},135:function(a,b){Bj(this,0,0,b)}},Mi={96:U.prototype.Cm,97:U.prototype.Dm,98:U.prototype.Em,99:U.prototype.Fm,160:U.prototype.Fj},Qi={96:U.prototype.Ql,97:U.prototype.Rl,100:U.prototype.Pl,112:U.prototype.em,113:U.prototype.fm,128:function(a,b){this.I[7]=b},132:function(a,b){this.I[0]=b},133:function(a,b){this.I[1]=b},134:function(a,b){this.I[2]=
b},136:function(a,b){this.I[3]=b},137:function(a,b){Bj(this,1,2,b)},138:function(a,b){Bj(this,1,3,b)},139:function(a,b){Bj(this,1,1,b)},140:function(a,b){this.I[4]=b},141:function(a,b){this.I[5]=b},142:function(a,b){this.I[6]=b},143:function(a,b){Bj(this,1,0,b)},160:function(a,b){Gj(this,1,b)},161:function(a,b){Ij(this,1,b)},192:function(a,b){oj(this,1,0,b)},194:function(a,b){uj(this,1,0,b)},196:function(a,b){oj(this,1,1,b)},198:function(a,b){uj(this,1,1,b)},200:function(a,b){oj(this,1,2,b)},202:function(a,
b){uj(this,1,2,b)},204:function(a,b){oj(this,1,3,b)},206:function(a,b){uj(this,1,3,b)},208:function(a,b){this.G[1].hg=b},210:function(a,b){wj(this,1,b)},212:function(a,b){xj(this,1,b)},214:function(a,b){this.G[1].$b[b&3].mode=b},216:function(){this.G[1].Ib=0},218:function(){zj(this,1)},240:U.prototype.pm,241:U.prototype.qm},Oi={96:U.prototype.Ol,97:U.prototype.Nl,160:U.prototype.Fj},Si={72:function(a,b){Mj(this,1,0,b)},73:function(a,b){Mj(this,1,1,b)},74:function(a,b){Mj(this,1,2,b)},75:function(a,
b){Oj(this,1,b)}};Ia(function(){for(var a=Za(document,"pcx86","chipset"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new U(d);Ya(d,c);mj(d)}});
function ak(a){Ma.call(this,"ROM",a,ak);this.B=null;this.H=a.addr;this.D=a.size;this.G=a.alias;this.I=a.file;this.C=a.notify;this.L=null;if(this.C&&(a=this.C.indexOf("["),0<a)){try{this.L=eval(this.C.substr(a))}catch(d){}this.C=this.C.substr(0,a)}if(this.I){a=this.I;var b=ha(ga(a));"json"!=b&&"hex"!=b&&(a=ta()+"/api/v1/dump?file="+this.I+"&format=bytes&decimal=true");var c=this;sa(a,null,!0,function(a,b,f){bk(c,a,b,f)})}}Pa(ak);ak.prototype.pc=function(a,b,c,d){this.ia=b;this.A=c;this.Ia=d;ck(this)};
ak.prototype.Ub=function(){this.K&&(this.Ia&&this.Ia.A(this.id,0,this.H>>>4,0,this.H,this.D,this.K),delete this.K);return!0};ak.prototype.Tb=function(){return!0};
function bk(a,b,c,d){if(d)a.Ba("Unable to load system ROM (error "+d+": "+b+")");else{Ra(a.Fe,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.data;if(f)a.B=f;else if(g)for(a.B=Array(4*g.length),d=c=0;c<g.length;c++)a.B[d++]=g[c]&255,a.B[d++]=g[c]>>8&255,a.B[d++]=g[c]>>16&255,a.B[d++]=g[c]>>24&255;else a.B=e;a.K=e.symbols;if(!a.B.length){r("Empty ROM: "+b);return}if(1==a.B.length){r(a.B[0]);return}}catch(h){a.Ba("ROM data error: "+h.message);return}else for(b=c.replace(/\n/gm,
" ").replace(/ +$/,"").split(" "),a.B=Array(b.length),e=0;e<b.length;e++)a.B[e]=ea(b[e],16);ck(a)}}
function ck(a){if(!ab(a))if(!a.I)t(a);else if(a.B&&a.ia){a.D||(a.D=a.B.length);if(a.B.length!=a.D)bb(a,"ROM size ("+fa(a.B.length,8,!0)+") does not match specified size ("+fa(a.D,8,!0)+")");else{var b;b=a.H;if(ub(a.ia,b,a.D,Hb)){for(var c=0;c<a.B.length;c++){var d=a.ia,e=b+c;d.R[(e&d.Fa)>>>d.da].nf(e&d.B,a.B[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.G?b.push(a.G):null!=a.G&&a.G.length&&(b=a.G);for(c=0;c<b.length;c++){var d=a,e=b[c],f=Eb(d.ia,d.H,d.D);Db(d.ia,e,d.D,f)}a.C&&((b=Ua(a.C,
a.id))?(c=a.B,d=a.L,5==b.Ra?dk(b,c,d||[12640,8752],8):b.Ra==ek&&dk(b,c,d||[14221,16269],8),t(b)):a.Ba("Unable to find component: "+a.C));delete a.B}}t(a)}}Ia(function(){for(var a=Za(document,"pcx86","rom"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new ak(d);Ya(d,c)}});function fk(a){Ma.call(this,"RAM",a,fk);this.C=a.addr;this.B=a.size;this.H=a.test;this.G=!!this.B;this.D=!1}Pa(fk);l=fk.prototype;l.pc=function(a,b,c,d){this.ia=b;this.A=c;this.Ia=d;this.S=jb(a,"ChipSet");t(this)};
l.Ub=function(a,b){return!b&&(this.reset(),a&&this.controller&&!this.restore(a))?!1:!0};l.Tb=function(a){return a&&this.controller?this.save():!0};
l.reset=function(){if(!this.C&&!this.G&&this.S){var a=1024*Xi(this.S);this.B&&a!=this.B&&(Gb(this.ia,this.C,this.B),this.D=!1);this.B=a}!this.D&&this.B&&ub(this.ia,this.C,this.B,1)&&(this.D=!0,"ramCPQ"==this.Td&&(this.controller=new gk(this),ub(this.ia,hk,4,4,this.controller)));if(this.D){if(this.H||Nb(this.ia,1138,4660),"ramCPQ"!=this.Td&&this.S&&(a=this.S,a.B)){var b=1048576>this.C?21:23,c=a.B[b]|a.B[b+1]<<8,c=c+(this.B>>10);a.B[b]=c&255;a.B[b+1]=c>>8;aj(a)}}else r("No RAM allocated")};
l.save=function(){var a=new ae(this);this.controller&&a.set(0,this.controller.save());return a.data()};l.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function gk(a){this.G=a;this.C=ik;this.D=jk;this.B=kk;this.A=null}var hk=-2134900736,ik=65535,jk=2575,kk=2,lk=[null,0],mk=[function(a){return this.controller.Jb(a)},null,null,function(a,b){this.controller.Mc(a,b)},null,null];l=gk.prototype;l.save=function(){return[this.C,this.B]};
l.restore=function(a){this.Mc(0,a[0]&255);this.Mc(2,a[1]&255);return!0};l.Jb=function(a){var b=255;2>a?b=a&1?this.D>>8:this.D&255:4>a&&(b=a&1?this.B>>8:this.B&255);return b};l.Mc=function(a,b){if(a)2==a&&(this.B=this.B&-256|b);else if(b!=(this.C&255)){a=this.G.ia;if(b&1)this.A&&(Db(a,917504,131072,this.A),this.A=null);else{this.A||(this.A=Eb(a,917504,131072));var c=Eb(a,16646144,131072);Db(a,917504,131072,c,b&2?1:Hb)}this.C=this.C&-256|b}};l.ui=function(){return lk};l.rg=function(){return mk};
Ia(function(){for(var a=Za(document,"pcx86","ram"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new fk(d);Ya(d,c)}});function nk(a){Ma.call(this,"Keyboard",a,nk);ok(this,a.model);this.Y=za("Mobi");this.W=za("MSIE");this.R=0;this.P=this.og=!1;this.B=[];this.da=50;t(this)}Pa(nk);
var pk=["US83","US84","US101"],qk=n.Sj+4E3,rk={3016:1,1016:2,1017:8,1018:32,1091:128,1093:64,1224:128,1020:512,1144:1024,1145:2048},sk={TAB:1009,ESC:1027,F1:1112,F2:1113,F3:1114,F4:1115,F5:1116,F6:1117,F7:1118,F8:1119,F9:1120,F10:1121,LEFT:1037,UP:1038,RIGHT:1039,DOWN:1040,SYSREQ:4027,CTRL_C:qk,CTRL_BREAK:4008,CTRL_ALT_DEL:4046,CTRL_ALT_INS:4045,CTRL_ALT_ENTER:4013},tk={esc:1027,1:n["1"],2:n["2"],3:n["3"],4:n["4"],5:n["5"],6:n["6"],7:n["7"],8:n["8"],9:n["9"],0:n["0"],"-":n["-"],"=":n["="],bs:1008,
tab:1009,q:n.Q,w:n.Zh,e:n.E,r:n.Ph,t:n.Th,y:n.ci,u:n.Vh,i:n.Ch,o:n.Kh,p:n.Mh,"[":n["["],"]":n["]"],enter:13,ctrl:1017,a:n.Kd,s:n.Rh,d:n.yh,f:n.zh,g:n.Ah,h:n.Bh,j:n.Dh,k:n.Eh,l:n.Fh,";":n[";"],quote:n["'"],"`":n["`"],shift:1016,"\\":n["\\"],z:n.vf,x:n.ai,c:n.xh,v:n.Xh,b:n.wh,n:n.Ih,m:n.Gh,",":n[","],".":n["."],"/":n["/"],"right-shift":3016,prtsc:1044,alt:1018,space:1032,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,"num-lock":1144,"scroll-lock":1145,
"num-home":1036,"num-up":1038,"num-pgup":1033,"num-sub":1109,"num-left":1037,"num-center":1101,"num-right":1039,"num-add":1107,"num-end":1035,"num-down":1040,"num-pgdn":1034,"num-ins":1045,"num-del":1046,sysreq:84},uk={"caps-lock":512,"num-lock":1024,"scroll-lock":2048},X={1027:1};X[n["1"]]=2;X[n["!"]]=10754;X[n["2"]]=3;X[n["@"]]=10755;X[n["3"]]=4;X[n["#"]]=10756;X[n["4"]]=5;X[n.$]=10757;X[n["5"]]=6;X[n["%"]]=10758;X[n["6"]]=7;X[n["^"]]=10759;X[n["7"]]=8;X[n["&"]]=10760;X[n["8"]]=9;X[n["*"]]=10761;
X[n["9"]]=10;X[n["("]]=10762;X[n["0"]]=11;X[n[")"]]=10763;X[n["-"]]=12;X[n._]=10764;X[n["="]]=13;X[n["+"]]=10765;X[1008]=14;X[1009]=15;X[n.q]=16;X[n.Q]=10768;X[n.Tm]=17;X[n.Zh]=10769;X[n.e]=18;X[n.E]=10770;X[n.r]=19;X[n.Ph]=10771;X[n.t]=20;X[n.Th]=10772;X[n.y]=21;X[n.ci]=10773;X[n.Rm]=22;X[n.Vh]=10774;X[n.sk]=23;X[n.Ch]=10775;X[n.Ml]=24;X[n.Kh]=10776;X[n.p]=25;X[n.Mh]=10777;X[n["["]]=26;X[n["{"]]=10778;X[n["]"]]=27;X[n["}"]]=10779;X[13]=28;X[1017]=29;X[n.Md]=30;X[n.Kd]=10782;X[n.Om]=31;X[n.Rh]=10783;
X[n.d]=32;X[n.yh]=10784;X[n.pk]=33;X[n.zh]=10785;X[n.qk]=34;X[n.Ah]=10786;X[n.rk]=35;X[n.Bh]=10787;X[n.Dl]=36;X[n.Dh]=10788;X[n.k]=37;X[n.Eh]=10789;X[n.El]=38;X[n.Fh]=10790;X[n[";"]]=39;X[n[":"]]=10791;X[n["'"]]=40;X[n['"']]=10792;X[n["`"]]=41;X[n["~"]]=10793;X[1016]=42;X[n["\\"]]=43;X[n["|"]]=10795;X[n.z]=44;X[n.vf]=10796;X[n.x]=45;X[n.ai]=10797;X[n.ek]=46;X[n.xh]=10798;X[n.Sm]=47;X[n.Xh]=10799;X[n.dk]=48;X[n.wh]=10800;X[n.n]=49;X[n.Ih]=10801;X[n.Hl]=50;X[n.Gh]=10802;X[n[","]]=51;X[n["<"]]=10803;
X[n["."]]=52;X[n[">"]]=10804;X[n["/"]]=53;X[n["?"]]=10805;X[3016]=54;X[1044]=55;X[1018]=56;X[1032]=57;X[1020]=58;X[1112]=59;X[1113]=60;X[1114]=61;X[1115]=62;X[1116]=63;X[1117]=64;X[1118]=65;X[1119]=66;X[1120]=67;X[1121]=68;X[1144]=69;X[1145]=70;X[1036]=71;X[1038]=72;X[1033]=73;X[1109]=74;X[1037]=75;X[1101]=76;X[1039]=77;X[1107]=78;X[1035]=79;X[1040]=80;X[1034]=81;X[1045]=82;X[1046]=83;X[4027]=84;X[1122]=87;X[1123]=88;X[1091]=91;X[1093]=93;X[1224]=91;X[qk]=7470;X[4008]=7494;X[4046]=3677523;
X[4045]=3677522;X[4013]=3677468;l=nk.prototype;
l.zb=function(a,b,c,d){var e=this,f=a+"-"+b;if(void 0===this.la[f])switch(b){case "kbd":case "screen":return c.onkeydown=function(a){return vk(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.D="";var b=!X[a]||!!(e.bc&128);b||wk(e,a,!0);return b},c.onkeyup=function(a){return vk(e,a,!1)},!0;case "caps-lock":return this.la[f]=c,c.onclick=function(){e.ba&&uc(e.ba);wk(e,1020,!0)},!0;case "num-lock":return this.la[f]=c,c.onclick=function(){e.ba&&uc(e.ba);wk(e,1144,!0)},!0;case "scroll-lock":return this.la[f]=
c,c.onclick=function(){e.ba&&uc(e.ba);wk(e,1145,!0)},!0;default:var g=b.toUpperCase().replace(/-/g,"_");if(void 0!==sk[g]&&"button"==a)return this.la[f]=c,c.onclick=function(a,b,c){return function(){a.ba&&uc(a.ba);xk(a,c,!0);wk(a,c,!0)}}(this,g,sk[g]),!0;if(void 0!==tk[b])return this.R++,this.la[f]=c,a=function(a,b,c){return function(){wk(a,c)}}(this,b,tk[b]),b=function(a,b,c){return function(){yk(a,c)}}(this,b,tk[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=
c.onmouseout=b),!0;if(d)return this.la[f]=c,c.onclick=function(){e.ba&&uc(e.ba);d&&!e.D&&(e.D=d,zk(e,300))},!0}return!1};function Ak(a,b,c){if(a.R){for(var d in p)if(b==p[d]){b=+d;(d=da[d])&&(b=d);break}for(var e in tk)if((d=tk[e]==b)||(d=b,d>=n.Md&&d<=n.z&&(d-=n.Md-n.Kd),d=tk[e]==d),d){(a=a.la["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}l.pc=function(a,b,c,d){this.ba=a;this.ia=b;this.A=c;this.Ia=d;this.S=jb(a,"ChipSet")};
function ok(a,b){var c=0;a.ca=null;"string"==typeof b&&(a.ca=b.toUpperCase(),c=pk.indexOf(a.ca),0>c&&(c=0));if(b=pk[c])a.Z=parseInt(b.substr(2),10)}function Sj(a,b,c){a.K!==c&&(a.K=a.L=c)&&(a.H=!0);a.I!==b&&(a.I=b)&&!a.L&&Zj(a,!0);a.I&&a.L&&(a.Pb=[],Wj(a,170),a.L=!1)}function Wj(a,b){a.S&&(a.Pb.unshift(b),a.H=!0,Yj(a.S,b))}function Tj(a){var b;a.Pb.length&&a.H&&(b=a.Pb[0],a.S&&Yj(a.S,b))}function Qj(a){var b=0;a.Pb.length&&(b=a.Pb[0]);return b}
function Zj(a,b){0<a.Pb.length&&(a.Pb.shift(),(a.H=b)&&a.Pb.length&&a.S&&Yj(a.S,a.Pb[0]))}l.Ub=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};l.Tb=function(a){return a?this.save():!0};l.reset=function(){if(!this.ca&&this.S)switch(this.S.ca){case 5150:case 5160:ok(this,pk[0]);break;default:ok(this,pk[1])}Bk(this);this.bc=this.C=0;this.Pb=[];this.H=!0;this.D=""};l.save=function(){var a=new ae(this),b=[];b[0]=this.K;b[1]=this.I;a.set(0,b);return a.data()};
l.restore=function(a){return Bk(this,a[0])};function Bk(a,b){var c=0;b||(b=[]);a.K=a.H=b[c++];a.I=b[c];a.G=0;return!0}function zk(a,b){if(0<a.D.length){var c=a.D.charCodeAt(0);10==c&&(c=13);a.D=a.D.substr(1);wk(a,c,!0)}0<a.D.length&&setTimeout(function(a){return function(){zk(a,b)}}(a),b)}
function xk(a,b,c,d){if(X[b]){var e=Math.floor(b/1E3)&2;if(b=rk[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.C:a.bc)&b):d||b&255&&(b=255);if(c){a.C&=~b;d&&(a.C|=b);c=b;var f,g;for(g in uk)d="led-"+g,e=uk[g],c&&c!=e||!(f=a.la[d])||(f.style.backgroundColor=a.C&e?"#00ff00":"#000000")}else a.bc&=~b,d&&(a.bc|=b);return!0}}return!1}
function wk(a,b,c){if(X[b]&&a.A&&a.A.ea.Nb){rk[b]&&a.B.length&&0<a.B[0].ad&&(a.B[0].ad=0);for(var d,e=0;e<a.B.length;e++)if(d=a.B[e],d.Zd==b){if(!c||0<=d.ad){e=-1;break}0<e&&(0<a.B[0].ad&&(a.B[0].ad=0),a.B.splice(e,1));break}0>e||(e==a.B.length&&(d={},d.Zd=b,d.bc=a.bc,Ak(a,b,!0),e++),0<e&&a.B.splice(0,0,d),d.Pe=!0,d.ad=c?-1:rk[b]?0:1,Ck(a,d))}}
function yk(a,b,c){if(!X[b]||!(c||a.A&&a.A.ea.Nb))return!1;for(var d=!1,e=0;e<a.B.length;e++){var f=a.B[e];if(f.Zd==b||f.Zd==p[b]){a.B.splice(e,1);f.Qj&&clearTimeout(f.Qj);f.Pe&&!c&&Dk(a,f.Zd,!1);Ak(a,b,!1);d=!0;break}}!a.B.length&&a.P&&(xk(a,1020),a.P=!1);return d}function Ck(a,b){if(!a.A||!a.A.ea.Nb)yk(a,b.Zd,!0);else if(Dk(a,b.Zd,b.Pe)&&b.ad){var c;if(0>b.ad){if(!b.Pe){yk(a,b.Zd);return}b.Pe=!1;c=a.da}else c=1==b.ad++?500:100;b.Qj=setTimeout(function(a){return function(){Ck(a,b)}}(a),c)}}
function Ek(a,b,c){var d=b;if(b>=n.Kd&&b<=n.vf)!(a.bc&515)==c&&(d=b+(n.Md-n.Kd));else if(b>=n.Md&&b<=n.z)!!(a.bc&515)==c&&(d=b-(n.Md-n.Kd));else if(!!(a.bc&3)==c){if(a=p[b])d=a}else if(a=da[b])d=a;return d}l.Tf=function(a){a||(this.bc&=-256)};
function vk(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,h=Ek(a,g,!0);a.og&&h==n["`"]&&(g=h=27);if(X[g+1E3])if(h+=1E3,2==b.location&&(h+=2E3),xk(a,h,!1,c)){if(20==g||144==g||145==g)a.W||(c=e=!0);if(!(c||91!=g&&93!=g))for(var k=0;k<a.B.length;k++){var m=a.B[k];m.Pe=!1;0<m.ad&&(m.ad=0)}}else 8==g&&8==(a.bc&40)&&(h=4008),d=!1;else if(X[h]&&a.bc&60&&(d=!1),d&&c||a.bc&192)f=!0;d||b.preventDefault();f||a.Y&&d||(c?wk(a,h,e):yk(a,h)||(b=Ek(a,g,!1),b!=h&&yk(a,b)));return d}
function Dk(a,b,c){var d=!1;xk(a,b,!0,c);var e=X[b]||X[b+1E3];if(void 0!==e){14==e&&40==(a.bc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.Z)return!1;d.push(f|(c?0:128));for(b=b>=n.Kd&&b<=n.vf||b>=n.Md&&b<=n.z;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.C&3||a.C&512&&b||(g=h):29==h?a.C&12||(g=h):56==h?a.C&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.Pb&&(20>e.Pb.length?(e.Pb.push(f),1==e.Pb.length&&e.S&&Yj(e.S,f)):20==
e.Pb.length&&e.Pb.push(255));d=!0}return d}Ia(function(){for(var a=Za(document,"pcx86","keyboard"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new nk(d);Ya(d,c)}});
function Y(a,b,c,d,e){var f=this;this.bd=za("Gecko/");var g=["","moz","ms","webkit"];Ma.call(this,"Video",a,Y);this.ca=a.model;var h=Fk[this.ca]||Fk.mda;this.Ra=h[0];this.Wc=a.memory||0;this.pd=a.switches;this.ka=a.mode;if(null==this.ka||null==Gk[this.ka])this.ka=h[1];this.Ob=a.charCols;this.wc=a.charRows;if(void 0===this.Ob||void 0===this.wc)this.Ob=Gk[this.ka][0],this.wc=Gk[this.ka][1];this.da=a.screenWidth;this.pa=a.screenHeight;this.cd=a.scale;this.ae=12<=Math.round(this.da/this.Ob);this.Y=b;
this.R=c;this.G=(this.ce=d)||b||null;b=a.smoothing;(c=Aa("smoothing"))&&(b="true"==c);if(null!=b)for(c=0;c<g.length;c++)if(d=(d=g[c])?d+"ImageSmoothingEnabled":"imageSmoothingEnabled",void 0!==this.R[d]){this.R[d]=b;break}this.qd=a.touchScreen;this.xc=Hk;this.P=null;this.$d=a.autoLock;this.cb=this.Fb=0;this.xa=[];this.oa=Array(this.Ra==ek?256:16);this.La=!1;if(this.W=e)if(this.W.me=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.W.me){for(c=0;c<g.length;c++)if(d=
g[c]+"fullscreenchange","on"+d in document){document.addEventListener(d,function(){Ik(f,document.fullscreenElement||document.msFullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement?!0:!1)},!1);break}for(c=0;c<g.length;c++)if(d=g[c]+"fullscreenerror","on"+d in document){document.addEventListener(d,function(){Ik(f,null)},!1);break}}this.G&&(this.G.onfocus=function(){return f.Tf(!0)},this.G.onblur=function(){return f.Tf(!1)},this.G.Rd=this.G.requestPointerLock||this.G.mozRequestPointerLock||
this.G.webkitRequestPointerLock,this.G.Rj=this.G.exitPointerLock||this.G.mozExitPointerLock||this.G.webkitExitPointerLock,this.G.Rd&&(e=function(){f.ef(document.pointerLockElement===f.G||document.mozPointerLockElement===f.G||document.webkitPointerLockElement===f.G)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",e,!1):"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",e,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",
e,!1)));if(a=a.fontROM)"json"!=ha(a)&&(a=ta()+"/api/v1/dump?file="+a+"&format=bytes"),sa(a,null,!0,function(a,b,c){Jk(f,a,b,c)})}Pa(Y);
var ek=7,Fk={mda:[1,7],cga:[3,3],ega:[5,3],vga:[ek,3]},Kk={2:{Pf:15700,Of:208,Uf:85,Vf:96},3:{Pf:18432,Of:364,Uf:85,Vf:96},4:{Pf:21850,Of:364,Uf:85,Vf:96},7:{Pf:16700,Of:480,Uf:85,Vf:83}},Lk={6:[1,3,!0],7:[2,3,!0],8:[6,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[6,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},Gk=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192],[80,25,1,0,1]];Gk[13]=[320,200,8];Gk[14]=[640,200,8];Gk[15]=[640,350,8];Gk[16]=[640,350,8];
Gk[17]=[640,480,8];Gk[18]=[640,480,8];Gk[19]=[320,200,1];Gk[20]=[320,240,4];Gk[21]=[320,400,4];Gk[0]=Gk[1];Gk[2]=Gk[3];Gk[5]=Gk[4];
var Mk=[[0,0,0,255],[127,192,127,255],[127,192,127,255],[127,255,127,255],[127,255,127,255]],Nk=[0,1,2,2,2,2,2,2,0,3,4,4,4,4,4,4],Ok=[[0,0,0,255],[0,0,170,255],[0,170,0,255],[0,170,170,255],[170,0,0,255],[170,0,170,255],[170,85,0,255],[170,170,170,255],[85,85,85,255],[85,85,255,255],[85,255,85,255],[85,255,255,255],[255,85,85,255],[255,85,255,255],[255,255,85,255],[255,255,255,255]],Pk=[2,4,6],Qk=[3,5,7],Rk=[0,1,2,3,4,5,20,7,56,57,58,59,60,61,62,63],Sk=[0,255,65280,65535,16711680,16711935,16776960,
16777215,-16777216,-16776961,-16711936,-16711681,-65536,-65281,-256,-1],Tk=[0];Tk[128]=1;Tk[32768]=2;Tk[32896]=3;Tk[8388608]=4;Tk[8388736]=5;Tk[8421376]=6;Tk[8421504]=7;Tk[-2147483648]=8;Tk[-2147483520]=9;Tk[-2147450880]=10;Tk[-2147450752]=11;Tk[-2139095040]=12;Tk[-2139094912]=13;Tk[-2139062272]=14;Tk[-2139062144]=15;
function Uk(a,b,c,d){if(void 0!==b&&(!c||c.length)){this.video=a;var e=Vk[b],f=a.ma||e[5];if(!c||6>c.length)c=[!1,0,null,null,0,Array(5>b?Wk:Xk)];this.Ra=b;this.cb=e[2];this.Fb=e[3];this.Wc=d||e[4];65536<=this.Wc&&720896<=this.cb&&(this.Fb=Math.min(this.Wc>>2,32768));this.cc=c[0];this.Lc=c[1];this.kf=c[2];this.aa=c[3];this.sc=c[4]&255;this.Wf=c[4]>>8&255;this.ab=c[5];this.vg=Wk;if(5<=b){this.vg=Xk;(b=c[6])||(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,[this.cb,this.Fb,this.Wc],Array(this.Wc>>
2),-2147478512,0,-1,0,-1,0,-1,0,0,0,0,1,255,0,0,0,Array(256)]);this.Oe=b[0];this.Xd=b[1];this.Kc=b[2];this.qh=b[3];this.lf=b[4];this.Yf=b[5];this.Ee=b[6];this.De=b[7];this.Hj=b[8];this.Ij=b[9];this.Ce=b[10];this.Hd=b[11];this.ob=b[12];d=b[13];"number"==typeof d&&(d=[this.cb,this.Fb,d]);this.cb=d[0];this.Fb=d[1];d=this.Wc>>2;if((this.td=b[14])&&this.td.length<d){for(var e=this.td,g=0,h=Array(d),k=0;k<e.length-1;){for(var m=e[k++],q=e[k++];m--;)h[g]=q,g+=2;g==d&&(g=1)}this.td=h}(d=b[15])&&(d&-2147483648?
d&=2147483647:d=Yk[d&65280]|Yk[d&255]);this.$f(d);this.lh=b[16];this.$a=b[17];this.Hc=b[18];this.tb=b[19];this.df=b[20];this.md=b[21];this.Dd=b[22];this.wg=b[23];this.xg=b[24];this.dd=b[25];this.mh=this.ye=0;this.Ra==ek&&(this.rh=b[26],this.ph=b[27],this.ed=b[28],this.Bc=b[29],this.Xf=b[30],this.Be=b[31])}f=Kk[f]||Kk[3];this.yg=a.A.T.Zc/f.Pf|0;this.Jl=this.yg*f.Uf/100|0;this.Bg=this.yg*f.Of|0;this.Ll=this.Bg*f.Vf/100|0;this.Cg=c[7]||0}}var Wk=18,Xk=25,Yk=[,,1024,5120];Yk[16]=1280;Yk[512]=0;
Yk[1024]=32;Yk[1536]=96;Yk[2560]=160;Yk[3584]=224;Yk[768]=16;Yk[4096]=1;Yk[8192]=2;Yk[24576]=98;Yk[40960]=162;Yk[57344]=226;var Zk=[];Zk[1024]=function(a){a+=this.H;return(this.controller.ob=this.V[a])>>this.controller.lh&255};Zk[17408]=function(a){return(this.controller.ob=this.V[(a&-4)+this.H])>>((a&3)<<3)&255};Zk[5120]=function(a){a+=this.H;var b=this.controller.ob=this.V[a&-2];return(a&1?b>>8:b)&255};
Zk[1280]=function(a){a+=this.H;a=this.controller.ob=this.V[a];for(var b=this.controller.xg,c=this.controller.wg&b,d=0,e=128;e;)(a&b)==c&&(d|=e),c>>>=1,b>>>=1,e>>=1;return d};Zk[0]=function(a,b){a+=this.H;b=(b|b<<8|b<<16|b<<24)&this.controller.md|this.controller.Dd;b=b&this.controller.tb|this.controller.ob&~this.controller.tb;b=b&this.controller.$a|this.V[a]&~this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};
Zk[32]=function(a,b){a+=this.H;b=b>>this.controller.Hc|b<<8-this.controller.Hc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.md|this.controller.Dd;b=b&this.controller.tb|this.controller.ob&~this.controller.tb;b=b&this.controller.$a|this.V[a]&~this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};
Zk[96]=function(a,b){a+=this.H;b=b>>this.controller.Hc|b<<8-this.controller.Hc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.md|this.controller.Dd;b&=this.controller.ob;b=b&this.controller.tb|this.controller.ob&~this.controller.tb;b=b&this.controller.$a|this.V[a]&~this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};
Zk[160]=function(a,b){a+=this.H;b=b>>this.controller.Hc|b<<8-this.controller.Hc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.md|this.controller.Dd;b|=this.controller.ob;b=b&this.controller.tb|this.controller.ob&~this.controller.tb;b=b&this.controller.$a|this.V[a]&~this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};
Zk[224]=function(a,b){a+=this.H;b=b>>this.controller.Hc|b<<8-this.controller.Hc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.md|this.controller.Dd;b^=this.controller.ob;b=b&this.controller.tb|this.controller.ob&~this.controller.tb;b=b&this.controller.$a|this.V[a]&~this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};Zk[4]=function(a,b){var c=(a&-4)+this.H;a=(a&3)<<3;b=b<<a&this.controller.$a|this.V[c]&~(255<<a&this.controller.$a);this.V[c]!=b&&(this.V[c]=b,this.Ha=!0)};
Zk[16]=function(a,b){a+=this.H;var c=a&-2;b=(b|b<<8|b<<16|b<<24)&this.controller.tb|this.controller.ob&~this.controller.tb;a=this.controller.$a&(c==a?16711935:-16711936);b=b&a|this.V[c]&~a;this.V[c]!=b&&(this.V[c]=b,this.Ha=!0)};Zk[1]=function(a){a+=this.H;var b=this.V[a]&~this.controller.$a|this.controller.ob&this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};
Zk[17]=function(a){a+=this.H;var b=a&-2;a=this.controller.$a&(b==a?16711935:-16711936);a=this.V[b]&~a|this.controller.ob&a;this.V[b]!=a&&(this.V[b]=a,this.Ha=!0)};Zk[2]=function(a,b){a+=this.H;b=Sk[b&15];b=b&this.controller.tb|this.controller.ob&~this.controller.tb;b=b&this.controller.$a|this.V[a]&~this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};
Zk[98]=function(a,b){a+=this.H;b=Sk[b&15];b&=this.controller.ob;b=b&this.controller.tb|this.controller.ob&~this.controller.tb;b=b&this.controller.$a|this.V[a]&~this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};Zk[162]=function(a,b){a+=this.H;b=Sk[b&15];b|=this.controller.ob;b=b&this.controller.tb|this.controller.ob&~this.controller.tb;b=b&this.controller.$a|this.V[a]&~this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};
Zk[226]=function(a,b){a+=this.H;b=Sk[b&15];b^=this.controller.ob;b=b&this.controller.tb|this.controller.ob&~this.controller.tb;b=b&this.controller.$a|this.V[a]&~this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};Zk[3]=function(a,b){a+=this.H;b=b>>this.controller.Hc|b<<8-this.controller.Hc&255;b=(b|b<<8|b<<16|b<<24)&this.controller.tb;b=this.controller.df&b|this.controller.ob&~b;b=b&this.controller.$a|this.V[a]&~this.controller.$a;this.V[a]!=b&&(this.V[a]=b,this.Ha=!0)};
function $k(a){var b=[];if(void 0!==a.Ra){b[0]=a.cc;b[1]=a.Lc;b[2]=a.kf;b[3]=a.aa;b[4]=a.sc|a.Wf<<8;b[5]=a.ab;if(5<=a.Ra){var c=[];c[0]=a.Oe;c[1]=a.Xd;c[2]=a.Kc;c[3]=a.qh;c[4]=a.lf;c[5]=a.Yf;c[6]=a.Ee;c[7]=a.De;c[8]=a.Hj;c[9]=a.Ij;c[10]=a.Ce;c[11]=a.Hd;c[12]=a.ob;c[13]=[a.cb,a.Fb,a.Wc];var d;if(d=a.td){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 k=d[h],m=h+2;m<d.length&&d[m]===k;)m+=2;f[e++]=m-h>>1;f[e++]=k;h=m}f.length<d.length&&(d=f)}c[14]=d;c[15]=a.ug|-2147483648;
c[16]=a.lh;c[17]=a.$a;c[18]=a.Hc;c[19]=a.tb;c[20]=a.df;c[21]=a.md;c[22]=a.Dd;c[23]=a.wg;c[24]=a.xg;c[25]=a.dd;a.Ra==ek&&(c[26]=a.rh,c[27]=a.ph,c[28]=a.ed,c[29]=a.Bc,c[30]=a.Xf,c[31]=a.Be);b[6]=c}b[7]=a.Cg}return b}Uk.prototype.ui=function(a){return[this.td,a-this.cb]};Uk.prototype.rg=function(){return this.A};
Uk.prototype.$f=function(a){if(null!=a&&a!=this.ug){var b=a&65280,c=Zk[b];c||b&4096&&(c=Zk[4096]);var b=a&255,d=Zk[b];d||b&16&&(d=Zk[16]);this.A||(this.A=Array(6));this.A[0]=c;this.A[1]=d;this.ug=a}};
function al(a,b){var c=a.ab[b];if(null!=c&&5<=a.Ra){var d=0,e=0,f=0;switch(b){case 6:d=1;a.Ra==ek&&(e=32);break;case 10:5==a.Ra&&(d=32);break;case 16:d=4;a.Ra==ek&&(e=128);break;case 18:d=2;a.Ra==ek&&(e=64);break;case 21:d=8;a.Ra==ek&&(f=32);break;case 24:d=16,a.Ra==ek&&(f=64)}d&&(c|=a.ab[7]&d?256:0,c|=a.ab[7]&e?512:0,c|=a.ab[9]&f?512:0)}return c}var Vk=[,["MDA",948,720896,4096,0,3],,["CGA",980,753664,16384,0,2],,["EGA",980,753664,16384,65536,4]];Vk[ek]=["VGA",980,753664,16384,262144,7];var Hk=0;
l=Y.prototype;
l.pc=function(a,b,c,d){this.ia=b;this.A=c;this.Ia=d;c=(c=Fk[this.ca])&&c[0];3!==c&&(Pb(b,this,bl),Rb(b,this,cl));1!==c&&(Pb(b,this,dl),Rb(b,this,el));5<=this.Ra&&(Pb(b,this,fl),Rb(b,this,gl));this.Ra==ek&&(Pb(b,this,hl),Rb(b,this,il));if((this.C=jb(a,"Keyboard"))&&this.Y){for(var e in this.la)0<e.indexOf("lock")&&this.C.zb("led",e,this.la[e]);this.C.zb(this.ce?"textarea":"canvas","screen",this.G)}this.Bb=9;(this.S=jb(a,"ChipSet"))&&this.pd&&5==this.Ra&&(this.Bb=Ai(this.pd,this.Bb));"mouse"==this.qd?
(this.P=jb(a,"Mouse"))&&jl(this,2):"keygrid"==this.qd&&this.C&&jl(this,1)};l.zb=function(a,b,c){var d=this;if(!this.la[b])switch(this.la[b]=c,b){case "fullScreen":return this.W&&this.W.me?c.onclick=function(){d.me()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.Ld=c.textContent,this.G&&this.G.Rd?c.onclick=function(){d.Rd(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){kl(d,!0)},!0}return!1};
l.me=function(){var a=!1;if(this.W){if(this.W.me){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.da/this.pa;b>c&&(a=Math.round(c/b*100)+"%")}this.bd?(this.Y.style.width=a,this.Y.style.width=a,this.Y.style.display="block",this.Y.style.margin="auto"):(this.W.style.width=a,this.W.style.height="auto");this.W.style.backgroundColor="black";this.W.me();a=!0}this.G&&this.G.focus()}return a};
function Ik(a,b){!b&&a.W&&(a.bd?a.Y.style.width=a.Y.style.height="":a.W.style.width=a.W.style.height="");a.C&&(a.C.og=b)}l.Rd=function(a){var b=!1;this.G&&(a?this.G.Rd&&(this.G.Rd(),this.P&&this.P.ef(!0),b=!0):this.G.Rj&&(this.G.Rj(),this.P&&this.P.ef(!1),b=!0),this.G&&this.G.focus());return b};l.ef=function(a){this.P&&(this.P.ef(a),this.C&&(this.C.og=a));var b=this.la.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Ld)};
function jl(a,b){var c=a.G;c&&!a.xc&&(c.addEventListener("touchstart",function(b){ll(a,b,!0)},!1),c.addEventListener("touchmove",function(b){ll(a,b)},!0),c.addEventListener("touchend",function(b){ll(a,b,!1)},!1),a.xc=b,a.rb=a.ub=a.rd=-1,a.vc=!1,a.Gb=null,a.oc=!1,a.be=function(){a.oc=!0;a.P.le(ml,!0)})}l.Tf=function(a){this.C&&this.C.Tf(a)};
function ll(a,b,c){var d,e,f=0,g=0;e=a.Y;do isNaN(e.offsetLeft)||(f+=e.offsetLeft,g+=e.offsetTop);while(e=e.offsetParent);var h=a.da/a.Y.offsetWidth,k=a.pa/a.Y.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-f)*h;e=(e-g)*k;if(1==a.xc)d=d/(a.da/3)|0,e=e/(a.pa/3)|0,1!=e?e?wk(a.C,1040,!0):wk(a.C,1038,!0):1!=d&&(d?wk(a.C,1039,!0):wk(a.C,1037,!0));else if(a.P){g=a.vc;f=b.timeStamp-a.rd;!0===c?(a.vc=500<f,a.rd=b.timeStamp,
a.Gb=setTimeout(a.be,500)):null!=a.Gb&&(clearTimeout(a.Gb),a.Gb=null);void 0===c&&(a.vc=!1);g||b.preventDefault();if(!1===c){a.oc?(a.P.le(ml,!1),a.oc=!1,b=!0):b=!1;if(b)return;if(200>f){a.P.le(ml,!0);a.P.le(ml,!1);return}}if(c||0>a.rb||0>a.ub)a.rb=d,a.ub=e;c=Math.round(d-a.rb);b=Math.round(e-a.ub);a.rb=d;a.ub=e;a.P.tg(c,b,a.rb,a.ub)}}l.Ub=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Tb=function(a){return a?this.save():!0};
l.reset=function(){var a=!0,b=0;this.S&&(b=+Yi(this.S,Ei,void 0));this.ca||(this.Ra=3==b?1:3);this.ka=3;switch(this.Ra){case ek:b=7;break;case 5:var c=Lk[this.Bb];c&&(b=c[0]);b||(b=4);break;case 1:b=3;this.ka=7;break;default:b=2}this.ma!==b&&(this.ma=b,a=!0);this.D=null;this.Z=this.Zb=new Uk(this,1);this.L=this.Cb=new Uk(this,3);5>this.Ra?this.B=new Uk:(this.B=new Uk(this,this.Ra,null,this.Wc),nl(this));ol(this);this.va=null;this.Ea=this.ga=-1;this.za=0;pl(this,this.ka);if(this.D.cb&&a){a=this.D.cb+
this.fb;for(b=this.D.cb;b<a;b+=2){var d=65536*Math.random()|0;4==this.ma||7==this.ma?(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);Nb(this.ia,b,c|d<<8)}kl(this,!0)}};function nl(a){a.B.lf&1?(a.Z=a.Zb,a.L=a.B):(a.Z=a.B,a.L=a.Cb)}l.save=function(){var a=new ae(this);a.set(0,$k(this.Zb));a.set(1,$k(this.Cb));a.set(2,[this.ma,this.ka,this.va]);a.set(3,$k(this.B));return a.data()};
l.restore=function(a){var b=a[2];this.ma=b[0];this.ka=b[1];this.va=b[2];this.D=null;this.Z=this.Zb=new Uk(this,1,a[0]);this.L=this.Cb=new Uk(this,3,a[1]);this.B=new Uk(this,this.Ra,a[3],this.Wc);this.B.cc&&nl(this);ol(this);if(!ql(this))return!1;rl(this);return!0};
function Jk(a,b,c,d){if(d)a.Ba("Unable to load font ROM (error "+d+": "+b+")");else{Ra(a.Fe,b,c);try{var e=eval("("+c+")"),f=e.bytes||e;if(!f.length){r("Empty font ROM: "+b);return}if(1==f.length){r(f[0]);return}if(8192==f.length)dk(a,f,[6144,0]);else if(2048==f.length)dk(a,f,[0]);else{a.Ba("Unrecognized font data length ("+f.length+")");return}}catch(g){a.Ba("Font ROM data error: "+g.message);return}(a.R||a.Ia)&&t(a)}}
function sl(a,b){if(1==b)return a.oa[0]=Ok[0],a.oa[1]=Ok[7],a.oa;if(2==b){var c=a.D.kf;if(a.D===a.B){var d=a.B.Kc[0],c=d&7;d&16&&(c|=8);18!=a.B.Kc[1]&&(c|=32)}a.oa[0]=Ok[c&15];c=c&32?Qk:Pk;for(d=0;d<c.length;d++)a.oa[d+1]=Ok[c[d]];return a.oa}if(a.L===a.Cb)return Ok;a.La&&b&&!a.oa[16]&&(a.La=!1);if(!a.La){var c=a.B,d=c.Be,e,f,g,h;if(8==b)for(e=0;256>e;e++)f=d[e]||0,g=f<<2&252,h=f>>4&252,f=f>>10&252,a.oa[e]=[g,h,f,255];else{var k=d&&d[255];b=null!=c.Kc[15]?c.Kc:Rk;for(e=0;16>e;e++)f=b[e]&63,k?(f|=
(c.Kc[20]&12)<<4,c.Kc[16]&128&&(f&=-49,f|=(c.Kc[20]&3)<<4),f=d[f],g=f<<2&252,h=f>>4&252,f=f>>10&252):(g=(f&4?170:0)|(f&32?85:0),h=(f&2?170:0)|(f&16?85:0),f=(f&1?170:0)|(f&8?85:0)),a.oa[e]=[g,h,f,255]}a.La=!0}return a.oa}function dk(a,b,c,d){a.Ab=b;a.Xa=c;a.Ja=d}
function ol(a,b){var c=!1;if(window&&a.Ab&&(!b||a.I)){b=0;var d=a.Ja?a.Ja:8,e=sl(a);null!=a.Xa[0]&&tl(a,3,a.Xa[0],b,d,8,a.Ab,e)&&(c=!0);b=a.Ja?0:2048;d=a.Ja?a.Ja:9;null!=a.Xa[1]&&(tl(a,1,a.Xa[1],b,d,14,a.Ab,Mk,Nk)&&(c=!0),a.Ja&&tl(a,a.Ra,a.Xa[1],0,a.Ja,14,a.Ab,e)&&(c=!0))}return c}function tl(a,b,c,d,e,f,g,h,k){var m=!1;null!=c&&(ul(a,b,c,d,e,f,g,h,k)&&(m=!0),a.ae&&ul(a,b<<1,c,d,e,f,g,h,k)&&(m=!0));return m}
function ul(a,b,c,d,e,f,g,h,k){var m=!1,q=b&1?0:1,y=a.xa[b],w=16>h.length?h.length:16;y||(y={tc:e<<q,uc:f<<q,de:Array(w),di:h.slice(0,w),Je:k,gg:Array(w)});for(k=0;k<w;k++){var z=h[k],B=y.de[k]?y.di[k]:[];if(z[0]!==B[0]||z[1]!==B[1]||z[2]!==B[2]){var m=y,B=k,Q=q,V=c,aa=d,Sa=e,nb=f,Cf=g,bn=[0,0,0,0],qe=document.createElement("canvas");qe.width=m.tc<<4;qe.height=m.uc<<4;var qj=qe.getContext("2d"),yb,Oc,Zb,re=8>nb||!aa?nb:8,Df=qj.createImageData(m.tc,m.uc);for(yb=0;256>yb;yb++){for(Zb=0;Zb<nb;Zb++)for(var cn=
m.Je&&B&1&&Zb>=nb-2,dn=Cf[Zb<re?V+yb*re+Zb:aa+yb*re+Zb-re],Ef=0;Ef<=Q;Ef++)for(Oc=0;Oc<Sa;Oc++){var rj=Oc<<Q,sj=(Zb<<Q)+Ef,tj=cn||dn&128>>(8<=Oc&&192<=yb&&223>=yb?7:Oc)?z:bn;vl(Df,rj,sj,tj);Q&&vl(Df,rj+1,sj,tj)}qj.putImageData(Df,(yb&15)*m.tc,(yb>>4)*m.uc)}m.de[B]="#"+fa(z[0],2)+fa(z[1],2)+fa(z[2],2);m.di[B]=z;m.gg[B]=qe;m=!0}}a.xa[b]=y;return m}function wl(a){0<a.za||0<=a.ga?0>a.Ea&&(a.Ea=0):a.Ea=-1}
function rl(a){if(a.I){for(var b=10;15>=b;b++)if(null==a.D.ab[b])return;var c=a.D.ab[10],b=c&31,d=a.D.ab[11]&31,e=a.D.ab[9]&31,f=!1;a.D===a.B&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)xl(a);else{c=a.D.ab[15]+((a.D.ab[14]&63)<<8);a.ga!=c&&(xl(a),a.ga=c);d=d-b+1;if(a.sd!=b||a.Gc!=d)a.sd=b,a.Gc=d;a.Da=e+1;wl(a)}}}
function xl(a){if(0<=a.ga){if(void 0!==a.ba){var b=a.ba[a.ga];if(b&131072){var b=b&-131073,c=a.ga%a.H,d=a.ga/a.H|0;a.I&&a.xa[a.I]&&(a.Ga&&yl(a,c,d,b,a.Ga),yl(a,c,d,b));a.ba[a.ga]=b}}a.ga=-1}}
function zl(a){var b,c=a.D;a.Yc=!1;var d=c.Hd[5];if(null!=d){b=1024;var e=0,f=c.Hd[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.Hc=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.Ra==ek&&(e=3,c.Hc=f&7)}d&8&&(b=1280);c=c.De[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.Yc=!0));b|=e}return b}
function Al(a,b){var c=a.D;return c&&null!=b&&b!=c.ug?(c.$f(b),a.ia.$f(c.cb,c.Fb,c.rg(),!0),!0):!1}
function ql(a,b){var c,d=a.va,e=a.D;if(e)if(1==e.Ra)d=7;else if(5<=e.Ra){var d=null,f=e.Wc>>2,g=32768<f?32768:f,h=e.Hd[6];if(null!=h){switch(h&12){case 0:e.cb=655360;e.Fb=f;d=255;break;case 4:e.cb=655360;e.Fb=f;d=3==a.ma?15:16;break;case 8:e.cb=720896;e.Fb=g;d=7;break;case 12:e.cb=753664,e.Fb=g,d=3==a.ma?2:3}c=80==(e.Hd[5]&80);!c||e.cb==a.cb&&e.Fb==a.Fb||(b=!0);var f=al(e,6),g=e.ab[9],k=e.ab[23],m=e.De[1]&8;255!=d&&(h&1?655360==e.cb||c||k&1?e.Hd[5]&64?d=g&31?143>=e.ab[18]?19:20:21:g&128||350>f?d=
m?13:14:480<=f&&(d=3==a.ma?17:18):d=m?7-d:6:d-=m?2:0);c=zl(a)}}else e.Lc&8&&(e.Lc&2?(d=e.Lc&16?6:5,e.Lc&4||--d):(d=e.Lc&1?3:1,e.Lc&4&&--d));else a.va=null,null==d&&(d=a.ka);if(!pl(a,d,b))return!1;Al(a,c);return!0}
function pl(a,b,c){if(null!=b&&(b!=a.va||c)){a.Jd=0;a.va=b;a.La=!1;b=a.D||(7==b?a.Z:a.L);if(b!=a.D||b.cb!=a.cb||b.Fb!=a.Fb){xl(a);if(a.cb){if(!Gb(a.ia,a.cb,a.Fb))return!1;a.D&&(a.D.cc=!1)}a.D=b;b.cc=!0;a.cb=b.cb;a.Fb=b.Fb;if(!ub(a.ia,b.cb,b.Fb,3,b===a.B?b:null))return!1}a:{a.I=0;a.H=a.Ob;a.K=a.wc;a.Ta=a.H;a.Hb=Gk[7][2];b=0;if(c=Gk[a.va])a.H=c[0],a.K=c[1],a.Hb=c[2],b=c[3],a.I=c[4],4!=a.ma&&7!=a.ma||a.D!==a.B||3!=a.I||(7==(a.B.ab[9]&31)?a.K=350>al(a.B,18)?43:50:a.I=a.Ra);a.od=a.H*a.K|0;a.nd=a.od/a.Hb|
0;a.fb=a.nd;a.fc=0;void 0!==b&&(a.fb=(a.fb<<1)+b|0,a.fc=a.fb+b>>1);if(a.xa.length){a.ra=a.da/a.H|0;a.sa=a.pa/a.K|0;if(a.I){b=a.xa[a.I];if(!b)break a;c=a.xa[a.I<<1];a.cd&&80==a.H?c&&a.ra>=3*c.tc>>2&&(a.I<<=1,b=c):(c&&a.ra>=c.tc&&(a.I<<=1,b=c),a.cd||(a.ra=b.tc,a.sa=b.uc));a.pb=a.qb=0;b&&(a.pb=a.H*b.tc,a.qb=a.K*b.uc)}else a.ra=a.sa=1,a.pb=a.H,a.qb=a.K;a.Oa=a.R.createImageData(a.pb,a.qb);a.Fa=document.createElement("canvas");a.Fa.width=a.pb;a.Fa.height=a.qb;a.Ga=a.Fa.getContext("2d");a.yc=a.zc=0;a.ic=
a.da;a.mc=a.pa;b=a.da-a.H*a.ra;c=a.pa-a.K*a.sa;0<b&&(a.yc=b>>1,a.ic-=b);0<c&&(a.zc=c>>1,a.mc-=c);if(b||c)a.R.fillStyle=a.Y.style.backgroundColor,a.R.fillRect(0,0,a.da,a.pa)}}Bl(a,!0);kl(a)}return!0}function vl(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Cl(a){a.za=-1;a.qa=!1;var b=a.nd;if(void 0===a.ba||a.ba.length!=b)a.ba=Array(b)}function Bl(a,b){b||(a.La=!1);Cl(a)}
function yl(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.xa[a.I];h.Je&&(d=h.Je[d]);var k=g>>4&15;h.Je&&(k=h.Je[k]);e?(b*=h.tc,c*=h.uc,e.fillStyle=h.de[k],e.fillRect(b,c,h.tc,h.uc)):(b=b*a.ra+a.yc,c=c*a.sa+a.zc,a.R.fillStyle=h.de[k],a.R.fillRect(b,c,a.ra,a.sa));g&256&&(k=(f&15)*h.tc,f=(f>>4)*h.uc,e?e.drawImage(h.gg[d],k,f,h.tc,h.uc,b,c,h.tc,h.uc):a.R.drawImage(h.gg[d],k,f,h.tc,h.uc,b,c,a.ra,a.sa));g&512&&(f=a.sd,g=a.Gc,e?(a.Da&&a.Da!==h.uc&&(f=f*h.uc/a.Da|0,g=g*h.uc/a.Da|0),e.fillStyle=h.de[d],e.fillRect(b,
c+f,h.tc,g)):(a.Da&&a.Da!==a.sa&&(f=f*a.sa/a.Da|0,g=g*a.sa/a.Da|0),a.R.fillStyle=h.de[d],a.R.fillRect(b,c+f,a.ra,g)))}
function kl(a,b){if(a.ea.Vb){var c=!1,d=a.D;d&&(d!==a.B?d.Lc&8&&(c=!0):d.Xd&32&&(c=!0));if(c||b){if(b)Cl(a);else if(void 0===a.ba)return;var e=!1;!(b||++a.Jd&15)&&0<=a.Ea&&(a.Ea++,e=!0);var f=0,g=a.od,h=a.cb,c=h,k=c+a.Fb;19<=a.va&&(h=c=655360,k=c+65536);if(Dl(a,d)&8||d.ye&&d.ye<d.mh){var m=(d.ab[12]<<8)+d.ab[13]|0;d.dd!==m&&(d.dd=m,Bl(a));d.ye=0}m=d.dd;a.I&&(m<<=1);c+=m;m=a.fb;5<=a.Ra&&d.ab[19]&&d.ab[19]<<1!=d.ab[1]+1&&(a.Ta=d.ab[19]<<(a.I?1:d.ab[20]&64?3:4),m=(a.Ta*(a.K-1)+a.H)/a.Hb|0,7>=a.va&&(m<<=
1));c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(b=!b&&a.qa){b=a.ia;for(var q=!0,y=c>>>b.da;0<m&&y<b.R.length;)b.R[y].Ha&&(b.R[y].Ha=q=!1,b.R[y].ri=!0),m-=b.xb,y++;b=q}if(b){if(!e)return;if(!a.za){f=a.ga-d.dd;if(0>f)return;g=f+1}}if(a.I){if(a.xa[a.I]){d=f;f=0;e=a.za=0;h=1048575;m=a.D.Lc&32;5<=a.Ra&&(m=a.D.Kc[16]&8);b=a.ga-a.D.dd;m&&(e=32768,h&=~e,a.Ea&2||(h&=-65537));for(c+=d<<1;c<k&&d<g;)m=Mb(a.ia,c),m|=65536,m&e&&(a.za++,m&=h),d==b&&(m|=a.Ea&1?131072:0),a.qa&&m===a.ba[d]||(yl(a,d%a.H,d/a.H|0,m,a.Ga),a.ba[d]=
m,f++),c+=2,d++;a.qa=!0;f&&a.Ga&&a.R.drawImage(a.Fa,0,0,a.pb,a.qb,a.yc,a.zc,a.ic,a.mc);wl(a)}}else if(a.fc){var g=k,w,k=c,d=a.za=0,f=a.Hb,e=16==f?65536:196608,h=16==f?1:2;b=sl(a,h);for(var q=m=0,y=a.H,z=0,B=a.K,Q=0;k<g;){w=Mb(a.ia,k);if(a.qa&&w===a.ba[d])m+=f;else{a.ba[d]=w;w=w>>8|(w&255)<<8;var V=e,aa=16;m<y&&(y=m);for(var Sa=0;Sa<f;Sa++){var nb=(w&(V>>=h))>>(aa-=h);vl(a.Oa,m++,q,b[nb])}m>z&&(z=m);q<B&&(B=q);q>=Q&&(Q=q+1)}k+=2;d++;if(m>=a.H){m=0;q+=2;if(q>a.K)break;q==a.K&&(q=1,k=c+a.fc)}}a.qa=!0;
y<a.H&&(a.Ga.putImageData(a.Oa,0,0,y,B,z-y,Q-B),a.R.drawImage(a.Fa,0,0,a.H,a.K,0,0,a.da,a.pa))}else if(a.Yc){g=h;f=a.za=0;e=sl(a,8);h=a.D.td;m=b=0;q=a.H;y=0;z=a.K;B=0;Q=a.D.De[4]&8?4:1;w=a.D.Kc[19]&15;for(V=a.Ta>a.H?a.Ta-a.H-w>>3:0;c<k;){d=h[c-g];Sa=4;w||(a.qa&&d===a.ba[f]?(b+=Sa,Sa=0):a.ba[f]=d,f++);if(Sa){b<q&&(q=b);for(aa=0;aa<Sa;aa++)vl(a.Oa,b++,m,e[d&255]),d>>=8;b>y&&(y=b);m<z&&(z=m);m>=B&&(B=m+1)}c+=Q;if(b>=a.H){b=0;if(++m>a.K)break;c+=V}}w||(a.qa=!0);q<a.H&&(a.Ga.putImageData(a.Oa,0,0,q,z,
y-q,B-z),a.R.drawImage(a.Fa,0,0,a.H,a.K,0,0,a.da,a.pa))}else{g=h;d=a.za=0;f=sl(a);e=a.D.td;b=h=0;m=a.H;q=0;y=a.K;z=0;B=a.D.Kc[19]&15;for(Q=a.Ta>a.H?a.Ta-a.H-B>>3:0;c<k;){w=c++-g;w=e[w];aa=8;B?h?(V=a.H-h,aa>V&&(aa=V)):(w<<=B,aa-=B,a.qa=!1):(a.qa&&w===a.ba[d]?(h+=aa,aa=0):a.ba[d]=w,d++);if(aa){h<m&&(m=h);for(V=0;V<aa;V++)Sa=Tk[w&2155905152]||0,vl(a.Oa,h++,b,f[Sa]),w<<=1;h>q&&(q=h);b<y&&(y=b);b>=z&&(z=b+1)}if(h>=a.H){h=0;if(++b>a.K)break;c+=Q}}B||(a.qa=!0);m<a.H&&(a.Ga.putImageData(a.Oa,0,0,m,y,q-m,
z-y),a.R.drawImage(a.Fa,0,0,a.H,a.K,0,0,a.da,a.pa))}}}}function Dl(a,b){var c=0;a=tc(a.A)-b.Cg;0>a&&(b.Cg=a,a=-a|0);a%b.yg>b.Jl&&(c|=1);a%b.Bg>b.Ll&&(c|=9);b.mh=a/b.Bg|0;return c}l.hl=function(){var a=this.Z,b;a.cc&&(b=a.sc);return b};l.zm=function(a,b){a=this.Z;a.Wf=a.sc;a.sc=b&31};l.gl=function(){return El(this.Z)};l.ym=function(a,b){Fl(this,this.Z,b)};l.il=function(){return this.Z.Lc};l.Am=function(a,b){this.Z.Lc=b;ql(this,!1)};l.jl=function(){return Gl(this,this.Z)};
l.Ej=function(a,b){this.B.Yf=this.B.Yf&-4|b&3};l.Gk=function(){return this.B.Xd};l.ak=function(){return this.B.Kc[this.B.Xd&31]};l.Dj=function(a,b){a=this.B;var c=a.Xd&32;if(a.Oe){a.Oe=!1;var d=a.Xd&31;if(16<=d||!c)a.Kc[d]=b,Bl(this,!1)}else a.Xd=b,a.Oe=!0,b&32&&!c&&ol(this,!0)&&kl(this,!0),b=(a.ab[12]<<8)+a.ab[13]|0,a.dd!=b&&(a.dd=b,Bl(this)),a.ye=0};
l.tl=function(){var a=0;if(5==this.Ra)a=3-((this.B.lf&12)>>2),a=(this.Bb&1<<a)<<4-a;else{var b=this.B.Be[0];45!=(b&63)&&2880!=(b&4032)&&184320!=(b&258048)&&(a|=16)}a|=this.B.qh&-17;return this.B.qh=a};l.Bm=function(a,b){this.B.lf=b;nl(this)};l.ul=function(){return this.B.rh};l.Jm=function(a,b){this.B.rh=b};l.rl=function(){return this.B.Ee};l.Hm=function(a,b){this.B.Ee=b};l.ql=function(){return this.B.De[this.B.Ee]};
l.Gm=function(a,b){this.B.De[this.B.Ee]=b;switch(this.B.Ee){case 2:this.B.$a=Sk[b&15];break;case 4:Al(this,zl(this))&&kl(this,!0)}};l.Tk=function(){return this.B.ph};l.im=function(a,b){this.B.ph=b};l.Uk=function(){return this.B.Xf};l.jm=function(a,b){this.B.ed=b;this.B.Xf=3;this.B.Bc=0};l.km=function(a,b){this.B.ed=b;this.B.Xf=0;this.B.Bc=0};l.Sk=function(){var a=this.B.Be[this.B.ed]>>this.B.Bc&63;this.B.Bc+=6;12<this.B.Bc&&(this.B.Bc=0,this.B.ed=this.B.ed+1&255);return a};
l.hm=function(a,b){a=this.B.Be[this.B.ed];b=a&~(63<<this.B.Bc)|(b&63)<<this.B.Bc;a!==b&&(this.B.Be[this.B.ed]=b,Bl(this,!1));this.B.Bc+=6;12<this.B.Bc&&(this.B.Bc=0,this.B.ed=this.B.ed+1&255)};l.vl=function(){return this.B.Yf};l.um=function(a,b){this.B.Ij=b};l.wl=function(){return this.B.lf};l.tm=function(a,b){this.B.Hj=b};l.al=function(){return this.B.Ce};l.sm=function(a,b){this.B.Ce=b};l.$k=function(){return this.B.Hd[this.B.Ce]};
l.rm=function(a,b){this.B.Hd[this.B.Ce]=b;switch(this.B.Ce){case 0:this.B.df=Sk[b&15];this.B.Dd=this.B.df&~this.B.md;break;case 1:this.B.md=~Sk[b&15];this.B.Dd=this.B.df&~this.B.md;break;case 2:this.B.wg=Sk[b&15]&-2139062144;break;case 3:case 5:Al(this,zl(this));break;case 4:this.B.lh=(b&3)<<3;break;case 6:ql(this,!1);break;case 7:this.B.xg=Sk[b&15]&-2139062144;break;case 8:this.B.tb=b|b<<8|b<<16|b<<24}};l.Mk=function(){var a=this.L,b;a.cc&&(b=a.sc);return b};
l.cm=function(a,b){a=this.L;a.Wf=a.sc;a.sc=b&31};l.Lk=function(){return El(this.L)};l.bm=function(a,b){Fl(this,this.L,b)};l.Nk=function(){return this.L.Lc};l.dm=function(a,b){this.L.Lc=b;ql(this,!1)};l.Kk=function(){return this.L.kf};l.am=function(a,b){this.L.kf!==b&&(this.L.kf=b,Bl(this,!1))};l.Ok=function(){return Gl(this,this.L)};function El(a){var b;a.cc&&a.sc<a.vg&&(b=a.ab[a.sc]);return b}
function Fl(a,b,c){if(b.sc<b.vg){b.ab[b.sc]=c;if(12==b.sc||13==b.sc)if(Dl(a,b)&1){var d=(b.ab[12]<<8)+b.ab[13]|0;b.dd!==d&&(b.dd=d,Bl(a))}else b.ye||(b.ye=b.mh);(9==b.sc&&8!=b.Wf||18==b.sc&&223==c)&&ql(a,!0);rl(a)}}function Gl(a,b){var c=Dl(a,b);b===a.B?(c|=b.aa&48^48,b.Oe=!1):c=(b.aa^=9)|240;return b.aa=c}
var bl={948:Y.prototype.hl,949:Y.prototype.gl,952:Y.prototype.il,954:Y.prototype.jl},cl={948:Y.prototype.zm,949:Y.prototype.ym,952:Y.prototype.Am},dl={980:Y.prototype.Mk,981:Y.prototype.Lk,984:Y.prototype.Nk,985:Y.prototype.Kk,986:Y.prototype.Ok},el={980:Y.prototype.cm,981:Y.prototype.bm,984:Y.prototype.dm,985:Y.prototype.am},fl={960:Y.prototype.Gk,961:Y.prototype.ak,962:Y.prototype.tl,964:Y.prototype.rl,965:Y.prototype.ql,974:Y.prototype.al,975:Y.prototype.$k},gl={954:Y.prototype.Ej,960:Y.prototype.Dj,
961:Y.prototype.Dj,962:Y.prototype.Bm,964:Y.prototype.Hm,965:Y.prototype.Gm,970:Y.prototype.um,972:Y.prototype.tm,974:Y.prototype.sm,975:Y.prototype.rm,986:Y.prototype.Ej},hl={963:Y.prototype.ul,966:Y.prototype.Tk,967:Y.prototype.Uk,969:Y.prototype.Sk,970:Y.prototype.vl,972:Y.prototype.wl},il={963:Y.prototype.Jm,966:Y.prototype.im,967:Y.prototype.jm,968:Y.prototype.km,969:Y.prototype.hm};
Ia(function(){for(var a=Za(document,"pcx86","video"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),e=document.createElement("canvas");if(!e||!e.getContext){c.innerHTML="<br/>Missing &lt;canvas&gt; support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(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.onresize());var f=+(d.aspect||Aa("aspect"));f&&.3<=f&&3.33>=f&&(Ha("onresize",function(a,b,c){return function(){b.style.height=(a.clientWidth/c|0)+"px"}}(c,e,f)),window.onresize());c.appendChild(e);f=document.createElement("textarea");za("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"));c.appendChild(f);var g=e.getContext("2d"),d=new Y(d,e,g,f,c);Ya(d,c)}});
function Hl(a){this.I=a.adapter;switch(this.I){case 1:this.G=956;this.D=7;break;case 2:this.G=888;this.D=7;break;case 3:this.G=632;this.D=5;break;default:r("Unrecognized parallel adapter #"+this.I);return}this.B=this.C=null;Ma.call(this,"ParallelPort",a,Hl);a=a.binding;"console"==a?this.C="":Xa(this,a,Il)}Pa(Hl);var Il="buffer";l=Hl.prototype;l.zb=function(a,b,c){switch(b){case Il:return this.la[b]=this.B=c,!0}return!1};
l.pc=function(a,b,c,d){this.ia=b;this.A=c;this.Ia=d;this.S=jb(a,"ChipSet");Pb(b,this,Jl,this.G);Rb(b,this,Kl,this.G);t(this)};l.Ub=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Tb=function(a){return a?this.save():!0};l.reset=function(){Ll(this)};l.save=function(){var a=new ae(this),b=0,c=[];c[b++]=this.H;c[b++]=this.Db;c[b]=this.Me;a.set(0,c);return a.data()};l.restore=function(a){return Ll(this,a[0])};
function Ll(a,b){var c=0;b||(b=[0,0,0]);a.H=b[c++];a.Db=b[c++];a.Me=b[c];return!0}l.Vk=function(){return this.H};l.sl=function(){return this.Db};l.Rk=function(){return this.Me};l.lm=function(a,b){this.H=b;this.Db|=64;a=!1;this.B&&(8==b?this.B.value=this.B.value.slice(0,-1):(this.B.value+=String.fromCharCode(b),this.B.scrollTop=this.B.scrollHeight),a=!0);if(null!=this.C){if(10==b||1024<=this.C.length)this.rc(this.C),this.C="";10!=b&&(this.C+=String.fromCharCode(b));a=!0}a&&(this.Db&=-65);Ml(this)};
l.gm=function(a,b){this.Me=b;Ml(this)};function Ml(a){a.S&&a.D&&(a.Me&16&&!(a.Db&64)?Re(a.S,a.D):Qe(a.S,a.D))}var Jl={0:Hl.prototype.Vk,1:Hl.prototype.sl,2:Hl.prototype.Rk},Kl={0:Hl.prototype.lm,2:Hl.prototype.gm};Ia(function(){for(var a=Za(document,"pcx86","parallel"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Hl(d);Ya(d,c)}});
function Nl(a){this.oa=a.adapter;switch(this.oa){case 1:this.ka=1016;this.W=4;break;case 2:this.ka=760;this.W=3;break;default:r("Unrecognized serial adapter #"+this.oa);return}this.G=this.I=null;this.ra=a.tabSize;this.qa=a.charBOL;this.R=0;this.sa=Ol|Pl;this.Z=!0;Ma.call(this,"SerialPort",a,Nl);a=a.binding;"console"==a?this.I="":Xa(this,a,Ql);this.D=this.ga=this.Rc=null;this.exports={connect:this.wi,receiveData:this.jf,receiveStatus:this.$j}}Pa(Nl);var Ql="buffer",Ol=16,Pl=32;l=Nl.prototype;
l.fi=function(a,b,c){var d=null;a!=this.Td||this.D||(this.D=b,this.Rc=c,this.Z=!1,d=this);return d};l.zb=function(a,b,c){var d=this;switch(b){case Ql:return this.la[b]=this.G=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),d.jf(b);return!0},c.onkeypress=function(a){a=a||window.event;d.jf(a.which||a.keyCode);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
l.pc=function(a,b,c,d){this.ba=a;this.ia=b;this.A=c;this.Ia=d;this.S=jb(a,"ChipSet");Pb(b,this,Rl,this.ka);Rb(b,this,Sl,this.ka);t(this)};
l.wi=function(a){if(!this.D){var b=kc(this.ba,"connection");if(b){var c=b.split("->");if(2==c.length){var d=la(c[0]);if(d!=this.Td)return;c=la(c[1]);if(this.D=Ua(c)){var e=this.D.exports;if(e){var f=e.connect;f&&f.call(this.D,this.Z);if(this.ga=e.receiveData){this.Z=a;this.Rc=e.receiveStatus;this.status(this.Fe+"."+d+" connected to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};
l.Ub=function(a,b){if(!b)if(this.wi(this.Z),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};l.Tb=function(a){return a?this.save():!0};l.reset=function(){Tl(this)};l.save=function(){var a=new ae(this),b=0,c=[];c[b++]=this.ma;c[b++]=this.pa;c[b++]=this.P;c[b++]=this.Y;c[b++]=this.H;c[b++]=this.L;c[b++]=this.da;c[b++]=this.C;c[b++]=this.B;c[b]=this.K;a.set(0,c);return a.data()};l.restore=function(a){return Tl(this,a[0])};
function Tl(a,b){var c=0;b||(b=[0,0,384,0,1,0,0,96,a.sa,[]]);a.ma=b[c++];a.pa=b[c++];a.P=b[c++];a.Y=b[c++];a.H=b[c++];a.L=b[c++];a.da=b[c++];a.C=b[c++];a.B=b[c++];a.K=b[c];return!0}l.jf=function(a){if("number"==typeof a)this.K.push(a);else if("string"==typeof a)for(var b=0;b<a.length;b++)this.K.push(a.charCodeAt(b));else this.K=this.K.concat(a);Ul(this);return!0};l.$j=function(a){var b=this.B;this.B&=~(Ol|Pl);a&32&&(this.B=this.B|Ol|1);a&64&&(this.B=this.B|Pl|2);b!=this.B&&Vl(this)};
function Ul(a){0<a.K.length&&!(a.C&1)&&(a.ma=a.K.shift(),a.C|=1);Vl(a)}l.pl=function(){var a=this.L&128?this.P&255:this.ma;this.C&=-2;Ul(this);return a};l.bl=function(){return this.L&128?this.P>>8:this.Y};l.cl=function(){return this.H};l.dl=function(){return this.L};l.fl=function(){return this.da};l.el=function(){return this.C};l.kl=function(){var a=this.B;this.B&=-4;return a};
l.Im=function(a,b){if(this.L&128)this.P=this.P&-256|b;else{this.pa=b;this.C&=-97;a=!1;this.ga&&this.ga.call(this.D,b)&&(a=!0);if(this.G){if(13==b)this.R=0;else if(8==b)this.G.value=this.G.value.slice(0,-1),0<this.R&&this.R--;else{a=(a=13!=b&&10!=b?ma[b]:null)?"<"+a+">":String.fromCharCode(b);var c=a.length;32>b&&1==c&&(c=0);9==b&&(b=this.ra||8,c=b-this.R%b,this.ra&&(a=" ".slice(0,c)));this.qa&&!this.R&&c&&(a=String.fromCharCode(this.qa)+a);this.G.value+=a;this.G.scrollTop=
this.G.scrollHeight;this.R+=c}a=!0}else if(null!=this.I){if(10==b||1024<=this.I.length)this.rc(this.I),this.I="";10!=b&&(this.I+=String.fromCharCode(b));a=!0}a&&(this.C|=96)}};l.vm=function(a,b){this.L&128?this.P=this.P&255|b<<8:this.Y=b};l.wm=function(a,b){this.L=b};l.xm=function(a,b){a=b^this.da;this.da=b;a&3&&this.Rc&&(a=0,a=this.Z?a|(b&2?32:0)|(b&1?320:0):a|(b&2?16:0)|(b&1?1048576:0),this.Rc.call(this.D,a))};
function Vl(a){var b=-1;a.C&1&&a.Y&1?b=4:a.B&3&&a.Y&8&&(b=0);0<=b?(a.H&=-8,a.H|=b,a.S&&a.W&&Re(a.S,a.W,100)):(a.H|=1,a.S&&a.W&&Qe(a.S,a.W))}var Rl={0:Nl.prototype.pl,1:Nl.prototype.bl,2:Nl.prototype.cl,3:Nl.prototype.dl,4:Nl.prototype.fl,5:Nl.prototype.el,6:Nl.prototype.kl},Sl={0:Nl.prototype.Im,1:Nl.prototype.vm,3:Nl.prototype.wm,4:Nl.prototype.xm};Ia(function(){for(var a=Za(document,"pcx86","serial"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Nl(d);Ya(d,c)}});
function Wl(a){Ma.call(this,"Mouse",a,Wl);if(this.Y=a.serial)this.Z="SerialPort";this.W=this.P=this.cc=!1;this.D=[];this.C=[];t(this)}Pa(Wl);var ml=0;l=Wl.prototype;l.pc=function(a,b,c,d){this.ba=a;this.ia=b;this.A=c;this.Ia=d;for(b=null;b=jb(a,"Video",b);)this.D.push(b)};
l.Ub=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.Z&&!this.G){for(a=null;(a=jb(this.ba,this.Z,a))&&(!a.fi||!(this.G=a.fi(this.Y,this,this.Zj))););if(this.G)for(this.C=[],a=0;a<this.D.length;a++)b=this.D[a],b.P=this,(b=b.G)&&this.C.push(b);else r(this.id+": "+this.Z+" "+this.Y+" unavailable")}this.cc?Xl(this):Yl(this)}return!0};l.Tb=function(a){return a?this.save():!0};l.reset=function(){Zl(this)};
l.save=function(){var a=new ae(this),b=0,c=[];c[b++]=this.cc;c[b++]=this.H;c[b++]=this.I;c[b++]=this.K;c[b++]=this.L;c[b++]=this.S;c[b++]=this.R;c[b]=this.B;a.set(0,c);return a.data()};l.restore=function(a){return Zl(this,a[0])};function Zl(a,b){var c=0;b||(b=[!1,-1,-1,0,0,!1,!1,0]);var d=b[c++];a.cc=d;a.H=b[c++];a.I=b[c++];a.K=b[c++];a.L=b[c++];a.S=b[c++];a.R=b[c++];a.B=b[c];a.B&3&&(a.B=(a.B&1?1048576:0)|(a.B&2?16:0));return!0}l.ef=function(a){this.P=a};
function Xl(a){if(!a.W)for(var b=0;b<a.C.length;b++)$l(a,a.C[b])&&(a.W=!0)}function Yl(a){if(a.W)for(var b=0;b<a.C.length;b++){var c=a.C[b];c&&(c.style.cursor="auto")}}function $l(a,b){return b?(b.addEventListener("mousemove",function(b){am(a,b)},!1),b.addEventListener("mousedown",function(b){am(a,b,!0)},!1),b.addEventListener("mouseup",function(b){am(a,b,!1)},!1),b.style.cursor="none",!0):!1}
function am(a,b,c){if(void 0!==c){var d;!(d=!1!==a.P)&&(d=a.D.length)&&(d=a.D[0],d=d.$d?d.Rd(!0):!1);d||(a.P=null);a.le(b.button,c)}else{if(0>a.H||0>a.I)a.H=b.clientX,a.I=b.clientY;a.P?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.clientX-a.H,d=b.clientY-a.I);a.H=b.clientX;a.I=b.clientY;a.tg(c,d,a.H,a.I)}}
l.le=function(a,b){if(this.cc&&this.A&&this.A.ea.Nb)switch(a){case ml:this.S!=b&&(this.S=b,bm(this));break;case 2:this.R!=b&&(this.R=b,bm(this))}};l.tg=function(a,b){this.cc&&this.A&&this.A.ea.Nb&&(a||b)&&(this.K=a,this.L=b,bm(this))};function bm(a){a.G.jf([64|(a.S?32:0)|(a.R?16:0)|(a.L&192)>>4|(a.K&192)>>6,a.K&63,a.L&63]);a.K=a.L=0}
l.Zj=function(a){var b=1048592==(a&1048592);if(b){if(!this.cc){var c=!1;this.B&16||(this.reset(),c=!0);this.B&1048576||(c=!0);c&&this.G.jf([77,77]);Xl(this);this.cc=b}}else this.cc&&(Yl(this),this.cc=b);this.B=a};Ia(function(){for(var a=Za(document,"pcx86","mouse"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Wl(d);Ya(d,c)}});
function cm(a,b,c){Ma.call(this,"Disk",{id:a.Fe+".disk"+fa(++dm,4)},cm);this.controller=a;this.ba=a.ba;this.Ia=a.Ia;this.C=b;this.B=b.name;this.qe=b.qe;this.Gf=this.D=!1;em(this,c,b.ib,b.jb,b.eb,b.nb);this.I=[];this.S=[];this.G=null;this.P=0;this.R=!1;t(this)}var dm=0;Pa(cm);l=cm.prototype;l.pc=function(a,b,c,d){this.Ia=d};l.Ub=function(a,b){b||!this.Gf||this.D||(t(this,!1),this.load(this.B,this.H,null,this.nk,this));return!0};l.nk=function(){t(this,!0)};
l.Tb=function(a,b){if(this.D){var c,d=0;if(this.R&&!ua("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=fm(this,!1);)if(d=c[0]){this.controller.Ba('Unable to save "'+this.B+'" (error '+d+")");break}b&&this.D&&(b="action=close&volume="+this.H,b+="&machine="+this.controller.ue(),b+="&user="+this.controller.zd(),sa(ta()+"/api/v1/disk?"+b,null,!0),this.D=!1);!d&&a&&this.controller.Ba(this.B+" saved")}return!0};
function em(a,b,c,d,e,f){a.mode=b;a.ib=c;a.jb=d;a.eb=e;a.nb=f;a.A=[];if("preload"!=a.mode){b=Array(a.ib);for(c=0;c<b.length;c++){d=Array(a.jb);for(e=0;e<d.length;e++){f=Array(a.eb);for(var g=1;g<=f.length;g++)f[g-1]=gm(null,c,e,g,a.nb,"local"==a.mode?0:null);d[e]=f}b[c]=d}a.A=b}a.L=null}
l.load=function(a,b,c,d,e){var f=b;if(this.K)return!0;this.B=a;this.H=b;this.th=ga(b);var g=this;this.K=d;this.ia=e||this.controller;if(c){var h=new FileReader;h.onload=function(){var a=h.result,b,c=a?a.byteLength:0,d=ca[c];if(d){g.ib=d[0];g.jb=d[1];g.eb=d[2];g.nb=d[3]||512;b=g.nb>>2;var e=d=0,a=new DataView(a,0,c);g.A=Array(g.ib);for(c=0;c<g.A.length;c++)for(var f=g.A[c]=Array(g.jb),B=0;B<f.length;B++)for(var Q=f[B]=Array(g.eb),V=0;V<Q.length;V++){for(var aa=gm(null,c,B,V+1,g.nb,0),Sa=aa.data,nb=
0;nb<b;nb++,e+=4)var Cf=Sa[nb]=a.getInt32(e,!0),d=d+Cf&-1;aa.Dc=b;Q[V]=aa}g.L=d;b=g}else g.Ba("Unrecognized disk format ("+c+" bytes)");g.K&&(g.K.call(g.controller,g.C,b,g.B,g.H),g.K=null)};h.readAsArrayBuffer(c);return!0}0>b.indexOf("/api/v1/dump")&&(a=ha(b),"json"==a||"gz"==a?f=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(f=hm(this,b),this.Gf=!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"):
ia(b,"/")&&(c="dir"),f=ta()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.qe?"":d)+"&format=json"));return!!sa(f,null,!0,function(a,b,c){im(g,a,b,c)})};
function im(a,b,c,d){var e=null;a.te=!1;var f=0>d&&a.ba&&!a.ba.ea.Vb;if(a.Gf)d?a.controller.Ba('Unable to connect to disk "'+a.H+'" (error '+d+": "+c+")",f):(a.D=!0,e=a);else if(d)a.controller.Ba('Unable to load disk "'+a.B+'" (error '+d+": "+b+")",f);else{Ra(a.controller.Fe,b,c);try{if(0<ga(a.th,!0).toLowerCase().indexOf("-readonly"))a.te=!0;else{var g=c.indexOf("\n");0<g&&1024>g&&0<c.substring(0,g).indexOf("write-protected")&&(a.te=!0)}var h;"<"==c.substr(0,1)?h=["Missing disk image: "+a.B]:h=0>
c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+c+")");if(h.length)if(1==h.length)r(h[0]);else{a.ib=h.length;a.jb=h[0].length;a.eb=h[0][0].length;var k=h[0][0][0];a.nb=k&&k.length||512;for(d=c=0;d<a.ib;d++)for(f=0;f<a.jb;f++)for(g=0;g<a.eb;g++)if(k=h[d][f][g]){var m=k.length;void 0===m&&(m=k.length=512);var m=m>>2,q=k.pattern;void 0===q&&(q=k.pattern=0);var y=k.data;if(void 0===y){var w=k.bytes;if(void 0!==w&&w.length){for(var z=
m<<2,B=w.length;B<z;B++)w[B]=q;jm(k,w,0)}else y=[],q=k.pattern=q|q<<8|q<<16|q<<24,k.data=y;delete k.bytes}gm(k,d,f);for(z=0;z<y.length;z++)c=c+y[z]&-1}a.A=h;a.L=c;e=a}else r("Empty disk image: "+a.B)}catch(Q){r("Disk image error ("+b+"): "+Q.message)}}a.K&&(a.K.call(a.ia,a.C,e,a.B,a.H),a.K=null)}function km(a,b){var c=a.jb*a.eb,d=b/c|0;return d<a.ib?(b%=c,a.seek(d,b/a.eb|0,b%a.eb+1)):null}function lm(a,b,c){for(var d=1,e=0,f=0;d--;){var g=a.read(b,c++);if(0>g)break;e|=g<<f;f+=8}return e}
function gm(a,b,c,d,e,f){a||(a={sector:d,length:e,data:[],pattern:f});a.uk=b;a.vk=c;a.Uc=a.Dc=0;a.Ha=!1;return a}function hm(a,b){b="action=open&volume="+b+("&mode="+a.mode);b+="&chs="+a.ib+":"+a.jb+":"+a.eb+":"+a.nb;b+="&machine="+a.controller.ue();b+="&user="+a.controller.zd();return ta()+"/api/v1/disk?"+b}
function mm(a,b,c,d,e,f,g){if(a.D){var h;h="action=read&volume="+a.H;h+="&chs="+a.ib+":"+a.jb+":"+a.eb+":"+a.nb;h=h+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.controller.ue());h+="&user="+a.controller.zd();sa(ta()+"/api/v1/disk?"+h,null,f,function(h,m,q){h=[b,c,d,e,f,g];var k=!1,w=h[0],z=h[1],B=h[2],Q=h[3];if(!q){m=JSON.parse(m);for(k=0;Q--;){var V=a.seek(w,z,B,!0);if(!V)break;jm(V,m,k);k+=V.length;B++}k=h[4]}(h=h[5])&&h(q,k)})}else g&&g(-1,!1)}
function nm(a,b,c,d,e,f,g){if(a.D){var h={};a.R=!0;h.action="write";h.volume=a.H;h.chs=a.ib+":"+a.jb+":"+a.eb+":"+a.nb;h.addr=b+":"+c+":"+d+":"+e;h.machine=a.controller.ue();h.user=a.controller.zd();h.data=JSON.stringify(f);sa(ta()+"/api/v1/disk",h,g,function(f,h,q){var k=[b,c,d,e,g];f=k[0];h=k[1];var m=k[2],z=k[3],k=k[4];a.R=!1;if(0<=f&&f<a.A.length&&0<=h&&h<a.A[f].length)for(--m;0<z--&&0<=m&&m<a.A[f][h].length;m++){var B=a.A[f][h][m];q?om(a,B,!1):B.Ha||(B.Uc=B.Dc=0)}k&&pm(a)})}return!1}
function om(a,b,c){b.Ha=!0;var d=a.I.indexOf(b);0<=d&&(a.I.splice(d,1),a.S.splice(d,1));a.I.push(b);a.S.push(na());c&&pm(a)}function pm(a){if(a.I.length){var b=a.S[0]+2E3;a.G&&a.P<b&&(clearTimeout(a.G),a.G=null);if(!a.G){var c=na(),b=b-c;0>b&&(b=0);2E3<b&&(b=2E3);a.G=setTimeout(function(){fm(a,!0)},b);a.P=c+b}}else a.G&&(clearTimeout(a.G),a.G=null)}
function fm(a,b){b&&(a.G=null);var c=a.I[0];if(c){for(var d=c.uk,e=c.vk,c=c.sector,f=0,g=[],h=c-1;h<a.A[d][e].length;h++){var k=a.A[d][e][h];if(!k.Ha)break;var m=a.I.indexOf(k);a.I.splice(m,1);a.S.splice(m,1);g=g.concat(qm(k));k.Ha=!1;f++}a=nm(a,d,e,c,f,g,b);return b||a}return!1}l.info=function(){return this.A.length?[this.A.length,this.A[0].length,this.A[0][0].length,this.A[0][0][0].length]:[0,0,0,0]};
l.seek=function(a,b,c,d,e){var f=null,g=this.C,h=this.A[a];if(h){var k=h[b];if(!k&&g.ig&&b<g.jb)for(k=h[b]=Array(g.wd),h=0;h<k.length;h++)k[h]=gm(null,a,b,h+1,g.vb,0);if(k){for(h=0;h<k.length;h++)if(k[h]&&k[h].sector==c){f=k[h];if(null===f.pattern)if(d)f.pattern=0;else{for(d=1;++h<k.length;)null===k[h].pattern&&d++;mm(this,a,b,c,d,!!e,function(a,b){a&&(f=null);e&&e(f,b)});return e?null:f}break}!f&&g.ig&&9==g.mb&&(f=k[h]=gm(null,a,b,g.mb,g.vb,0))}}e&&e(f,!1);return f};
function jm(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 qm(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}l.read=function(a,b){var c=-1;if(a&&b<a.length)var c=a.data,d=b>>2,c=(d<c.length?c[d]:a.pattern)>>((b&3)<<3)&255;return c};
l.write=function(a,b,c){if(this.te)return!1;if(b<a.length){if(c!=this.read(a,b,!0)){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.Dc?f<a.Uc?(a.Dc+=a.Uc-f,a.Uc=f):f>=a.Uc+a.Dc&&(a.Dc+=f-(a.Uc+a.Dc)+1):(a.Uc=f,a.Dc=1);d[f]=d[f]&~(255<<b)|c<<b;this.D&&om(this,a,!0)}return!0}return null};function rm(a){for(var b="",c=0,d;d=km(a,c++);)for(var e=0,f=d.length;e<f;e++)b+=String.fromCharCode(lm(a,d,e));return btoa(b)}
l.save=function(){var a=0,b=[];b[a++]=[this.H,this.L,this.ib,this.jb,this.eb,this.nb];if(!this.D&&!this.te)for(var c=this.A,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&&g.Dc){for(var h=[],k=0,m=g.Uc,q=g.Uc+g.Dc;m<q;)h[k++]=g.data[m++];b[a++]=[d,e,f,g.Uc,h]}}return b};
l.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.A.length&&6<=e.length?em(this,"local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.L&&e[1]!=this.L&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.L+")",b=-2));for(this.A.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],k=g[f++],m=g[f++];if(h>=this.A.length||k>=this.A[h].length||m>=this.A[h][k].length){c="sector (CHS="+h+":"+k+":"+m+") out of range ("+
b+" changes applied)";b=-1;break}if(this.te){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.A[h][k][m]){for(k=h.data.length;k<e;)h.data[k++]=h.pattern;k=0;h.Uc=e;for(h.Dc=f.length;e<g;)h.data[e++]=f[k++];b++}}}0>b&&-2!=b&&this.controller.Ba("Unable to restore disk '"+this.B+": "+c);return b};
l.toJSON=function(){var a;a=0;for(var b;b=km(this,a++);)sm(b);a=JSON.stringify(this.A,function(a,b){if("file"!=a)return b});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,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")};
function sm(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}function tm(a){Ma.call(this,"FDC",a,tm);this.dmaRead=this.Tj;this.dmaWrite=this.Uj;this.dmaFormat=this.jk;this.K=a.autoMount||null;this.W=a.sortBy||"name";"none"==this.W&&(this.W=null);this.C=[];this.Y=!za("Mobi")&&window&&"FileReader"in window}Pa(tm);ba={};
var um={3:{hd:3,xd:0,name:ba.Fn},4:{hd:2,xd:1,name:ba.Dn},5:{hd:9,xd:7,name:ba.Jn},6:{hd:9,xd:7,name:ba.zn},7:{hd:2,xd:0,name:ba.Bn},8:{hd:1,xd:2,name:ba.En},10:{hd:2,xd:7,name:ba.An},13:{hd:6,xd:7,name:ba.wn},15:{hd:3,xd:0,name:ba.Cn}};l=tm.prototype;
l.zb=function(a,b,c){var d=this;switch(b){case "listDisks":this.la[b]=c;if(this.W){b=[];for(a=0;a<c.options.length;a++)b.push(c.options[a]);b.sort(function(a,b){return"path"!=d.W?a.text.localeCompare(b.text):a.value.localeCompare(b.value)});for(a=0;a<b.length;a++)try{c.options[a]=b[a]}catch(e){break}}c.onchange=function(){var a=d.la.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){r("FDC option error: "+h.message)}b=g.desc;void 0===
b&&(b="");g=g.href;void 0!==g&&(b='<a href="'+g+'" target="_blank">'+b+"</a>");a.innerHTML=b}};return!0;case "descDisk":case "listDrives":return this.la[b]=c,c.onchange=function(){var a=ea(c.value,10);null!=a&&vm(d,a)},!0;case "loadDisk":return this.la[b]=c,c.onclick=function(){var a=d.la.listDisks;a&&wm(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDisk":if(!this.Y){c.parentNode.removeChild(c);break}this.la[b]=c;c.onclick=function(){var a=d.la.listDrives;a&&a.options&&d.B&&((a=d.B[ea(a.value,
10)||0])?(a=a.ua)?(a=Ca(rm(a),"octet-stream",!0,a.th.replace(".json",".img")),r(a)):d.Ba("No diskette loaded in drive."):d.Ba("No diskette drive selected."))};return!0;case "mountDisk":if(this.Y)return this.la[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;wm(d,ga(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1};
l.pc=function(a,b,c,d){this.ia=b;this.A=c;this.Ia=d;this.ba=a;this.S=jb(a,"ChipSet");if((this.K=kc(this.ba,"autoMount")||this.K)&&"string"==typeof this.K)try{this.K=eval("("+this.K+")")}catch(e){r("FDC auto-mount error: "+e.message+" ("+this.K+")"),this.K=null}xm(this);Pb(b,this,ym);Rb(b,this,zm);Am(this,"None","",!0);this.Y&&Am(this,"Local Disk","?");Am(this,"Remote Disk","??");Bm(this)||t(this)};
l.Ub=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.ba.pg){this.C=[];for(a=0;a<this.B.length;a++)Cm(this,a,!0);Bm(this,!0)}}else if(!this.restore(a))return!1;if(a=this.la.listDrives){for(;a.firstChild;)a.removeChild(a.firstChild);a.value="";for(b=0;b<this.Z;b++){var c=document.createElement("option");c.value=b;c.text=String.fromCharCode(65+b)+":";a.appendChild(c)}0<this.Z&&(a.value="0",vm(this,0))}}return!0};l.Tb=function(a){return a?this.save():!0};l.reset=function(){xm(this)};
l.save=function(){var a=new ae(this);a.set(0,Dm(this));return a.data()};l.restore=function(a){return xm(this,a[0])};
function xm(a,b){var c=0,d,e=!0;b||(b=[0,0,128,Array(9),0,0,0,[]]);a.Qa=b[c++];c++;a.aa=b[c++];a.I=b[c++];a.G=b[c++];a.D=b[c++];a.P=b[c++];var f=b[c++];d=b[c++];null!=d&&(a.C=d);void 0===a.B&&(a.Z=4,a.S&&(a.Z=+Yi(a.S,Di,void 0)),a.B=Array(4));for(d=0;d<a.B.length;d++){var g=a.B[d];if(void 0===g){var g=a.B[d]={},h;if(a.S)a:{h=a.S;if(d<+Yi(h,Di,void 0)){if(!h.Y){h=360;break a}if(d<h.Y.length){h=h.Y[d];break a}}h=0}else h=0;switch(h){case 160:case 180:g.jb=1;default:g.ib=40;g.eb=9;break;case 720:g.ib=
80;g.eb=9;break;case 1200:g.ib=80;g.eb=15;break;case 1440:g.ib=80,g.eb=18}}var k=a,m=d,q=f[d],y=0;h=!0;g.Qa=m;g.ne=g.pe=!1;q||(q=[192,!0,0,2,0]);"boolean"==typeof q[1]&&(q[1]=["Floppy Drive",g.ib||40,g.jb||q[3],g.eb||9,g.nb||512,q[1],g.Nf,g.Xe,g.Ye]);g.kb=q[y++];var w=q[y++];g.name=w[0];g.ib=w[1];g.jb=w[2];g.eb=w[3];g.nb=w[4];g.qe=w[5];(g.Nf=w[6])?(g.Xe=w[7],g.Ye=w[8]):(g.Nf=g.ib,g.Xe=g.jb,g.Ye=g.eb);g.Ya=q[y++];g.vd=q[y++];g.wb=q[y++];g.vd=100<=g.vd?g.vd-100:g.vd-g.wb;g.mb=q[y++];g.wd=q[y++];g.vb=
q[y++];g.Ua=q[y++];g.Wa=null;g.ua||(g.Yd="");var z=q[y++];102==z&&(z=!1);"boolean"==typeof z?(w=q[y++],q=q[y],z?(y=k.B[m],Cm(k,m,!0,!0),y.pe=!0,m=new cm(k,y,"preload"),k.oi(y,m,w,q,!0)):Em(k,m,w,q,!0)?g.ua&&q&&Fm(k,w,q,g.ua):t(k,!1)):void 0!==z&&g.ua&&0>g.ua.restore(z)&&(h=!1);h&&g.ua&&void 0!==g.Ua&&(g.Wa=g.ua.seek(g.wb,g.Ya,g.mb));h||(e=!1)}a.L=b[c++]||0;a.H=b[c]||0;return e}
function Dm(a){var b=0,c=[];c[b++]=a.Qa;c[b++]=0;c[b++]=a.aa;c[b++]=a.I;c[b++]=a.G;c[b++]=a.D;c[b++]=a.P;for(var d=b++,e=0,f=[],g=0;g<a.B.length;g++){var h=e++,k=a.B[g],m=0,q=[];q[m++]=k.kb;q[m++]=[k.name,k.ib,k.jb,k.eb,k.nb,k.qe,k.Nf,k.Xe,k.Ye];q[m++]=k.Ya;q[m++]=k.vd+100;q[m++]=k.wb;q[m++]=k.mb;q[m++]=k.wd;q[m++]=k.vb;q[m++]=k.Ua;q[m++]=k.pe;q[m++]=k.Jj;q[m]=k.Yd;f[h]=q}c[d]=f;d=b++;for(e=0;e<a.B.length;e++)f=a.B[e],f.ua&&Gm(a,f.Yd,f.ua);c[d]=a.C;c[b++]=a.L;c[b]=a.H;return c}
function Bm(a,b){b||(a.R=0);if(a.K)for(var c in a.K){var d=a.K[c],e=d.path||"",f;if(!(f=d.name))a:{if((f=a.la.listDisks)&&f.options)for(var g=0;g<f.options.length;g++){var h=f.options[g];if(h.value==e){f=h.text;break a}}f=ga(e,!0)}if(e&&f&&(g=c.charCodeAt(0)-65,0<=g&&g<a.B.length)){!Em(a,g,f,e,!0)&&b&&t(a,!1);continue}a.Ba("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}return!!a.R}
function wm(a,b,c,d){var e,f=a.la.listDrives;if(f&&!isNaN(e=ea(f.value,10))&&0<=e&&e<a.B.length)if(c)if("?"==c)a.Ba('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=ga(c)}for(;0>Em(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){var f=a,g=c,h;for(h=0;h<f.C.length;h++)if(f.C[h][1]==g){f.C.splice(h,1);break}Cm(a,e,!1,
!0)}}else Cm(a,e);else a.Ba("Unable to load the selected drive")}function Em(a,b,c,d,e,f){var g=a.B[b];if(d&&(d=d.replace("/disks/pc/","/disks/pcx86/"),g.Yd.toLowerCase()!=d.toLowerCase())){Cm(a,b,e,!0);if(g.ne)return a.Ba("Drive "+b+" busy"),0;g.ne=!0;e&&(g.Pd=!0,a.R++);g.pe=!!f;return(new cm(a,g,"preload")).load(c,d,f,a.oi)?1:0}return-1}
l.oi=function(a,b,c,d,e){var f;a.ne=!1;b&&(f=b.info(),b&&f[0]>a.ib||f[1]>a.jb)&&(this.Ba('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Qa)),b=null);b?(a.ua=b,a.Jj=c,a.Yd=d,Fm(this,c,d,b),f=b.info(),this.L|=128,this.Ba('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Qa),a.Pd||e),a.Nf=f[0],a.Xe=f[1],a.Ye=f[2],this.ba&&uc(this.ba)):a.pe=!1;a.Pd&&(a.Pd=!1,--this.R||t(this));vm(this,a.Qa)};
function Am(a,b,c,d){if((a=a.la.listDisks)&&a.options){for(var e=0;e<a.options.length;e++)if(a.options[e].value==c)return;e=document.createElement("option");e.text=b;e.value=c;d&&a.childNodes[0]?a.insertBefore(e,a.childNodes[0]):a.appendChild(e)}}
function vm(a,b){if(0<=b&&b<a.B.length){var c=a.B[b],d=a.la.listDisks;a=a.la.listDrives;if(d&&a&&d.options&&a.options&&(a=ea(a.value,10),c=c.pe?"?":c.Yd,!isNaN(a)&&a==b)){for(b=0;b<d.options.length;b++)if(d.options[b].value==c){d.selectedIndex!=b&&(d.selectedIndex=b);break}b==d.options.length&&(d.selectedIndex=0)}}}function Cm(a,b,c,d){var e=a.B[b];e.ua&&(Gm(a,e.Yd,e.ua),e.Jj="",e.Yd="",e.ua=null,e.pe=!1,a.L|=128,d||a.Ba("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||vm(a,b))}
function Fm(a,b,c,d){var e;for(e=0;e<a.C.length;e++)if(a.C[e][1]==c){d.restore(a.C[e][2]);return}a.C[e]=[b,c,[]]}function Gm(a,b,c){var d;for(d=0;d<a.C.length;d++)if(a.C[d][1]==b){a.C[d][2]=c.save();break}}l.om=function(a,b){b&4?this.P&4||this.P&8&&this.S&&Re(this.S,6):xm(this);this.P=b};l.Xk=function(){return 80};l.Zk=function(){return this.aa};l.Wk=function(){var a=0;this.G<this.D&&(a=this.I[this.G]);this.P&8&&this.S&&Qe(this.S,6);++this.G>=this.D&&(this.aa&=-81,this.G=this.D=0);return a};
l.nm=function(a,b){this.D<this.I.length&&(this.I[this.D++]=b);a=this.I[0]&31;if(void 0!==um[a]&&this.D>=um[a].hd){b=!1;this.G=0;a=Hm(this);var c,d,e,f,g,h=a&31;switch(h){case 3:Hm(this);Hm(this);Im(this);break;case 4:d=Hm(this);this.Qa=d&3;c=this.B[this.Qa];Im(this);Jm(this,(c.kb&-16777216)>>>24);break;case 5:case 6:d=Hm(this);b=d>>2&1;this.Qa=d&3;c=this.B[this.Qa];c.Ya=b;d=c.wb=Hm(this);e=Hm(this);f=c.mb=Hm(this);g=Hm(this);c.vb=128<<g;c.wd=Hm(this);Hm(this);Hm(this);6==h?(h=c,h.kb=72,h.ua&&(h.Wa=
null,h.kb=0,this.S&&(Cj(this.S,2,this,"dmaRead",h),yj(this.S,2)))):(h=c,h.kb=72,h.ua&&(h.ua.te?h.kb=576:(h.Wa=null,h.kb=0,this.S&&(Cj(this.S,2,this,"dmaWrite",h),yj(this.S,2)))));Km(this,c,a,b,d,e,f,g);b=!0;break;case 7:d=Hm(this);this.Qa=d&3;c=this.B[this.Qa];c.wb=c.vd=0;c.kb=268435488;Im(this);b=!0;break;case 8:c=this.B[this.Qa];c.Ya=0;Im(this);Jm(this,c.Qa|c.Ya<<2|c.kb&255);Jm(this,c.wb);this.Qa=this.Qa+1&3;break;case 10:d=Hm(this);b=d>>2&1;this.Qa=d&3;c=this.B[this.Qa];d=c.wb;e=c.Ya=b;f=c.mb=
1;g=0;c.kb=0;c.ua&&(c.Wa=c.ua.seek(c.wb,c.Ya,c.mb))?g=c.Wa.length>>8:c.kb=72;Km(this,c,a,b,d,e,f,g);b=!0;break;case 13:d=Hm(this);b=d>>2&1;this.Qa=d&3;c=this.B[this.Qa];d=c.wb;e=c.Ya=b;f=1;g=Hm(this);c.vb=128<<g;c.wd=Hm(this);Hm(this);c.gi=Hm(this);h=c;h.kb=72;h.ua&&(h.Wa=null,h.kb=0,this.S&&(h.ke=0,h.Oc=Array(4),h.ig=!0,h.Af=0,Cj(this.S,2,this,"dmaFormat",h),yj(this.S,2),h.ig=!1));Km(this,c,a,b,d,e,f,g);b=!0;break;case 15:d=Hm(this),this.Qa=d&3,c=this.B[this.Qa],c.Ya=d>>2&1,d=Hm(this),c.wb+=d-c.vd,
0>c.wb&&(c.wb=0),c.wb>=c.ib&&(c.wb=c.ib-1),c.vd=d,c.kb=32,c.wb||(c.kb|=268435456),Im(this),b=!0}0<this.D&&(this.aa|=80);this.P&8&&(!c||c.kb&8||!b||this.S&&Re(this.S,6))}};l.Yk=function(){var a=this.L;this.L&=-129;return a};l.mm=function(a,b){this.H=b};function Km(a,b,c,d,e,f,g,h){Im(a);Jm(a,b.Qa|b.Ya<<2|b.kb&255);Jm(a,(b.kb&65280)>>>8);Jm(a,(b.kb&16711680)>>>16);var k=0;if(e!=b.wb||f!=b.Ya)k=g=1;c&128&&(f^=k,d||(k=0));Jm(a,e+k);Jm(a,f);Jm(a,g);Jm(a,h)}
function Hm(a){var b=a.I[a.G];a.G++;return b}function Im(a){a.G=a.D=0}function Jm(a,b){a.I[a.D++]=b}l.Tj=function(a,b,c){void 0===b||0>b?this.ze(a,c):c(-1,!1)};l.Uj=function(a,b){return void 0!==b&&0<=b?Lm(a,b):-1};l.jk=function(a,b){if(void 0!==b&&0<=b)a:if(a.kb)a=-1;else{a.Oc[a.ke++]=b;if(a.ke==a.Oc.length){a.wb=a.Oc[0];a.Ya=a.Oc[1];a.mb=a.Oc[2];a.vb=128<<a.Oc[3];for(var c=a.ke=0;c<a.vb;c++)if(0>Lm(a,a.gi)){a=-1;break a}a.Af++}a.Af>=a.wd&&(b=-1);a=b}else a=-1;return a};
l.ze=function(a,b){var c=-1,d=null,e=0;if(!a.kb&&a.ua){do{if(a.Wa&&(e=a.Ua,0<=(c=a.ua.read(a.Wa,a.Ua++)))){d=a.Wa;break}a.Wa=a.ua.seek(a.wb,a.Ya,a.mb);if(!a.Wa){a.kb=1088;break}a.Ua=0;Mm(a)}while(1)}b(c,!1,d,e)};function Lm(a,b){if(a.kb||!a.ua)return-1;do{if(a.Wa&&a.ua.write(a.Wa,a.Ua++,b))break;a.Wa=a.ua.seek(a.wb,a.Ya,a.mb);if(!a.Wa){a.kb=8256;b=-1;break}a.Ua=0;Mm(a)}while(1);return b}function Mm(a){a.mb++;a.mb>=a.Ye+1&&(a.mb=1,a.Ya++,a.Ya>=a.Xe&&(a.Ya=0,a.wb++))}
var ym={1009:tm.prototype.Xk,1012:tm.prototype.Zk,1013:tm.prototype.Wk,1015:tm.prototype.Yk},zm={1010:tm.prototype.om,1013:tm.prototype.nm,1015:tm.prototype.mm};Ia(function(){for(var a=Za(document,"pcx86","fdc"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new tm(d);Ya(d,c)}});function Z(a){Ma.call(this,"HDC",a,Z);this.dmaRead=this.Vj;this.dmaWrite=this.Wj;this.dmaWriteBuffer=this.kk;this.dmaWriteFormat=this.lk;this.ga=[];this.qa=a.drives;this.W="at"==a.type}Pa(Z);
var Nm=["XTC","ATC","COMPAQ"],Om=[{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],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];l=Z.prototype;
l.zb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.la[b]=c,c.onclick=function(a){return function(){var b=d.B&&d.B[a];b&&b.ua?(b=b.ua,b=Ca(rm(b),"octet-stream",!0,b.th.replace(".json",".img")),r(b)):d.Ba("Hard drive "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
l.pc=function(a,b,c,d){this.ia=b;this.A=c;this.Ia=d;this.ba=a;if(d=kc(a,"drives"))this.ga=d;else if(this.qa)try{this.ga=eval("("+this.qa+")")}catch(e){r("HDC drive configuration error: "+e.message+" ("+this.qa+")")}this.S=jb(a,"ChipSet");this.H=0;this.ra=3;Pb(b,this,this.W?Pm:Qm);Rb(b,this,this.W?Rm:Sm);this.W&&(this.H++,this.S&&5180==this.S.ca&&this.H++,this.ra=2,b.S[496]=2,b.P[496]=2);Xd(c,19,this.Bl.bind(this));Xd(c,64,this.Cl.bind(this));this.reset();Tm(this)||t(this)};
l.Ub=function(a,b){if(!b)if(!a||!this.restore)Um(this),this.ba.pg&&Tm(this,!0);else if(!this.restore(a))return!1;return!0};l.Tb=function(a){return a?this.save():!0};l.ue=function(){return this.ba?this.ba.ue():""};l.zd=function(){return this.ba?this.ba.zd():""};l.reset=function(){Um(this,null,!0)};l.save=function(){var a=new ae(this);a.set(0,Vm(this));return a.data()};l.restore=function(a){return Um(this,a[0])};
function Um(a,b,c){var d=0,e=!0;a.Qa=-1;if(a.W){if(b||(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.K=b[d++],a.za=b[d++],a.L=b[d++],a.oa=b[d++],a.ma=b[d++],a.ka=b[d++],a.Z=b[d++],a.aa=b[d++],a.pa=b[d++],a.P=b[d++],"object"==typeof a.P){var f=a.P;a.P=f[0];a.Qa=f[1]}}else b||(b=[0,0,Array(14),0,0]),a.da=b[d++],a.aa=b[d++],a.I=b[d++],a.G=b[d++],a.D=b[d++],a.xa=b[d++],a.va=b[d++],a.sa=b[d++],f=b[d++],void 0!==f?a.Y=f:void 0===a.Y&&(a.Y=-1);void 0===a.B&&(a.B=Array(a.ga.length));b=b[d];void 0===b&&(b=[]);for(d=0;d<
a.B.length;d++){void 0===a.B[d]&&(a.B[d]={});var f=a.B[d],g=a,h=d,k=f,m=a.ga[d],q=b[d],y=c,w=0,z=!0;q||(q=[0,0,!1,Array(8)]);k.Qa=h;k.errorCode=q[w++];k.Kj=q[w++];k.qe=q[w++];k.fe=q[w++];k.ge=q[w++];k.Ya=q[w++];k.jb=q[w++];k.Id=q[w++];k.mb=q[w++];k.wd=q[w++];k.vb=q[w++];k.yf=g.W?0:1;k.name=m.name;void 0===k.name&&(k.name="Hard Drive");k.path=m.path;k.mode=m.mode||(k.path?"preload":"local");"demandro"!=k.mode&&"demandrw"!=k.mode||g.zd()||(k.mode="local");k.type=m.type;if(void 0===k.type||void 0===
Om[g.H][k.type])k.type=g.ra;m=Om[g.H][k.type];k.eb=m[2]||17;k.nb=m[3]||512;if(y&&g.S){var m=g.S,B=k.type;if(m.B){var y=null,Q=m.B[18];15<B&&(y=B,B=15);h?(Q=Q&240|B,B=26):(Q=Q&15|B<<4,B=25);var V=m;V.B&&(V.B[18]=Q,aj(V));null!=y&&m.B&&(m.B[B]=y,aj(m))}}void 0===k.ua&&(k.ua=null,g.Ba("Type "+k.type+' "'+k.name+'" is fixed disk '+h,!0));Wm(g,k);k.Ua=q[w++];k.Wa=null;k.ua&&(g=q[w],void 0!==g&&0>k.ua.restore(g)&&(z=!1),z&&void 0!==k.Ua&&(k.Wa=k.ua.seek(k.Id,k.Ya,k.mb+k.yf)));z||(e=!1);null!=a.da&&1>=d&&
(a.da|=(f.type&3)<<(1-d<<1))}0<=a.Qa&&(a.C=a.B[a.Qa]);return e}
function Vm(a){var b=0,c=[];a.W?(c[b++]=a.K,c[b++]=a.za,c[b++]=a.L,c[b++]=a.oa,c[b++]=a.ma,c[b++]=a.ka,c[b++]=a.Z,c[b++]=a.aa,c[b++]=a.pa,c[b++]=[a.P,a.Qa]):(c[b++]=a.da,c[b++]=a.aa,c[b++]=a.I,c[b++]=a.G,c[b++]=a.D,c[b++]=a.xa,c[b++]=a.va,c[b++]=a.sa,c[b++]=a.Y);for(var d=0,e=[],f=0;f<a.B.length;f++){var g=d++,h=a.B[f],k=0,m=[];m[k++]=h.errorCode;m[k++]=h.Kj;m[k++]=h.qe;m[k++]=h.fe;m[k++]=h.ge;m[k++]=h.Ya;m[k++]=h.jb;m[k++]=h.Id;m[k++]=h.mb;m[k++]=h.wd;m[k++]=h.vb;m[k++]=h.Ua;m[k]=h.ua?h.ua.save():
null;e[g]=m}c[b]=e;return c}function Wm(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.fe[2])?e=b.fe[0]<<8|b.fe[1]:c=b.type);null==c||d||(d=Om[a.H][c][1],e=Om[a.H][c][0]);d&&((c=Om[a.H][b.type])&&e!=c[0]&&d!=c[1]&&a.Ba("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.ib=e,b.jb=d,null==b.ua&&(b.ua=new cm(a,b,b.mode)))}}
function Tm(a,b){b||(a.R=0);for(var c=0;c<a.B.length;c++){var d=a.B[c];if(d.name&&d.path){if(!(b&&d.ua&&d.ua.Gf)){var e;e=a;var f=d.name,d=d.path,g=e.B[c];g.ne?(e.Ba("Drive "+c+" busy"),e=!0):(g.ne=!0,g.Pd=!0,e.R++,(g.ua||new cm(e,g,g.mode)).load(f,d,null,e.mk),e=!1);!e&&b&&t(a,!1)}}else b&&void 0!==d.type&&(d.ua=null,Wm(a,d,d.type))}return!!a.R}
l.mk=function(a,b,c){a.ne=!1;if(a.ua=b)this.Ba('Mounted disk "'+c+'" in drive '+String.fromCharCode(67+a.Qa),a.Pd),b=b.info(),b[0]==a.ib&&b[1]==a.jb&&b[2]==a.eb&&b[3]==a.nb||this.Ba("Warning: disk geometry ("+b[0]+":"+b[1]+":"+b[2]+") does not match "+Nm[this.H]+" drive type "+a.type+" ("+a.ib+":"+a.jb+":"+a.eb+")");a.Pd&&(a.Pd=!1,--this.R||t(this))};l.yl=function(){var a=0;this.G<this.D&&(a=this.I[this.G]);this.S&&Qe(this.S,5);this.aa&=-33;++this.G>=this.D&&(this.G=this.D=0,this.aa&=-15);return a};
l.Km=function(a,b){this.D<this.I.length&&(this.I[this.D++]=b);a=12!=this.I[0]?6:this.I.length;6==this.D&&(this.aa&=-2);this.D>=a&&(this.aa|=2,this.aa&=-2,Xm(this))};l.zl=function(){var a=this.aa;this.G<this.D&&(this.aa|=1);return a};l.Nm=function(a,b){this.xa=b;this.S&&Qe(this.S,5);Um(this)};l.xl=function(){return this.da};l.Mm=function(a,b){this.va=b;this.aa=13};l.Lm=function(a,b){this.sa=b};l.nh=function(){};
function Ym(a){var b=-1;a.C&&(b=a.ze(a.C,function(){}),(1==a.C.Ua||a.C.Ua==a.C.nb)&&1<a.C.Ua&&(a.C.vb-=a.C.nb,a.L=a.L-1&255,a.C.vb>=a.C.nb?(a.aa=128,a.ze(a.C,function(b){0<=b?(Zm(a),a.S&&5180==a.S.ca&&(a.aa=0),a.aa|=88):(a.aa=1,a.K=16)},!1)):a.aa=80));return b}l.Xj=function(){return Ym(this)|Ym(this)<<8};function $m(a,b){a.C&&a.C.vb>=a.C.nb&&(0>an(a.C,b)?(a.aa=1,a.K=16):(1==a.C.Ua||a.C.Ua==a.C.nb)&&1<a.C.Ua&&(a.C.vb-=a.C.nb,a.L=a.L-1&255,Zm(a),a.aa=80,a.C.vb>=a.C.nb&&(a.aa|=8)))}
l.Vl=function(a,b){$m(this,b&255);$m(this,b>>8&255)};l.Fk=function(){return this.K};l.$l=function(a,b){this.za=b};l.Hk=function(){return this.L};l.Yl=function(a,b){this.L=b};l.Ik=function(){return this.oa};l.Zl=function(a,b){this.oa=b};l.Dk=function(){return this.ma};l.Ul=function(a,b){this.ma=b};l.Ck=function(){return this.ka};l.Tl=function(a,b){this.ka=b};l.Ek=function(){return this.Z};l.Wl=function(a,b){this.Z=b;this.aa=this.B[this.Z&16?1:0]?this.aa|80:this.aa&-65};
l.Jk=function(){var a=this.aa;this.aa&64&&(this.aa&=-129);return a};l.Sl=function(a,b){this.pa=b;this.S&&Qe(this.S,14);en(this)};l.Xl=function(a,b){this.P&4&&!(b&4)&&(this.K=1);this.P=b};
function en(a){var b=!1,c=a.pa,d=a.Z&16?1:0,e=a.Z&15,f=a.ma|(a.ka&3)<<8,g=a.oa,h=a.L||256;a.Qa=-1;a.C=null;a.K=0;a.aa=80;var k=a.B[d];k?(k.Id=f,k.Ya=e,k.mb=g,k.vb=h*k.nb,c=144<=c?c:c&240,k.Wa=null,k.Ua=0,k.errorCode=0,a.Qa=d,a.C=k):c=-1;switch(c&240){case 16:b=!0;break;case 32:a.aa=128;a.ze(k,function(b){0<=b&&a.S?(Zm(a),a.aa=88):(a.aa=1,a.K=16)},!1);break;case 48:a.aa=8;break;case 64:b=!0;break;case 112:b=!0;break;case 144:a.K=1;b=!0;break;case 145:k.jb=e+1,k.eb=h,b=!0}b&&Zm(a)}
function Zm(a){!a.S||a.P&2||Re(a.S,14,120)}
function Xm(a){a.G=0;var b=fn(a),c=fn(a),d=c&32,e=d>>5,f=c&31,g=fn(a),h=fn(a),k=g<<2&768|h,m=g&63,q=fn(a),y=fn(a),w=a.B[e];w&&(w.Id=k,w.Ya=f,w.mb=m,w.vb=q*w.nb);switch(b){case 3:gn(a,w?w.errorCode:4);hn(a,c);hn(a,g);hn(a,h);hn(a,0|d);b=-1;break;case 12:for(c=0;0<=(b=fn(a));)w&&c<w.fe.length&&(w.fe[c++]=b);w&&Wm(a,w);b=0;w||a.Y!=e||(a.Y=-1,b=2);gn(a,b|d);b=-1;break;case 224:case 228:gn(a,0|d),b=-1}if(0<=b)switch(void 0===w?b=-1:(w.errorCode=0,w.Kj=0),b){case 0:gn(a,0|d);break;case 1:w.Me=y;gn(a,0|
d);break;case 5:gn(a,0|d);break;case 8:jn(a,w,function(b){gn(a,b|d)});break;case 10:kn(a,w,function(b){gn(a,b|d)});break;case 15:ln(a,w,function(b){gn(a,b|d)});break;default:gn(a,2|d)}}function fn(a){var b=-1;a.G<a.D&&(b=a.I[a.G++]);return b}function gn(a,b){a.G=a.D=0;void 0!==b&&hn(a,b);a.S&&Re(a.S,5);a.aa|=32}function hn(a,b){a.I[a.D++]=b}l.Vj=function(a,b,c){void 0===b||0>b?this.ze(a,c):c(-1,!1)};l.Wj=function(a,b){return void 0!==b&&0<=b?an(a,b):-1};
l.kk=function(a,b){void 0!==b&&0<=b?(a.Ua<a.ge.length?a.ge[a.Ua++]=b:(a.errorCode=20,b=-1),a=b):a=-1;return a};l.lk=function(a,b){if(void 0!==b&&0<=b)a:if(a.errorCode)a=-1;else{a.Oc[a.ke++]=b;if(a.ke==a.Oc.length){a.Id=a.Oc[0];a.Ya=a.Oc[1];a.mb=a.Oc[2];a.vb=128<<a.Oc[3];for(var c=a.ke=0;c<a.vb;c++)if(0>an(a,a.gi)){a=-1;break a}a.Af++}a.Af>=a.wd&&(b=-1);a=b}else a=-1;return a};
function jn(a,b,c){b.errorCode=4;if(b.ua&&(b.Wa=null,a.S)){b.errorCode=0;Cj(a.S,3,a,"dmaRead",b);yj(a.S,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}function kn(a,b,c){b.errorCode=4;if(b.ua&&(b.Wa=null,a.S)){b.errorCode=0;Cj(a.S,3,a,"dmaWrite",b);yj(a.S,3,function(a){a||(0==b.errorCode&&(b.errorCode=4),20==b.errorCode&&(b.errorCode=0));c(b.errorCode?2:0)});return}c(b.errorCode?2:0)}
function ln(a,b,c){b.errorCode=4;b.ge&&b.ge.length==b.vb||(b.ge=Array(b.vb));b.Ua=0;a.S?(b.errorCode=0,Cj(a.S,3,a,"dmaWriteBuffer",b),yj(a.S,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}
l.ze=function(a,b,c){var d=-1,e=null,f=0;if(a.errorCode)return b&&b(d,!1,e,f),d;var g=!1!==c?1:0;if(a.Wa&&(f=a.Ua,d=a.ua.read(a.Wa,a.Ua),a.Ua+=g,0<=d))return e=a.Wa,b&&b(d,!1,e,f),d;if(b){if(a.ua)return a.ua.seek(a.Id,a.Ya,a.mb+a.yf,!1,function(c,k){(a.Wa=c)?(e=c,f=a.Ua=0,mn(a),d=a.ua.read(a.Wa,a.Ua),a.Ua+=g):a.errorCode=20;b(d,k,e,f)}),d;a.errorCode=20;b(d,!1,e,f)}return d};
function an(a,b){if(a.errorCode)return-1;do{if(a.Wa&&a.ua.write(a.Wa,a.Ua++,b))break;a.ua&&a.ua.seek(a.Id,a.Ya,a.mb+a.yf,!0,function(b){a.Wa=b});if(!a.Wa){a.errorCode=20;b=-1;break}a.Ua=0;mn(a)}while(1);return b}function mn(a){a.mb++;var b=1-a.yf;a.mb>=a.eb+b&&(a.mb=b,a.Ya++,a.Ya>=a.jb&&(a.Ya=0,a.Id++))}l.Bl=function(){var a=this.A.M&255;!(this.A.J>>8)&&128<a&&(this.Y=a-128);return!0};l.Cl=function(){var a;(a=this.A.J>>8||!this.S)||(a=!(this.S.gc[0].Vc&64));return a?!0:!1};
var Qm={800:Z.prototype.yl,801:Z.prototype.zl,802:Z.prototype.xl},Pm={496:Z.prototype.Xj,497:Z.prototype.Fk,498:Z.prototype.Hk,499:Z.prototype.Ik,500:Z.prototype.Dk,501:Z.prototype.Ck,502:Z.prototype.Ek,503:Z.prototype.Jk},Sm={800:Z.prototype.Km,801:Z.prototype.Nm,802:Z.prototype.Mm,803:Z.prototype.Lm,807:Z.prototype.nh,811:Z.prototype.nh,815:Z.prototype.nh},Rm={496:Z.prototype.Vl,497:Z.prototype.$l,498:Z.prototype.Yl,499:Z.prototype.Zl,500:Z.prototype.Ul,501:Z.prototype.Tl,502:Z.prototype.Wl,503:Z.prototype.Sl,
1014:Z.prototype.Xl};Ia(function(){for(var a=Za(document,"pcx86","hdc"),b=0;b<a.length;b++){var c=a[b],d=Wa(c),d=new Z(d);Ya(d,c)}});
function nn(a,b,c){Ma.call(this,"Computer",a,nn);this.ea.Vb=!1;on(this,b);this.ba=kc(this,"autoPower",a);this.G=0;this.da=a.busWidth||a.buswidth;this.B=pn;this.R=null;this.K=this.Z=!1;this.ga=kc(this,"url")||"";this.ma=(Math.random()+.1).toString(36).substr(2,12);this.C=qn(this);if(this.A=Va("CPU",this.id)){this.Ia=Va("Debugger",this.id);this.I=[];for(b=null;b=jb(this,"Video",b);)this.I.push(b);this.ia=new rb({id:this.Fe+".bus",busWidth:this.da},this.A,this.Ia);var d,e=Ta(this.id);if((this.D=Va("Panel",
this.id))&&this.D.ng)for(b=0;b<e.length;b++)d=e[b],d.Ba=this.D.Ba,d.rc=this.D.rc,d.ng=this.D.ng;this.rc("PCx86 v1.32.0\nCopyright \u00a9 2012-2017 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");for(b=0;b<e.length;b++)d=e[b],d.pc&&d.pc(this,this.ia,this.A,this.Ia);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.S=d:this.B=parseInt(d,10));var f;if(a=kc(this,"state")||(f=!0,a.state))b=this.W=a,f||(this.K=!0,this.B=pn),this.B&&(this.P=new ae(this,"1.32.0"),
this.P.load()?b=null:delete this.P);!b&&this.B&&(b=rn(this))&&(this.K=!0);if(b){var g=this;sa(b,null,!0,function(a,b,c){c?(g.S=null,g.K=!1,g.Ba("Unable to load machine state from server (error "+c+(b?": "+la(b):"")+")")):(g.R=b,g.Z=!0);t(g)})}else t(this);this.la.power||(this.ba=!0);!c&&this.ba&&sn(this,this.gf)}else r("Unable to find CPU component")}Pa(nn);var pn=0;l=nn.prototype;l.ue=function(){return this.ma};
function on(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){r(d.message+" ("+c+")")}}a.L=b}function kc(a,b,c){var d=b.toLowerCase(),d=Aa(b)||Aa(d);void 0===d&&a.L&&(d=a.L[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}l.zd=function(){return this.C||""};function sn(a,b,c){for(var d=Ta(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!ab(f)){ab(f,function(){sn(a,b,c)});return}}b.call(a,c)}
function tn(a,b){var c=new ae(a,"1.32.0","validate");if(c.load()&&un(c)){var d=c.get("timestamp"),e=b?b.get("timestamp"):"unknown";d!=e&&(a.Ba("Machine state may be out-of-date\n("+d+" vs. "+e+")\nCheck your browser's local storage limits"),b||c.clear())}}
l.gf=function(a){void 0===a&&(a=this.B||(this.R?1:pn));if(!this.G){this.G++;var b=!1,c=!1;this.Y=!1;var d=this.P||new ae(this,"1.32.0");if(-1==a)b=!0;else if(a>pn){if(d.load(this.R)){this.H=new ae(this,"1.32.0","failsafe");this.H.load()&&(vn(this,d),a=2,wn(this.H));this.H.set("timestamp",oa());xn(this.H);var e=this.B&&!this.K;if(1==a||ua("Click OK to restore the previous PCx86 machine state, or CANCEL to reset the machine.")){if(c=un(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"==
f&&"no machine state"!=g?(this.Ba("Error: "+g),"unable to verify user"==g&&(ya("user",""),this.C=null)):this.rc(f+": "+g),wn(d),d.load()?(c=un(d),e=!0):c=!1))}e&&tn(this,c?d:null)}else 2==a&&d.clear()}else tn(this);delete this.R;delete this.P}e=Ta(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.A&&(c=yn(this,g,d,b,c));b=[d,a,c];-1!=a?sn(this,this.pi,b):this.pi(b)}};
function yn(a,b,c,d,e){if(!b.ea.Vb){b.ea.Vb=!0;if(b.Ub){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.Ub(f,d)&&f&&(r("Unable to restore state for "+b.type),a.W&&!a.Z?(c.clear(),a.B=pn,window&&window.location.reload()):a.Y=!0,b.Ub(null),e=!1)}if(!d&&b.Yh)for(a=b.Yh.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
l.pi=function(a){var b=a[0],c=0>a[1];a=a[2];this.ka=!0;this.ea.Vb=!0;var d=this.la.power;d&&(d.textContent="Shutdown");this.A&&(yn(this,this.A,b,c,a),this.A.Le());this.Y&&(vn(this,b),b.clear());!c&&this.H&&(this.H.clear(),delete this.H);this.G=0};
function vn(a,b){if(ua("There may be a problem with your PCx86 machine.\n\nTo help us diagnose it, click OK to send this PCx86 machine state to http://www.pcjs.org.")){var c=a.zd();b=b.toString();var d={app:"PCx86",ver:"1.32.0"};d.url=a.ga;d.user=c;d.type="bug";d.data=b;sa("http://www.pcjs.org/api/v1/report",d,!0)}}
function zn(a,b,c){var d,e="none";if(a.G)return null;a.G--;var f=new ae(a,"1.32.0"),g=new ae(a,"1.32.0","validate"),h=oa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.32.0");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.A&&a.A.Tb&&(c&&oc(a.A),d=a.A.Tb(b,c),"object"===typeof d&&f.set(a.A.id,d),c&&(a.A.ea.Vb=!1,!1===d&&(e=null)));for(var h=Ta(a.id),k=0;k<h.length;k++){var m=h[k];m.ea.Vb&&(m.Tb&&(d=m.Tb(b,c),"object"===typeof d&&
f.set(m.id,d)),c&&(m.ea.Vb=!1,!1===d&&(e=null)))}e&&(c?(h=d=!1,b?(a.C&&An(a,a.C,f.toString()),xn(g)&&xn(f)||(e=null,d=h=!0)):a.B&&(d=!0,h=3==a.B),d&&f.clear(h)):e=f.toString());c&&(a.ea.Vb=!1,b=a.la.power)&&(b.textContent="Power");a.G=0;return e}l.reset=function(){this.ia&&this.ia.reset&&this.ia.reset();for(var a=Ta(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ia&&c.reset&&c.reset()}};
l.start=function(a,b){for(var c=Ta(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};l.stop=function(a,b){for(var c=Ta(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
l.zb=function(a,b,c){var d=this;switch(b){case "power":return this.la[b]=c,c.onclick=function(){d.G||(d.ea.Vb?zn(d,!1,!0):sn(d,d.gf))},!0;case "reset":return this.la[b]=c,c.onclick=function(){if(d.ea.Vb&&!d.G)if(d.B&&!d.S){var a=ua("Click OK to save changes to this PCx86 machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");zn(d,a,!0);!a&&d.W?window&&window.location.reload():(a||(d.pg=!0),d.gf(pn),d.pg=!1)}else d.reset(),d.A&&d.A.Le()},!0;case "save":if(ia(ta(),"pcjs.org"))c.parentNode.removeChild(c);
else return this.la[b]=c,c.onclick=function(){var a=qn(d,!0);if(a){var b=!!(d.B&&!d.S||d.W),c=zn(d,b);b?An(d,a,c):d.Ba("Resume disabled, machine state not saved")}},!0}return!1};
function qn(a,b){var c=a.C;c||((c=xa("user"),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=Bn(a,c))||a.Ba("The user ID is invalid.")):b&&a.Ba("Browser local storage is not available"));return c}
function Bn(a,b){a.C=null;b=sa(ta()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(ya("user",b.data),a.C=b.data)}catch(d){r(d.message+" ("+c+")")}return a.C}function rn(a){var b=null;a.C&&(b=ta()+"/api/v1/user?req=load&user="+a.C+"&state="+Cn(a,"1.32.0"));return b}
function An(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Cn(a,"1.32.0");d.data=c;b=sa(ta()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Ba("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.Ba(c),ya("user",""),a.C=null)}}
function jb(a,b,c){a=Ta(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}function uc(a,b){if(a.I.length){var c=0,d=0;!b&&window&&(c=window.scrollX,d=window.scrollY);a=a.I[0];a.G&&a.G.focus();!b&&window&&window.scrollTo(c,d)}}l.Rc=function(a){this.A&&this.A.Rc(a);this.D&&this.D.Rc(a)};
function xc(a,b){for(var c=0;c<a.I.length;c++)kl(a.I[c],b);if(a.D&&(a=a.D,a.sa)){ob(a,18,a.S,a.ra);if(a.Ga){b=a.ia;var c=a.B,d,e;null==d&&(d=0);null==e&&(e=b.L-d|0);c||(c={mg:0,gd:0,fg:[]});var f=d>>>b.da;d=d+e-1>>>b.da;c.mg=0;for(c.gd=0;f<=d;)e=b.R[f],c.mg+=e.size,e.size&&(c.fg.push(qa(mb,f,0,0,e.type)),c.gd++),f++;a.B=c;a.ma=a.B.gd*a.ia.xb/691200;d=0;a.B.ii=0;a.B.Ke||(a.B.Ke=[]);e=-1;b=0;for(var g=-1,c=0;c<a.B.gd;c++){var h=a.B.fg[c],f=ra(mb.type,h),h=ra(mb.Cj,h);if(f!=e||h!=g+1)(g=c-b)&&(d+=qb(a,
b,g,e)),e=f,b=c;g=h}d+=qb(a,b,c-b,e);e=a.B.hk!=d;a.B.hk=d;if(e){e=new hb(0,0,a.S.width,a.S.height);a.B.ee=[];b=a.B.gd;for(d=0;d<a.B.ii;d++)c=a.B.Ke[d].gd,a.B.ee.push(ib(e,c,b,!d)),b-=c;for(d=0;d<a.B.ee.length;d++)e=a.B.Ke[d],b=c=a.B.ee[d],f=a.ra,(g=Xb[e.type])||(g=new gb),f.strokeStyle="black",f.strokeRect(b.x,b.y,b.Fc,b.A),f.fillStyle="string"==typeof g?g:g.toString(),f.fillRect(b.x,b.y,b.Fc,b.A),b=a,f=c,b.P=b.ga,b.L=b.ka,c=f.x+(f.Fc>>1),g=f.y+(f.A>>1),h=f.A,f.Fc<f.A&&(h=f.Fc,b.da=!0,b.G.save(),
b.G.translate(c,g),b.G.rotate(-Math.PI/2),c=g=0),h<b.L&&(b.L=h,b.P=b.L+"px Monaco, Lucida Console, Courier New"),f=g,b.D=c,b.K=f,b=a,e=xb[e.type]+" ("+(e.gd*a.ia.xb/1024|0)+"Kb)",b.G.font=b.P,b.D-=b.G.measureText(e).width>>1,b.K+=(b.L>>1)-2,pb(b,e),b.da&&(b.G.restore(),b.da=!1)}}else pb(a,"This space intentionally left blank");a.context.drawImage(a.S,0,0,a.S.width,a.S.height,a.Oa,a.Xa,a.Da,a.Fa);a.sa=!1}}
Ia(function(){for(var a=Za(document,"pcx86-machine"),b=0;b<a.length;b++)for(var c=a[b],d=Wa(c),c=Za(c,"pcx86","computer"),e=0;e<c.length;e++){var f=c[e],g=Wa(f),g=new nn(g,d,!0);Ya(g,f);g.ba&&sn(g,g.gf)}});Da.show.push(function(){for(var a=Za(document,"pcx86","computer"),b=0;b<a.length;b++){var c=Wa(a[b]);(c=Va("Computer",c.id))&&c.ka&&!c.ea.Vb&&c.gf(-1)}});
Da.exit.push(function(){for(var a=Za(document,"pcx86","computer"),b=0;b<a.length;b++){var c=Wa(a[b]);(c=Va("Computer",c.id))&&c.ea.Vb&&zn(c,!(!c.B||c.S),!0)}});function ae(a,b,c){this.id=a.id;this.key=Cn(a,b,c);this.Ia=a.Ia;wn(this,a.Gj)}function Cn(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}
ae.prototype={constructor:ae,set:function(a,b){try{this[this.id][a]=b}catch(c){}},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.A=!0):this.A?!0:wa()&&(a=xa(this.key))?(this[this.id]=a,this.A=!0):!1},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){wn(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(e){}for(c=
0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(e){}b.splice(c,1);c=0}}};function wn(a,b){a[a.id]={};b&&a.set("parms",b);a.A=!1}function xn(a){var b=!0;if(wa()){var c=JSON.stringify(a[a.id]);ya(a.key,c)||(r("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function un(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){r(c.message||c),b=!1}return b}var Dn=0;
function En(a,b,c,d,e,f){e("Loading "+a+"...");sa(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),f(h,null)):Fn(h,a,b,c,d,e,f)})}
function Fn(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{c&&(Ra(c,b,a),(f=b)&&0>f.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{",d+='url:"'+f+'"}',"object"==typeof resources&&(f=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PCx86$2"),
a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pcx86$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(q){f=null,a=q.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,f)}}a?e?Gn(a,f,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
function Gn(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var e=d[2];b("Loading "+e+"...");sa(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,q=/( [a-z]+=)(['"])(.*?)\2/g;m=q.exec(f);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);Gn(a,b,c)}})}else c(a,null)}
function Hn(a,b,c,d){function e(a){if(void 0===h){var b=g&&Za(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ka(a))}function f(a){e("Error: "+a);k&&(--Dn||Ka(!0));k=!1}var g,h,k=!0;Dn++;Qa[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var q=document.head||document.getElementsByTagName("head")[0],y=document.createElement("style");y.type="text/css";y.styleSheet?y.styleSheet.cssText=m:y.appendChild(document.createTextNode(m));q.appendChild(y)}c||
(c="/versions/pcx86/1.32.0/components.xsl");m=function(d,h){h?En(c,null,null,!1,e,function(d,k){k?(Ra(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--Dn||Ka(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--Dn||Ka(!0)):f("invalid machine element: "+
a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?En(b,a,d,!0,e,m):Fn(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(w){f(w.message)}return k}function In(a,b,c,d){Ka(!1);return Hn(a,b,c,d)}window.embedPC=In;window.embedPCx86=In;window.enableEvents=Ka;window.sendEvent=La;
function Jn(a,b,c,d){if(!c&&b){d.push(b);a=Qa[d[0]];b=null;for(var e in a)if(ia(e,"components.xsl")){b=e.replace(".xsl",".css");break}b?sa(b,null,!0,function(a,b){Kn(b,d)}):Kn(null,d)}else r("Error ("+c+") requesting "+a)}
function Kn(a,b){var c,d,e,f=b[0],g=b[1];c=b[4];c=c.match(/^(\s*\(function\(\)\{)([\s\S]*)(}\)\(\);\s*)$/);var h=Qa[f],k={},m;for(m in h){var q=h[m],y=ha(m);if("xml"==y){for(y=/[ \t]*<disk [^>]*path=(['"])(.*?)\1.*?<\/disk>\n?/g;d=y.exec(h[m]);){var w=d[2];w&&(h[w]||(q=q.replace(d[0],"")))}d=m=ga(m)}else"xsl"==y&&(e=m=ga(m));k[m]=q}a&&(k[m="css"]=a);b[2]&&(k[m="parms"]=b[2]);b[3]&&(k[m="state"]=b[3]);d&&e?(a=JSON.stringify(k),g+=".js",c=c[1]+"var resources="+a+";"+c[2]+c[3],c=c.replace(/\u00A9/g,
"&#xA9;"),a=Ca(c,"javascript",!1,g),a=a+(', copy it to your web server as "'+g+'", and then add the following to your web page:\n\n')+('<div id="'+f+'"></div>\n')+"...\n",a=a+('<script type="text/javascript" src="'+g+'">\x3c/script>\n')+('<script type="text/javascript">embedPC("'+f+'","'+d+'","'+e+'");\x3c/script>\n\n')+"The machine should appear where the <div> is located.",r(a)):r("Missing XML/XSL resources")}
window.savePC=function(a,b,c){var d=Va("Computer",a),e=Va("Debugger",a);if(d){var f=zn(d,!0),g=d.L?JSON.stringify(d.L):null;b||(b="/versions/pcx86/1.32.0/pcx86"+(e?"-dbg":"")+".js");if(c&&c({state:f,Gj:g}))return!0;sa(b,null,!0,function(c,d,e){Jn(c,d,e,[a,ga(b,!0),g,f])});return!0}r("Unable to identify machine '"+a+"'");return!1};})();